slitaz-forge view arm/tools.cgi @ rev 487

arm: improve packages page
author Christophe Lincoln <pankso@slitaz.org>
date Sat Mar 29 18:43:42 2014 +0100 (2014-03-29)
parents 6edeeb20e6e0
children 758e0c5d9cbf
line source
1 #!/bin/sh
2 #
3 # SliTaz ARM CGI Tools.
4 #
5 # Copyright (C) 2014 SliTaz ARM - BSD License
6 # Author: Christophe Lincoln <pankso@slitaz.org>
7 #
8 . /usr/lib/slitaz/httphelper.sh
10 repos="/home/slitaz/repos"
11 pkgs="/home/slitaz/cooking/arm/packages"
12 mirror="http://cook.slitaz.org/cross/arm/packages/"
13 hgsat="$repos/slitaz-arm"
14 hgcook="$repos/cookutils"
16 #
17 # Functions
18 #
20 # Usage: html_header "title"
21 html_header() {
22 cat header.html | sed s"/_TITLE_/$1/"
23 }
25 html_footer() {
26 cat << EOT
27 <!-- Close content -->
28 </div>
30 <div id="footer">
31 &copy; $(date +%Y) - <a href="http://www.slitaz.org/">SliTaz GNU/Linux</a>
32 </div>
34 </body>
35 </html>
36 EOT
37 }
39 #
40 # Handle GET actions
41 #
43 case " $(GET) " in
44 *\ doc\ *)
45 header
46 html_header "$(GET tool)"
47 echo '<pre>'
48 case "$(GET tool)" in
49 cook) cat ${hgcook}/README ;;
50 cross) cat ${hgcook}/doc/cross.txt ;;
51 sat) cat ${hgsat}/README ;;
52 sat-rpi) cat ${hgsat}/rpi/README ;;
53 *) echo "No README file for: $(GET tool)" ;;
54 esac
55 echo '</pre>'
56 html_footer ;;
57 *\ pkgs\ *)
58 # TODO: link packages and add link to raw lists
59 title="- Packages"
60 count="$(cat $pkgs/packages.list | wc -l)"
61 html_header "Packages"
62 cat << EOT
63 <h2>Packages: $count</h2>
65 <pre>
66 Packages lists : <a href="${mirror%/}/packages.list">packages.list</a> \
67 - <a href="${mirror%/}/packages.md5">packages.md5</a>
68 Mirror URL : <a href="${mirror}">${mirror}</a>
69 </pre>
71 <h2>Packages list</h2>
72 EOT
73 IFS="|"
74 cat $pkgs/packages.desc| while read pkg vers desc web deps
75 do
76 vers=${vers# }
77 cat << EOT
78 <p>
79 <a href="${mirror%/}/${pkg% }-${vers% }-arm.tazpkg">${pkg% }</a> $vers - $desc
80 </p>
81 EOT
82 done
83 unset IFS
84 html_footer ;;
85 *)
86 header "Content-Type: text/plain"
87 echo "Hello World!" ;;
88 esac
90 exit 0