wok-current rev 8852

Updated mirror-tools to use slitaz-dev-tools.
author Christopher Rogers <slaxemulator@gmail.com>
date Fri Feb 25 00:34:53 2011 +0000 (2011-02-25)
parents bf6db9997f47
children 151d70c54d55
files mirror-tools/receipt mirror-tools/stuff/etc/lighttpd/vhosts.conf mirror-tools/stuff/etc/rsyncd.conf mirror-tools/stuff/etc/rsyncd.motd mirror-tools/stuff/etc/tazwok.conf.mirror mirror-tools/stuff/home/backups/mirror/backup.sh mirror-tools/stuff/usr/bin/mkpkgiso mirror-tools/stuff/usr/share/mirror-host/boot/lguest-disk mirror-tools/stuff/usr/share/mirror-host/boot/lguest-slitaz mirror-tools/stuff/usr/share/mirror-host/boot/shellinabox.sh mirror-tools/stuff/usr/share/mirror-host/etc/apache/conf.d/slitaz mirror-tools/stuff/usr/share/mirror-host/etc/apache/conf.d/slitaz-ssl mirror-tools/stuff/usr/share/mirror-host/etc/init.d/shellinabox mirror-tools/stuff/usr/share/mirror-host/install mirror-tools/stuff/usr/share/rrd/makegraphs mirror-tools/stuff/usr/share/slitaz-live/INSTALL mirror-tools/stuff/var/www/mirror-info/favicon.ico mirror-tools/stuff/var/www/mirror-info/graphs.php mirror-tools/stuff/var/www/mirror-info/index.php mirror-tools/stuff/var/www/mirror-info/pics/desktop.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-day.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-month.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-week.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-year.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-day.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-month.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-week.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-year.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-day.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-month.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-week.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-year.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-day.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-month.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-week.png mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-year.png mirror-tools/stuff/var/www/mirror-info/pics/slitaz-awstats.png mirror-tools/stuff/var/www/mirror-info/pics/slitaz.png mirror-tools/stuff/var/www/mirror-info/pics/website/br.png mirror-tools/stuff/var/www/mirror-info/pics/website/ch.png mirror-tools/stuff/var/www/mirror-info/pics/website/cn.png mirror-tools/stuff/var/www/mirror-info/pics/website/fr.png mirror-tools/stuff/var/www/mirror-info/pics/website/header.png mirror-tools/stuff/var/www/mirror-info/pics/website/it.png mirror-tools/stuff/var/www/mirror-info/pics/website/logo.png mirror-tools/stuff/var/www/mirror-info/pics/website/logo.xcf mirror-tools/stuff/var/www/mirror-info/pics/website/monitor.png mirror-tools/stuff/var/www/mirror-info/pics/website/nl.png mirror-tools/stuff/var/www/mirror-info/pics/website/si.png mirror-tools/stuff/var/www/mirror-info/pics/website/us.png mirror-tools/stuff/var/www/mirror-info/pics/website/vhosts.png mirror-tools/stuff/var/www/mirror-info/pics/website/xhtml10.png mirror-tools/stuff/var/www/mirror-info/slitaz.css mirror-tools/stuff/var/www/slitaz/mirror/css/favicon.ico mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/Directory mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/application_octet-stream mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_fd mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_iso mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_md5 mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_tar.gz mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_tazpkg mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/text_plain mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/header-img.png mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/logo.png mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/network.png mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/users.png mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/xhtml10.png mirror-tools/stuff/var/www/slitaz/mirror/css/slitaz.css mirror-tools/stuff/var/www/slitaz/mirror/dir-generator.php mirror-tools/stuff/var/www/slitaz/mirror/floppies/builder/bootloader mirror-tools/stuff/var/www/slitaz/mirror/floppies/builder/index.php mirror-tools/stuff/var/www/slitaz/mirror/floppies/index.html mirror-tools/stuff/var/www/slitaz/mirror/floppies/loram/index.html mirror-tools/stuff/var/www/slitaz/mirror/mirrors mirror-tools/stuff/var/www/slitaz/mirror/pxe/defaults.cfg mirror-tools/stuff/var/www/slitaz/mirror/pxe/mkcfg.sh
line diff
     1.1 --- a/mirror-tools/receipt	Fri Feb 25 00:13:56 2011 +0000
     1.2 +++ b/mirror-tools/receipt	Fri Feb 25 00:34:53 2011 +0000
     1.3 @@ -7,10 +7,18 @@
     1.4  MAINTAINER="pascal.bellard@slitaz.org"
     1.5  WEB_SITE="http://www.slitaz.org/"
     1.6  DEPENDS="rrdtool rgzip"
     1.7 +BUILD_DEPENDS="mercurial"
     1.8 +SOURCE="slitaz-dev-tools"
     1.9 +WGET_URL="mercurial|http://hg.slitaz.org/slitaz-dev-tools"
    1.10 +BRANCH="$VERSION"
    1.11  
    1.12  # Rules to gen a SliTaz package suitable for Tazpkg.
    1.13  genpkg_rules()
    1.14  {
    1.15 -	cp -a $stuff/* $fs
    1.16 +	cp -a $src/$PACKAGE/rootfs/* $fs
    1.17 +	mkdir -p $fs/var/www
    1.18 +	cp -a $src/$PACKAGE/mirror-info $fs/var/www
    1.19 +	cp -a $src/$PACKAGE/slitaz $fs/var/www
    1.20 +	chown -R 80.80 $fs/var/www
    1.21  }
    1.22  
     2.1 --- a/mirror-tools/stuff/etc/lighttpd/vhosts.conf	Fri Feb 25 00:13:56 2011 +0000
     2.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.3 @@ -1,184 +0,0 @@
     2.4 -# /etc/lighttpd/vhosts.conf : Virtual hosts configuration file.
     2.5 -#
     2.6 -
     2.7 -# Example.org
     2.8 -#
     2.9 -#$HTTP["host"] =~ "(^|\.)example\.org$" {
    2.10 -  #server.document-root = "/var/www/vhost/exemple.com/html"
    2.11 -  #server.errorlog = "/var/log/lighttpd/example.org-error.log"
    2.12 -  #accesslog.filename = "/var/log/lighttpd/example.org-access.log"
    2.13 -#}
    2.14 -
    2.15 -# mirror.slitaz.org (Server canonical hostname)
    2.16 -#
    2.17 -$HTTP["host"] =~ "^mirror([0-9]*)\.slitaz\.org$" {
    2.18 -  server.document-root = "/var/www/slitaz/mirror"
    2.19 -  server.errorlog = "/var/log/lighttpd/mirror.slitaz.org-error.log"
    2.20 -  accesslog.filename = "/var/log/lighttpd/mirror.slitaz.org-access.log"
    2.21 -  
    2.22 -  include "awstats.conf"
    2.23 -  
    2.24 -  alias.url += ( "/info" => "/var/www/mirror-info/" )
    2.25 -  
    2.26 -  alias.url += ( "/pizza" => "/var/www/pizza/" )
    2.27 -  
    2.28 -  alias.url += ( "/doc" => "/var/www/doc/" )
    2.29 -  var.dokudir = "/doc"
    2.30 -  # Rewrites for dokuwiki
    2.31 -  url.rewrite = (
    2.32 -    "^" + var.dokudir + "/lib/.*$"              => "$0",
    2.33 -     "^" + var.dokudir + "/_media/(.*)?\?(.*)$"  => var.dokudir + "/lib/exe/fetch.php?media=$1&$2",
    2.34 -     "^" + var.dokudir + "/_media/(.*)$"         => var.dokudir + "/lib/exe/fetch.php?media=$1",
    2.35 -     "^" + var.dokudir + "/_detail/(.*)?\?(.*)$" => var.dokudir + "/lib/exe/detail.php?media=$1&$2",
    2.36 -     "^" + var.dokudir + "/_detail/(.*)?$"       => var.dokudir + "/lib/exe/detail.php?media=$1",
    2.37 -     "^" + var.dokudir + "/_export/([^/]+)/(.*)\?(.*)$" => var.dokudir + "/doku.php?do=export_$1&id=$2&$3",
    2.38 -     "^" + var.dokudir + "/_export/([^/]+)/(.*)" => var.dokudir + "/doku.php?do=export_$1&id=$2",
    2.39 -     "^" + var.dokudir + "/doku.php.*"           => "$0",
    2.40 -     "^" + var.dokudir + "/feed.php.*"           => "$0",
    2.41 -     "^" + var.dokudir + "/(.*)\?(.*)"           => var.dokudir + "/doku.php?id=$1&$2",
    2.42 -     "^" + var.dokudir + "/(.*)"                 => var.dokudir + "/doku.php?id=$1"
    2.43 -  )
    2.44 -
    2.45 -  alias.url += ( "/webboot" => "/var/www/boot/" )
    2.46 -
    2.47 -  alias.url += ( "/pkgs" => "/var/www/pkgs/" )
    2.48 -  index-file.names += ( "search.sh" )
    2.49 -  cgi.assign += (
    2.50 -    ".sh" => "/bin/sh"
    2.51 -  )
    2.52 -
    2.53 -  alias.url += ( "/hg" => "/var/www/hg/" )
    2.54 -###  url.rewrite-once = ( "/hg(.*)" => "/hg/hgwebdir.py$1" )
    2.55 -  index-file.names += ( "hgwebdir.py" )
    2.56 -  cgi.assign += (
    2.57 -    ".py" => "/usr/bin/python"
    2.58 -  )
    2.59 -
    2.60 -  alias.url += ( "/www" => "/home/slitaz/website" )
    2.61 -  
    2.62 -#  alias.url += ( "/tiny" => "/var/www/pizza/tiny/demos/192.168.0.6/var/www" )
    2.63 -#  index-file.names += ( "index.sh" )
    2.64 -  
    2.65 -  index-file.names += ( "index.html" )
    2.66 -  index-file.names += ( "index.php" )
    2.67 -  # Last but not least...
    2.68 -  index-file.names += ( "/dir-generator.php" )
    2.69 -}
    2.70 -
    2.71 -## info.mirror.slitaz.org
    2.72 -##
    2.73 -#$HTTP["host"] =~ "^info\.mirror\.slitaz\.org$" {
    2.74 -#  server.document-root = "/var/www/mirror-info/"
    2.75 -#  server.errorlog = "/var/log/lighttpd/info.mirror.slitaz.org-error.log"
    2.76 -#  accesslog.filename = "/var/log/lighttpd/info.mirror.slitaz.org-access.log"
    2.77 -#  include "awstats.conf"
    2.78 -#}
    2.79 -
    2.80 -$HTTP["host"] =~ "ajaxterm\.slitaz\.org$" {
    2.81 -  proxy.server = ( "/" => 
    2.82 -  	( ( "host" => "127.0.0.1", "port" => 8022 ) )
    2.83 -  )
    2.84 -}
    2.85 -
    2.86 -# pizza.slitaz.org (Server canonical hostname)
    2.87 -#
    2.88 -$HTTP["host"] =~ "^pizza\.slitaz\.org$" {
    2.89 -  server.document-root = "/var/www/pizza"
    2.90 -  server.errorlog = "/var/log/lighttpd/pizza.slitaz.org-error.log"
    2.91 -  accesslog.filename = "/var/log/lighttpd/pizza.slitaz.org-access.log"
    2.92 -  include "awstats.conf"
    2.93 -  index-file.names += ( "index.php" )
    2.94 -}
    2.95 -
    2.96 -# slitaz.org
    2.97 -#
    2.98 -#$HTTP["host"] =~ "(^|www\.)slitaz\.org$" {
    2.99 -$HTTP["host"] =~ "www\.slitaz\.org$" {
   2.100 -  server.document-root = "/home/slitaz/website"
   2.101 -  server.errorlog = "/var/log/lighttpd/slitaz.org-error.log"
   2.102 -  accesslog.filename = "/var/log/lighttpd/slitaz.org-access.log"
   2.103 -  include "awstats.conf"
   2.104 -  
   2.105 -###  index-file.names = ( "index.html" )
   2.106 -  index-file.names += ( "start.html" )
   2.107 -  
   2.108 -  
   2.109 -###  url.rewrite-once = (
   2.110 -###    "^/about" => "/fr/about",
   2.111 -###	"^/artwork" => "/fr/artwork",
   2.112 -###	"^/devel" => "/fr/devel",
   2.113 -###    "^/doc" => "/fr/doc",
   2.114 -###	"^/get" => "/fr/get",
   2.115 -###	"^/packages" => "/fr/packages"
   2.116 -###  )
   2.117 - 
   2.118 -}
   2.119 -
   2.120 -# doc.slitaz.org
   2.121 -#
   2.122 -$HTTP["host"] =~ "doc\.slitaz\.org$" {
   2.123 -  server.document-root = "/var/www/doc"
   2.124 -  server.errorlog = "/var/log/lighttpd/doc.slitaz.org-error.log"
   2.125 -  accesslog.filename = "/var/log/lighttpd/doc.slitaz.org-access.log"
   2.126 -  index-file.names = ("doku.php")
   2.127 -  var.dokudir = ""
   2.128 -  # Rewrites for dokuwiki
   2.129 -  url.rewrite = (
   2.130 -    "^" + var.dokudir + "/lib/.*$"              => "$0",
   2.131 -     "^" + var.dokudir + "/_media/(.*)?\?(.*)$"  => var.dokudir + "/lib/exe/fetch.php?media=$1&$2",
   2.132 -     "^" + var.dokudir + "/_media/(.*)$"         => var.dokudir + "/lib/exe/fetch.php?media=$1",
   2.133 -     "^" + var.dokudir + "/_detail/(.*)?\?(.*)$" => var.dokudir + "/lib/exe/detail.php?media=$1&$2",
   2.134 -     "^" + var.dokudir + "/_detail/(.*)?$"       => var.dokudir + "/lib/exe/detail.php?media=$1",
   2.135 -     "^" + var.dokudir + "/_export/([^/]+)/(.*)\?(.*)$" => var.dokudir + "/doku.php?do=export_$1&id=$2&$3",
   2.136 -     "^" + var.dokudir + "/_export/([^/]+)/(.*)" => var.dokudir + "/doku.php?do=export_$1&id=$2",
   2.137 -     "^" + var.dokudir + "/doku.php.*"           => "$0",
   2.138 -     "^" + var.dokudir + "/feed.php.*"           => "$0",
   2.139 -     "^" + var.dokudir + "/(.*)\?(.*)"           => var.dokudir + "/doku.php?id=$1&$2",
   2.140 -     "^" + var.dokudir + "/(.*)"                 => var.dokudir + "/doku.php?id=$1"
   2.141 -  )
   2.142 -}
   2.143 -
   2.144 -# boot.slitaz.org
   2.145 -#
   2.146 -$HTTP["host"] =~ "boot\.slitaz\.org$" {
   2.147 -  server.document-root = "/var/www/boot"
   2.148 -  server.errorlog = "/var/log/lighttpd/boot.slitaz.org-error.log"
   2.149 -  accesslog.filename = "/var/log/lighttpd/boot.slitaz.org-access.log"
   2.150 -}
   2.151 -
   2.152 -# pkgs.slitaz.org
   2.153 -#
   2.154 -$HTTP["host"] =~ "pkgs\.slitaz\.org$" {
   2.155 -  server.document-root = "/var/www/pkgs"
   2.156 -  server.errorlog = "/var/log/lighttpd/pkgs.slitaz.org-error.log"
   2.157 -  accesslog.filename = "/var/log/lighttpd/pkgs.slitaz.org-access.log"
   2.158 -  index-file.names += ( "search.sh" )
   2.159 -  cgi.assign = (
   2.160 -    ".sh" => "/bin/sh"
   2.161 -  )
   2.162 -}
   2.163 -
   2.164 -# hg.slitaz.org (Mercurial repos)
   2.165 -#
   2.166 -$HTTP["host"] =~ "hg\.slitaz\.org" {
   2.167 -  cgi.assign = (
   2.168 -    ".py" => "/usr/bin/python"
   2.169 -  )
   2.170 -  server.document-root = "/var/www/hg"
   2.171 -#  url.rewrite-once = ( "(.*)" => "/hgwebdir.py$1" )
   2.172 -  index-file.names += ( "hgwebdir.py" )
   2.173 -}
   2.174 -
   2.175 -# scn.slitaz.org (SliTaz Community Network)
   2.176 -#
   2.177 -$HTTP["host"] =~ "scn\.slitaz\.org$" {
   2.178 -  server.document-root = "/var/www/scn"
   2.179 -  server.errorlog = "/var/log/lighttpd/scn.slitaz.org-error.log"
   2.180 -  accesslog.filename = "/var/log/lighttpd/scn.slitaz.org-access.log"
   2.181 -  url.rewrite-final = (
   2.182 -    "^/system/test/(.*)$" => "/index.php?q=system/test/$1",
   2.183 -    "^/([^.?]*)\?(.*)$" => "/index.php?q=$1&$2",
   2.184 -    "^/([^.?]*)$" => "/index.php?q=$1",
   2.185 -    "^/rss.xml" => "/index.php?q=rss.xml"
   2.186 -  )
   2.187 -}
     3.1 --- a/mirror-tools/stuff/etc/rsyncd.conf	Fri Feb 25 00:13:56 2011 +0000
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,25 +0,0 @@
     3.4 -# rsynd configuration for SliTaz mirror
     3.5 -#
     3.6 -motd file=/etc/rsyncd.motd
     3.7 -log file=/var/log/rsyncd
     3.8 -pid file=/var/run/rsyncd.pid
     3.9 -
    3.10 -
    3.11 -[slitaz]
    3.12 -
    3.13 -	comment = SliTaz GNU/Linux mirror
    3.14 -	path = /var/www/slitaz/mirror
    3.15 -	use chroot = yes
    3.16 -	max connections = 5
    3.17 -	lock file = /var/lock/rsyncd
    3.18 -	read only = yes
    3.19 -	list = yes
    3.20 -	uid = nobody
    3.21 -	gid = nogroup
    3.22 -	strict modes = yes
    3.23 -	ignore errors = no
    3.24 -	ignore nonreadable = yes
    3.25 -	transfer logging = no
    3.26 -	timeout = 600
    3.27 -	refuse options = checksum dry-run
    3.28 -	dont compress = *.gz *.tgz *.zip *.iso *.bz2 *.tazpkg
     4.1 --- a/mirror-tools/stuff/etc/rsyncd.motd	Fri Feb 25 00:13:56 2011 +0000
     4.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.3 @@ -1,12 +0,0 @@
     4.4 -===============================================================================
     4.5 -
     4.6 -	SliTaz GNU/Linux mirror - http://www.slitaz.org/
     4.7 -
     4.8 -===============================================================================
     4.9 -
    4.10 -modules: 
    4.11 -
    4.12 - * slitaz      		--> ISO, packages, boot... all stuff 
    4.13 -
    4.14 -===============================================================================
    4.15 -
     5.1 --- a/mirror-tools/stuff/etc/tazwok.conf.mirror	Fri Feb 25 00:13:56 2011 +0000
     5.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.3 @@ -1,45 +0,0 @@
     5.4 -# tazwok.conf: Tazwok configuration file.
     5.5 -#
     5.6 -
     5.7 -# Wok directory/tree to find receipts and build packages.
     5.8 -# By default on SliTaz the directory is /home/slitaz/wok.
     5.9 -WOK="/slitaz/home/slitaz/wok"
    5.10 -
    5.11 -# The path to the sources tarballs of the binaries packages.
    5.12 -SOURCES_REPOSITORY="/slitaz/home/slitaz/src"
    5.13 -
    5.14 -# This path set the binaries packages repository. It's where all
    5.15 -# the gen *.tazpkg will be stored when using gen-repository command.
    5.16 -PACKAGES_REPOSITORY="/var/www/slitaz/mirror/packages/cooking"
    5.17 -
    5.18 -# Default build host
    5.19 -BUILD_HOST=i486-pc-linux-gnu
    5.20 -
    5.21 -# Default tool prefix
    5.22 -TOOLPREFIX="${BUILD_HOST}-"
    5.23 -
    5.24 -# Default arguments for GNU configure.
    5.25 -CONFIGURE_ARGS="--build=$BUILD_HOST --host=$BUILD_HOST"
    5.26 -
    5.27 -# Translation files to include in packages, note that you can specifiy
    5.28 -# several locale.
    5.29 -LOCALE="fr"
    5.30 -
    5.31 -# Mirrors URLs. To downloads source next from your location.
    5.32 -# GNU mirror :
    5.33 -#
    5.34 -GNU_MIRROR="http://ftpmirror.gnu.org" 
    5.35 -
    5.36 -# SourceForge mirror :
    5.37 -#
    5.38 -SF_MIRROR="http://prdownloads.sourceforge.net/sourceforge" 
    5.39 -
    5.40 -# Xorg mirror :
    5.41 -#
    5.42 -XORG_MIRROR="ftp://ftp.solnet.ch/mirror/x.org/pub/individual"
    5.43 -
    5.44 -# FSH standards directories with init. Package generation will abort if
    5.45 -# a file is installed in a non-specified path. Note /vz is for OpenVZ.
    5.46 -FSH="bin boot dev etc home init lib media mnt proc root sbin share sys \
    5.47 -tmp usr var vz usr/bin usr/games usr/include usr/lib usr/local usr/sbin \
    5.48 -usr/share usr/src"
     6.1 --- a/mirror-tools/stuff/home/backups/mirror/backup.sh	Fri Feb 25 00:13:56 2011 +0000
     6.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.3 @@ -1,83 +0,0 @@
     6.4 -#!/bin/sh
     6.5 -
     6.6 -KEEP=1
     6.7 -EXTRA="monthly:30:2"
     6.8 -BACKUP_USER=bellard
     6.9 -REMOTE_USER=bellard
    6.10 -
    6.11 -backup_data()
    6.12 -{
    6.13 -GZIP=rgzip
    6.14 -which $GZIP > /dev/null || GZIP=gzip
    6.15 -echo "Sync doc.slitaz.org ..."
    6.16 -rsync -aH -e "$SSH" --bwlimit=50 \
    6.17 -  $REMOTE_USER@tank.slitaz.org:/home/slitaz/www/doc/data/. /var/www/doc/data/.
    6.18 -while read file dirs; do
    6.19 -	echo "Create $file.cpio.gz ..."
    6.20 -	( cd / ; find $dirs  | cpio -o -H newc ) | \
    6.21 -		$GZIP -9 > $file.cpio.gz 2> /dev/null
    6.22 -done <<EOT
    6.23 -etc		etc home/$BACKUP_USER/.ssh
    6.24 -www		var/www/mirror-info var/www/pizza
    6.25 -www2		var/www/boot /var/www/hg /var/www/pkgs /var/www/doc
    6.26 -packages	var/lib/tazpkg/installed
    6.27 -rrd		var/spool/rrd
    6.28 -crontabs	var/spool/cron/crontabs
    6.29 -awstats		var/lib/awstats
    6.30 -EOT
    6.31 -}
    6.32 -
    6.33 -#
    6.34 -# The following should be kept untouched.
    6.35 -#
    6.36 -
    6.37 -SSH="ssh -i /home/$BACKUP_USER/.ssh/id_rsa -o PasswordAuthentication=no"
    6.38 -
    6.39 -cd $(dirname $0)
    6.40 -[ $(id -u) == 0 ] || exit 1
    6.41 -[ $(hostname) == $(basename $PWD) -o \
    6.42 -  $(hostname) == $(basename $PWD).slitaz.org ] || exit 1
    6.43 -
    6.44 -rotate()
    6.45 -{
    6.46 -	local i
    6.47 -	local j
    6.48 -	for j in $(seq $(($1 - 1)) -1 1); do
    6.49 -		for i in *.$2.$(($j - 1)) ; do
    6.50 -			[ -e $i ] && mv -f $i ${i%.$2.*}.$2.$j
    6.51 -		done
    6.52 -	done
    6.53 -}
    6.54 -
    6.55 -[ -n "$EXTRA" ] && for x in $EXTRA ; do
    6.56 -	IFS=':' ; set -- $x ; unset IFS
    6.57 -	suffix=$1
    6.58 -	days=$2
    6.59 -	keep=$3
    6.60 -	for i in *.gz ; do
    6.61 -		[ -e $i ] || continue
    6.62 -		mtime=$(( $(stat -c %Y $i) - ($days * 24 * 3600) ))
    6.63 -		j=$i.$suffix.0
    6.64 -		[ -e $j ] && [ $(stat -c %Y $j) -gt $mtime ] && continue
    6.65 -		rotate $keep gz.$suffix
    6.66 -		ln $i $j
    6.67 -	done
    6.68 -done
    6.69 -if [ 0$KEEP -gt 0 ]; then
    6.70 -	[ $KEEP -gt 1 ] && rotate $KEEP gz
    6.71 -	for i in *.gz ; do
    6.72 -		[ -e $i ] && mv -f $i $i.0
    6.73 -	done
    6.74 -fi
    6.75 -
    6.76 -echo "Local backup for $(hostname) ..."
    6.77 -backup_data
    6.78 -
    6.79 -chown $BACKUP_USER *
    6.80 -chmod 700 *
    6.81 -
    6.82 -[ -n "$REMOTE_USER" ] && for i in $(cd .. ; ls); do
    6.83 -	[ $i == $(hostname) -o $i.slitaz.org == $(hostname) ] && continue
    6.84 -	echo "Get backups from $i ..."
    6.85 -	rsync -aH -e "$SSH" --bwlimit=50 $REMOTE_USER@$i.slitaz.org:/home/backups/$i/. ../$i/.
    6.86 -done
     7.1 --- a/mirror-tools/stuff/usr/bin/mkpkgiso	Fri Feb 25 00:13:56 2011 +0000
     7.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.3 @@ -1,431 +0,0 @@
     7.4 -#!/bin/sh
     7.5 -# mkpkgiso, build packages ISO image.
     7.6 -# (C) 2007-TODAY SliTaz - GNU General Public License v3.
     7.7 -#
     7.8 -# Authors : Eric Joseph-Alexandre <erjo@slitaz.org>
     7.9 -#	    Pascal Bellard <pascal.bellard@slitaz.org>
    7.10 -
    7.11 -VERSION=0.9
    7.12 -
    7.13 -PKG_VER=$1
    7.14 -ROOT=/home/slitaz/iso
    7.15 -REPOS=/var/www/slitaz/mirror/packages/$PKG_VER
    7.16 -SOURCES=/var/www/slitaz/mirror/sources/packages
    7.17 -IFMEM_C32=/var/www/slitaz/mirror/pxe/ifmem.c32
    7.18 -ISO_DIR=/var/www/slitaz/mirror/iso/$PKG_VER
    7.19 -
    7.20 -[ -s /etc/slitaz/mkpkgiso.conf ] && . /etc/slitaz/mkpkgiso.conf
    7.21 -[ -s ./mkpkgiso.conf ] && . ./mkpkgiso.conf
    7.22 -
    7.23 -SORT_DIR=${ROOT}/_iso.$$
    7.24 -TEMP_DIR=${ROOT}/_iso.$$
    7.25 -SORT_FILE=${ROOT}/_sort.$$
    7.26 -shift
    7.27 -OPTIONS=$@
    7.28 -PKG_DIR=$TEMP_DIR/packages/$PKG_VER
    7.29 -SRC_DIR=$TEMP_DIR/src
    7.30 -LOG=$PWD/$(basename $0).log
    7.31 -
    7.32 -#
    7.33 -VOLUME_ID="packages-${PKG_VER}"
    7.34 -PUBLISHER="SliTaz http://www.slitaz.org/"
    7.35 -IMAGE="packages-${PKG_VER}.iso"
    7.36 -case " $@ " in
    7.37 -*\ --sources\ *)
    7.38 -	IMAGE="sources-${PKG_VER}.iso" ;;
    7.39 -esac
    7.40 -OUTPUT="$ROOT/$IMAGE"
    7.41 -
    7.42 -# Check command line option.
    7.43 -if [ -z $PKG_VER ]; then
    7.44 -	cat <<EOT
    7.45 -Usage: $(basename $0) <Version> 
    7.46 -	[--boot [--auto-install] [--loram-detect]]|--webboot] [--filter]
    7.47 -	[--wok] [--wok-stable] [--website] [--sources] [--dry-run]
    7.48 -       $(basename $0) update-hg <dir>
    7.49 -Example:
    7.50 -$(basename $0) cooking --boot --auto-install --loram-detect --filter --wok --website --sources
    7.51 -EOT
    7.52 -	exit 1
    7.53 -fi
    7.54 -
    7.55 -# Update hg repos
    7.56 -if [ "$PKG_VER" == "update-hg" ]; then
    7.57 -	for i in $1/* ; do
    7.58 -		grep -qs '\[paths]' $i/.hg/hgrc || continue
    7.59 -		cd $i
    7.60 -		hg pull
    7.61 -		hg update
    7.62 -		cd - > /dev/null
    7.63 -	done
    7.64 -	exit 1
    7.65 -fi
    7.66 -
    7.67 -# Check if we provide a valide version
    7.68 -if [ ! -d $REPOS ]; then
    7.69 -	echo "Boooh! $PKG_VER is not a valid version."
    7.70 -	exit 1
    7.71 -fi
    7.72 -
    7.73 -# Status function.
    7.74 -status()
    7.75 -{
    7.76 -	local CHECK=$?
    7.77 -	echo -en "\\033[70G[ "
    7.78 -	if [ $CHECK = 0 ]; then
    7.79 -		echo -en "\\033[1;33mOK"
    7.80 -	else
    7.81 -		echo -en "\\033[1;31mFailed"
    7.82 -	fi
    7.83 -	echo -e "\\033[0;39m ]"
    7.84 -}
    7.85 -
    7.86 -need()
    7.87 -{
    7.88 -	found=1
    7.89 -	for i in $@ ; do
    7.90 -		[ -s $i ] && continue
    7.91 -		echo "Missing: $i "
    7.92 -		found=0
    7.93 -	done
    7.94 -	[ $found -ne 0 ] && return
    7.95 -	status
    7.96 -	rm -rf $TEMP_DIR $SORT_FILE
    7.97 -	exit 1
    7.98 -}
    7.99 -
   7.100 -# Create temp directory
   7.101 -mkdir -p $TEMP_DIR/packages/$PKG_VER
   7.102 -which genisoimage > /dev/null || need /usr/bin/genisoimage
   7.103 -
   7.104 -# Prepare evrything for ISO
   7.105 -
   7.106 -echo ""
   7.107 -echo "Building ISO for packages  $PKG_VER"
   7.108 -echo "==============================================================================="
   7.109 -echo -n "Creating working dir $(basename $TEMP_DIR)"
   7.110 -status 
   7.111 -echo -n "Creating symlink"
   7.112 -status
   7.113 -
   7.114 -# Link every packages to temp dir
   7.115 -cd $PKG_DIR
   7.116 -for i in $REPOS/*
   7.117 -do
   7.118 -	ln -s $i >> $LOG 2>&1
   7.119 -done
   7.120 -
   7.121 -echo -n "Creating install script"
   7.122 -# Create install script as suggested by Pascal.
   7.123 -cat >$TEMP_DIR/install.sh<<EOF
   7.124 -#!/bin/sh
   7.125 -#
   7.126 -
   7.127 -DIR=\$(cd \$(busybox dirname \$0); pwd)
   7.128 -
   7.129 -# Handle --auto-install case
   7.130 -if [ "\$DIR" == "/etc/init.d" ]; then
   7.131 -  DIR=/cdrom
   7.132 -  if [ ! -f /cdrom/install.sh ]; then
   7.133 -    mkdir /cdrom 2> /dev/null
   7.134 -    mount --bind /mnt /cdrom
   7.135 -  fi
   7.136 -  # Handle loram on hybrid hard disk / usb key case
   7.137 -  if [ ! -d /usr/bin ]; then
   7.138 -    echo ""
   7.139 -    if [ -d /.usr.rw ]; then
   7.140 -      echo -n "Mounting /usr read-write... "
   7.141 -      usr=.usr.ro
   7.142 -    else
   7.143 -      echo -n "Mounting /usr read-only... "
   7.144 -      usr=usr
   7.145 -    fi
   7.146 -    FS=\$DIR/usr.cromfs
   7.147 -    if [ -f \$FS ]; then
   7.148 -      /bin/cromfs-driver \$FS /\$usr -o ro,dev,suid,allow_other
   7.149 -    elif [ -f \$DIR/usr.sqfs ]; then
   7.150 -      FS=\$DIR/usr.sqfs
   7.151 -      mount -o loop,ro -t squashfs \$FS /\$usr
   7.152 -    elif [ -L /\$usr ]; then
   7.153 -      FS=\$DIR/usr
   7.154 -    fi
   7.155 -    status
   7.156 -    if [ -d /.usr.rw ]; then
   7.157 -      if [ -x /bin/funionfs ]; then
   7.158 -        /bin/funionfs -o dirs=/.usr.ro=RO:/.usr.rw -o allow_other -o suid,dev NONE /usr
   7.159 -      else
   7.160 -        /bin/mount -t aufs -o br:/.usr.rw:/.usr.ro none /usr
   7.161 -      fi
   7.162 -    fi
   7.163 -  fi
   7.164 -fi
   7.165 -
   7.166 -[ -d /var/cache/tazpkg ] || mkdir -p /var/cache/tazpkg
   7.167 -ls -d \$DIR/packages/* > /var/lib/tazpkg/mirror
   7.168 -ln -fs \$DIR/packages/*/*.tazpkg /var/cache/tazpkg/
   7.169 -ln -fs \$DIR/packages/*/packages.* /var/lib/tazpkg
   7.170 -echo ""
   7.171 -echo "=> all $PKG_VER packages are available for tazpkg/tazpkgbox"
   7.172 -EOF
   7.173 -[ -e files.list.lzma ] && cat >>$TEMP_DIR/install.sh<<EOF
   7.174 -ln -fs \$DIR/packages/*/files.list.lzma /var/lib/tazpkg
   7.175 -EOF
   7.176 -
   7.177 -status
   7.178 -cat > $SORT_FILE <<EOT
   7.179 -$SORT_DIR/install.sh -4000
   7.180 -$SORT_DIR/README -4000
   7.181 -$SORT_DIR/index.html -4000
   7.182 -$SORT_DIR/md5sum -4000
   7.183 -$SORT_DIR/style.css -4000
   7.184 -$SORT_DIR/images/header.png -4000
   7.185 -$SORT_DIR/boot/bzImage 2
   7.186 -$SORT_DIR/boot/rootfs.gz 1
   7.187 -$SORT_DIR/packages -9000
   7.188 -EOT
   7.189 -( cd $ROOT; ls $SORT_DIR/packages/*/packages* $SORT_DIR/packages/*/files.list.lzma ) | \
   7.190 -		awk '{ printf "%s -7000\n",$0 }' >> $SORT_FILE
   7.191 -chmod 755  $TEMP_DIR/install.sh
   7.192 -
   7.193 -case " $OPTIONS " in
   7.194 -*\ --filter\ *)
   7.195 -	SIZE=0
   7.196 -	for i in *.tazpkg; do
   7.197 -		while read f; do
   7.198 -			case "$i" in
   7.199 -			$f*) continue 2;;
   7.200 -			esac
   7.201 -		done < packages.list
   7.202 -		echo -n "Filter out $i ($(du -hs $(readlink $i) | awk '{ print $1 }'))..."
   7.203 -		SIZE=$(( $SIZE + $(stat -c %s $(readlink $i)) ))
   7.204 -		rm $i
   7.205 -		status
   7.206 -	done
   7.207 -	UNIT=" bytes"
   7.208 -	if [ $SIZE -gt 10240 ]; then
   7.209 -		SIZE=$(( $SIZE / 1024 ))
   7.210 -		UNIT="K"
   7.211 -	fi
   7.212 -	if [ $SIZE -gt 10240 ]; then
   7.213 -		SIZE=$(( $SIZE / 1024 ))
   7.214 -		UNIT="M"
   7.215 -	fi
   7.216 -	echo "$SIZE$UNIT removed.";;
   7.217 -esac
   7.218 -
   7.219 -# Copy hg subtree
   7.220 -get_from_hg()
   7.221 -{
   7.222 -echo -n "Adding $2"
   7.223 -if [ -s /home/slitaz/$1/.hg/hgrc ]; then
   7.224 -	cp -a /home/slitaz/$1 $TEMP_DIR
   7.225 -else
   7.226 -	wget -q -O - http://hg.slitaz.org/$1/archive/tip.tar.bz2 | tar xjf - -C $TEMP_DIR
   7.227 -	mv $TEMP_DIR/$1-* $TEMP_DIR/$1
   7.228 -fi
   7.229 -status
   7.230 -echo "$(du -hs $TEMP_DIR/$1 | awk '{ print $1 }') used by $2."
   7.231 -}
   7.232 -
   7.233 -for i in $OPTIONS ; do
   7.234 -case "$i" in
   7.235 ---wok)
   7.236 -	cat >>$TEMP_DIR/install.sh<<EOF
   7.237 -mkdir -p /home/slitaz
   7.238 -ln -s \$DIR/wok /home/slitaz
   7.239 -echo "=> Wok (cooking) is in /home/slitaz/wok"
   7.240 -EOF
   7.241 -	if get_from_hg wok "wok (cooking)"; then
   7.242 -		echo "$SORT_DIR/wok -8000" >> $SORT_FILE
   7.243 -	fi;;
   7.244 ---wok-stable)
   7.245 -	cat >>$TEMP_DIR/install.sh<<EOF
   7.246 -mkdir -p /home/slitaz
   7.247 -ln -s \$DIR/wok /home/slitaz
   7.248 -echo "=> Wok (stable) is in /home/slitaz/wok"
   7.249 -EOF
   7.250 -	if get_from_hg wok-stable "wok (stable)"; then
   7.251 -		mv $TEMP_DIR/wok-stable $TEMP_DIR/wok
   7.252 -		echo "$SORT_DIR/wok -8000" >> $SORT_FILE
   7.253 -	fi;;
   7.254 ---website)
   7.255 -	if get_from_hg website "web site"; then
   7.256 -		echo "$SORT_DIR/website -6000" >> $SORT_FILE
   7.257 -		cat >>$TEMP_DIR/install.sh<<EOF
   7.258 -echo "=> slitaz web site installed in file://\$DIR/website/index.html"
   7.259 -EOF
   7.260 -	fi;;
   7.261 ---sources)
   7.262 -	echo -n "Removing previous ISO..."
   7.263 -	rm -f $OUTPUT
   7.264 -	status
   7.265 -	cat >>$TEMP_DIR/install.sh<<EOF
   7.266 -mkdir -p /home/slitaz
   7.267 -ln -s \$DIR/src /home/slitaz
   7.268 -echo "=> sources are in /home/slitaz/src"
   7.269 -EOF
   7.270 -	mkdir -p $SRC_DIR
   7.271 -	cd $SRC_DIR
   7.272 -	for i in $SOURCES/*/*
   7.273 -	do
   7.274 -		case "$i" in
   7.275 -		*/md5sum) continue;;
   7.276 -		esac
   7.277 -		ln -s $i >> $LOG 2>&1
   7.278 -	done
   7.279 -	find * -not -type d | grep -v md5sum | xargs md5sum > md5sum
   7.280 -	echo "$(du -hs $SOURCES | awk '{ print $1 }') used by sources." ;;
   7.281 -esac
   7.282 -done
   7.283 -
   7.284 -# Extract boot package function
   7.285 -extract_boot()
   7.286 -{
   7.287 -f=$(ls $REPOS/$1-[0-9]*.tazpkg 2> /dev/null)
   7.288 -[ -f "$f" ] || return 1
   7.289 -[ -d $TEMP_DIR/boot ] || mkdir $TEMP_DIR/boot
   7.290 -( cd $TEMP_DIR/boot ; cpio -i fs.cpio.gz < $f 2> /dev/null ) 
   7.291 -( cd $TEMP_DIR/boot ; zcat fs.cpio.gz | cpio -id 2> /dev/null )
   7.292 -mv $TEMP_DIR/boot/fs/boot/* $TEMP_DIR/boot
   7.293 -rm -rf $TEMP_DIR/boot/fs.cpio.gz $TEMP_DIR/boot/fs
   7.294 -return 0
   7.295 -}
   7.296 -
   7.297 -# Gen boot part
   7.298 -BOOT_OPT=""
   7.299 -iso=$ISO_DIR/slitaz-$PKG_VER.iso
   7.300 -for i in slitaz-loram-cdrom-sqfs slitaz-$PKG_VER-loram-cdrom ; do
   7.301 -	isoloram=$ISO_DIR/flavors/$i.iso
   7.302 -	[ -s $isoloram ] && break
   7.303 -done
   7.304 -case " $OPTIONS " in
   7.305 -*\ --boot\ *)
   7.306 -	echo -n "Creating boot tree"
   7.307 -	need $iso
   7.308 -	which isoinfo > /dev/null || need /usr/bin/isoinfo
   7.309 -	isoinfo -R -l -i $iso | awk '/^Directory/ { path=$4 } /^-/ { print path$12  }' | while read file; do
   7.310 -		[ "$(basename $file)" == ".." ] && continue
   7.311 -		[ "$file" = "/boot/isolinux/boot.cat" ] && continue
   7.312 -		[ -d "$(dirname $TEMP_DIR/$file)" ] ||
   7.313 -			mkdir -p "$(dirname $TEMP_DIR/$file)"
   7.314 -		isoinfo -R -x "$file" -i $iso > "$TEMP_DIR/$file"
   7.315 -	done
   7.316 -	if [ -f "$(echo $TEMP_DIR/boot/vmlinuz*)" ]; then
   7.317 -		rm -f $TEMP_DIR/boot/bzImage
   7.318 -		ln $TEMP_DIR/boot/vmlinuz* $TEMP_DIR/boot/bzImage
   7.319 -	fi
   7.320 -	status
   7.321 -	BOOT_OPT="-sort $SORT_FILE -b boot/isolinux/isolinux.bin \
   7.322 --c boot/isolinux/boot.cat  -no-emul-boot -boot-load-size 4 -boot-info-table"
   7.323 -	case " $OPTIONS " in
   7.324 -	*\ --auto-install\ *)
   7.325 -		echo -n "Enable auto install"
   7.326 -		sed -i "s/rw root/rw config=LABEL=packages-$PKG_VER,install.sh root/" \
   7.327 -			$TEMP_DIR/boot/isolinux/*.cfg
   7.328 -		status
   7.329 -		;;
   7.330 -	esac
   7.331 -	case " $OPTIONS " in
   7.332 -	*\ --loram-detect\ *)
   7.333 -		echo -n "Enable loram autodetection"
   7.334 -		need $IFMEM_C32 $isoloram
   7.335 -		which isoinfo > /dev/null || need /usr/bin/isoinfo
   7.336 -		cp $IFMEM_C32 "$TEMP_DIR/boot/isolinux"
   7.337 -		isoinfo -R -x "/usr.sqfs" -i $isoloram \
   7.338 -			> "$TEMP_DIR/usr.sqfs" 2> /dev/null
   7.339 -		if [ -s "$TEMP_DIR/usr.sqfs" ]; then
   7.340 -			echo "$SORT_DIR/usr.sqfs -5000" >> $SORT_FILE
   7.341 -		else
   7.342 -			rm -f "$TEMP_DIR/usr.sqfs"
   7.343 -			isoinfo -R -x "/rootfs.gz" -i $isoloram \
   7.344 -				> "$TEMP_DIR/rootfs.gz" 2> /dev/null
   7.345 -			echo "$SORT_DIR/rootfs.gz -5000" >> $SORT_FILE
   7.346 -		fi
   7.347 -		isoinfo -R -x "/boot/rootfs.gz" -i $isoloram > \
   7.348 -			"$TEMP_DIR/boot/loram.gz"
   7.349 -		cat >> $TEMP_DIR/boot/isolinux/common.cfg <<EOT
   7.350 -label noram
   7.351 -        config noram.cfg
   7.352 -EOT
   7.353 -		cat >> $TEMP_DIR/boot/isolinux/noram.cfg <<EOT
   7.354 -display isolinux.msg
   7.355 -say Not enough RAM to boot slitaz.
   7.356 -default reboot
   7.357 -label reboot
   7.358 -        com32 reboot.c32
   7.359 -
   7.360 -implicit 0
   7.361 -prompt 1
   7.362 -timeout 80
   7.363 -F1 help.txt
   7.364 -F2 options.txt
   7.365 -F3 isolinux.msg
   7.366 -F4 display.txt
   7.367 -F5 enhelp.txt
   7.368 -F6 enopts.txt
   7.369 -EOT
   7.370 -		sed -i -e 's|kernel /boot/bzImage|kernel /boot/isolinux/ifmem.c32\n\tappend 160768 core 29696 loram noram\n|' \
   7.371 -			-e "s|\\(.*/\\)rootfs\\(.gz .*\\)\$|label core\\n\\tkernel /boot/bzImage\\n\\1rootfs\\2\\n\\nlabel loram\\n\\tkernel /boot/bzImage\\n\\1loram\\2 loram=LABEL=packages-$PKG_VER,|" \
   7.372 -			$TEMP_DIR/boot/isolinux/*.cfg
   7.373 -		status
   7.374 -		;;
   7.375 -	esac
   7.376 -	echo "$SORT_DIR/boot 0" >> $SORT_FILE
   7.377 -	;;
   7.378 -*\ --webboot\ *)
   7.379 -	if extract_boot gpxe; then
   7.380 -	echo -n "Creating web boot tree"
   7.381 -	which isoinfo > /dev/null || need /usr/bin/isoinfo
   7.382 -	mkdir $TEMP_DIR/boot/isolinux/
   7.383 -	isoinfo -R -x "/boot/isolinux/isolinux.bin" -i $iso > \
   7.384 -		$TEMP_DIR/boot/isolinux/isolinux.bin
   7.385 -	mv $TEMP_DIR/boot/gpxe $TEMP_DIR/boot/isolinux
   7.386 -	echo "$SORT_DIR/boot 0" >> $SORT_FILE
   7.387 -	cat > $TEMP_DIR/boot/isolinux/isolinux.cfg <<EOT
   7.388 -default gpxe
   7.389 -append http://mirror.slitaz.org/pxe/pxelinux.0
   7.390 -EOT
   7.391 -	status
   7.392 -	BOOT_OPT="-sort $SORT_FILE -b boot/isolinux/isolinux.bin \
   7.393 --c boot/isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table"
   7.394 -	fi
   7.395 -	;;
   7.396 -esac
   7.397 -
   7.398 -if [ -n "$BOOT_OPT" ]; then
   7.399 -	echo "$(du -chs $TEMP_DIR/boot $TEMP_DIR/usr.sqfs 2> /dev/null | \
   7.400 -		    awk 'END { print $1 }') used by boot."
   7.401 -fi
   7.402 -
   7.403 -case " $OPTIONS " in
   7.404 -*\ --dry-run\ *)
   7.405 -	echo "Please check and remove $TEMP_DIR and $SORT_FILE"
   7.406 -	exit
   7.407 -	;;
   7.408 -esac
   7.409 -# Gen ISO
   7.410 -echo -n "Generating iso image"
   7.411 -genisoimage -R -J -f -V $VOLUME_ID \
   7.412 - -P "$PUBLISHER" -md5-list $REPOS/packages.md5 \
   7.413 - -quiet -o $OUTPUT $BOOT_OPT $TEMP_DIR
   7.414 -status 
   7.415 -
   7.416 -echo "$(du -hs $OUTPUT | awk '{ print $1 }') used by iso image."
   7.417 -
   7.418 -cd ${ROOT}
   7.419 -echo -n "Create hybrid DVD/CDROM"
   7.420 -which isohybrid > /dev/null && isohybrid $IMAGE 2> /dev/null
   7.421 -status
   7.422 -
   7.423 -echo -n "Calculate md5sum"
   7.424 -md5sum $IMAGE > $(basename $IMAGE .iso).md5
   7.425 -status
   7.426 -
   7.427 -echo -n "Moving file to mirror"
   7.428 -mv $IMAGE $ISO_DIR
   7.429 -mv $(basename $IMAGE .iso).md5 $ISO_DIR
   7.430 -status
   7.431 -
   7.432 -# Cleaning temp files
   7.433 -rm -rf $TEMP_DIR $SORT_FILE
   7.434 -
     8.1 --- a/mirror-tools/stuff/usr/share/mirror-host/boot/lguest-disk	Fri Feb 25 00:13:56 2011 +0000
     8.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.3 @@ -1,58 +0,0 @@
     8.4 -#!/bin/sh
     8.5 -
     8.6 -usage()
     8.7 -{
     8.8 -	cat << EOT
     8.9 -resize2fs
    8.10 -usage: 
    8.11 -$0 grow <guest> <size>[MG]
    8.12 -$0 fixmbr <guest>
    8.13 -EOT
    8.14 -	exit 1
    8.15 -}
    8.16 -
    8.17 -grow()
    8.18 -{
    8.19 -	case "$2" in
    8.20 -	*M)	dd if=/dev/zero bs=1M count=${2%M} >> /boot/guests/$1 ;;
    8.21 -	*G)	dd if=/dev/zero bs=1G count=${2%G} >> /boot/guests/$1 ;;
    8.22 -	esac
    8.23 -}
    8.24 -
    8.25 -# write a 32 bits data
    8.26 -# usage: storelong offset data32 file
    8.27 -storelong()
    8.28 -{
    8.29 -	echo $2 | awk '{ printf "%c%c%c%c",
    8.30 -	  $1%256,($1/256)%256,($1/256/256)%256,($1/256/256/256)%256 }' | \
    8.31 -	dd bs=1 conv=notrunc of=$3 seek=$(( $1 )) 2> /dev/null
    8.32 -}
    8.33 -
    8.34 -# read a 32 bits data
    8.35 -# usage: getlong offset file
    8.36 -getlong()
    8.37 -{
    8.38 -	dd if=$2 bs=1 skip=$(( $1 )) count=4 2> /dev/null | \
    8.39 -		hexdump -e '"" 1/4 "%d" "\n"'
    8.40 -}
    8.41 -
    8.42 -fixmbr()
    8.43 -{
    8.44 -	if [ $(getlong 0x1ea $1) -ne 0 -a $(getlong 0x1fa $1) -ne 0 ]; then
    8.45 -		echo "Parttion 3 & 4 non empty. Abort"
    8.46 -		exit 1
    8.47 -	fi
    8.48 -	if [ $(getlong 0x1da $1) -eq 0 ]; then
    8.49 -		echo "Parttion 2 empty. Abort"
    8.50 -		exit 1
    8.51 -	fi
    8.52 -	size=$(stat -c %s $1)
    8.53 -	new=$(( $size/512 - 32 - $(getlong 0x1ca $1) ))
    8.54 -	storelong 0x1da $new $1
    8.55 -}
    8.56 -
    8.57 -case "$1" in
    8.58 -grow)	shift; grow $@ ; fixmbr $1 ;;
    8.59 -fixmbr) shift; fixmbr $1 ;;
    8.60 -*)	usage ;;
    8.61 -esac
     9.1 --- a/mirror-tools/stuff/usr/share/mirror-host/boot/lguest-slitaz	Fri Feb 25 00:13:56 2011 +0000
     9.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.3 @@ -1,21 +0,0 @@
     9.4 -#!/bin/sh
     9.5 -
     9.6 -tty=tty; [ -n "$1" ] && tty=$1
     9.7 -export TERM=$tty
     9.8 -shift
     9.9 -
    9.10 -rootfs="--initrd=/boot/rootfs-lguest.gz"
    9.11 -[ -n "$1" ] && rootfs="--block=$1 root=/dev/vda2"
    9.12 -shift
    9.13 -
    9.14 -net="--tunnet=192.168.0.1"
    9.15 -case "$1" in
    9.16 -192*) net="--tunnet=$1"; shift;;
    9.17 -esac
    9.18 -
    9.19 -args="screen=text lang=fr_FR kmap=fr-latin1 sound=noconf"
    9.20 -[ -n "$1" ] && args=$@
    9.21 -
    9.22 -/sbin/modprobe lg
    9.23 -/usr/bin/lguest 512 /boot/vmlinuz-2.6.25.5-lguest \
    9.24 -	$net $rootfs $args > /dev/$tty < /dev/$tty 2>&1
    10.1 --- a/mirror-tools/stuff/usr/share/mirror-host/boot/shellinabox.sh	Fri Feb 25 00:13:56 2011 +0000
    10.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.3 @@ -1,107 +0,0 @@
    10.4 -#!/bin/sh
    10.5 -
    10.6 -services="/ /reset /reboot /ssh"
    10.7 -
    10.8 -mkexe()
    10.9 -{
   10.10 -exe=$0
   10.11 -while true; do
   10.12 -	cd $(dirname $exe)
   10.13 -	exe=$(basename $exe)
   10.14 -	[ -L $exe ] || break
   10.15 -	exe=$(readlink $exe)
   10.16 -done
   10.17 -echo $(pwd)/$exe
   10.18 -}
   10.19 -exe=$(mkexe)
   10.20 -
   10.21 -services_arg()
   10.22 -{
   10.23 -for i in $services ; do
   10.24 -	echo -n "-s '$i:root:root:/tmp:LINES=25 /bin/sh -c \"$exe service $i "
   10.25 -	echo -n "\${peer} \${url} \${columns} \${lines}\"' "
   10.26 -done
   10.27 -}
   10.28 -
   10.29 -launch_ssh()
   10.30 -{
   10.31 -	# Get SSH server
   10.32 -	server=""
   10.33 -	echo -n "SSH server: "
   10.34 -	read -t 300 server || exit 1
   10.35 -	[ -n "$server" ] || exit 1
   10.36 -
   10.37 -	# Allow non default SSH port with format server:port
   10.38 -	sshport=""
   10.39 -	case "$server" in
   10.40 -	*:*)	sshport="-p ${server#*:}"
   10.41 -		server=${server%:*};;
   10.42 -	esac
   10.43 -
   10.44 -	# heading ! in server name means open remote ssh port with a knock sequence
   10.45 -	if [ -x /usr/bin/knock ]; then
   10.46 -		case "$server" in
   10.47 -		!*)	server=${server#*!}
   10.48 -			echo -n "Knock sequence (port[:proto]...): "
   10.49 -			read -t 30 sequence && knock ${server#*@} $sequence
   10.50 -		esac
   10.51 -	fi
   10.52 -
   10.53 -	# Get SSH user if missing
   10.54 -	case "$server" in
   10.55 -	*@*)	;;
   10.56 -	*)	echo -n "$server login: "
   10.57 -		read -t 30 user || exit 1
   10.58 -		server="$user@$server";;
   10.59 -	esac
   10.60 -
   10.61 -	# Launch OpenSSH or Dropbear
   10.62 -	sshargs="-oPreferredAuthentications=keyboard-interactive,password -oNoHostAuthenticationForLocalhost=yes -oLogLevel=FATAL -F/dev/null";
   10.63 -	[ -L /usr/bin/ssh ] && sshargs=""
   10.64 -	exec ssh $sshport $sshargs $server
   10.65 -}
   10.66 -
   10.67 -auth()
   10.68 -{
   10.69 -	while read host md5 ; do
   10.70 -		[ "${host#*.}" == "${1#*.}" ] && break
   10.71 -	done < $(dirname $exe)/shellinabox.secrets
   10.72 -	echo -n "$host password: "
   10.73 -	read -s -t 30 password || exit 1
   10.74 -	[ "$(echo $password | md5sum)" == "$md5  -" ] || exit 1
   10.75 -	echo ""
   10.76 -}
   10.77 -
   10.78 -pidfile=/var/run/shellinaboxd.pid
   10.79 -case "$1" in
   10.80 -service)
   10.81 -	host=$(echo $4 | sed 's/.*\/\/\(.*\):.*/\1/')
   10.82 -	tty=$(awk "/$host/ { print \$2 }" /etc/inittab)
   10.83 -	vm=$(awk "/$host/ { print \$3 }" /etc/inittab)
   10.84 -	[ -n "$vm" ] || exit 1
   10.85 -	case "$2" in
   10.86 -	/)
   10.87 -		auth $host
   10.88 -		exec /usr/bin/conspy ${tty#tty} ;;
   10.89 -	/reboot)
   10.90 -		auth $host
   10.91 -		echo -n "Sure to reboot $host now (YES or NO) ?"
   10.92 -		read -t 30 answer || exit 1
   10.93 -		case "$answer" in
   10.94 -		YES*) ;;
   10.95 -		*) exit 1;;
   10.96 -		esac
   10.97 -		exec /bin/kill $(ps ww | grep $vm | awk '/lguest/ { printf "%s ",$1 }') ;;
   10.98 -	/ssh)
   10.99 -		auth $host
  10.100 -		launch_ssh ;;
  10.101 -	esac
  10.102 -	;;
  10.103 -start)
  10.104 -	dir=$(dirname $exe)
  10.105 -	eval shellinaboxd --background=$pidfile --cert=/boot/cert $(services_arg)
  10.106 -	;;
  10.107 -stop)
  10.108 -	[ -s $pidfile ] && kill $(cat $pidfile)
  10.109 -	;;
  10.110 -esac
    11.1 --- a/mirror-tools/stuff/usr/share/mirror-host/etc/apache/conf.d/slitaz	Fri Feb 25 00:13:56 2011 +0000
    11.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.3 @@ -1,16 +0,0 @@
    11.4 -<VirtualHost *:80>
    11.5 -	ServerName      mirror.slitaz.org
    11.6 -	ServerAlias	*.slitaz.org
    11.7 -	<IfModule mod_proxy.c>
    11.8 -		ProxyPreserveHost On
    11.9 -		ProxyRequests Off
   11.10 -		ProxyTimeout 600
   11.11 -		<Proxy *>
   11.12 -			Order deny,allow
   11.13 -			Allow from all
   11.14 -		</Proxy>
   11.15 -		ProxyPass / http://192.168.0.6/
   11.16 -		ProxyPassReverse / http://192.168.0.6/
   11.17 -	</IfModule>
   11.18 -</VirtualHost>
   11.19 -
    12.1 --- a/mirror-tools/stuff/usr/share/mirror-host/etc/apache/conf.d/slitaz-ssl	Fri Feb 25 00:13:56 2011 +0000
    12.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.3 @@ -1,20 +0,0 @@
    12.4 -<VirtualHost *:443>
    12.5 -	SSLProxyEngine On
    12.6 -	SSLEngine On
    12.7 -	ServerName      mirror.slitaz.org:443
    12.8 -	ServerAlias	*.slitaz.org
    12.9 -	SSLCertificateFile /etc/ssl/apache/slitaz.org.pem
   12.10 -	SSLCertificateKeyFile /etc/ssl/apache/slitaz.org.pem
   12.11 -	<IfModule mod_proxy.c>
   12.12 -		ProxyPreserveHost On
   12.13 -		ProxyRequests Off
   12.14 -		ProxyTimeout 600
   12.15 -		<Proxy *>
   12.16 -			Order deny,allow
   12.17 -			Allow from all
   12.18 -		</Proxy>
   12.19 -		ProxyPass / http://192.168.0.6/
   12.20 -		ProxyPassReverse / http://192.168.0.6/
   12.21 -	</IfModule>
   12.22 -</VirtualHost>
   12.23 -
    13.1 --- a/mirror-tools/stuff/usr/share/mirror-host/etc/init.d/shellinabox	Fri Feb 25 00:13:56 2011 +0000
    13.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.3 @@ -1,1 +0,0 @@
    13.4 -/boot/shellinabox.sh
    13.5 \ No newline at end of file
    14.1 --- a/mirror-tools/stuff/usr/share/mirror-host/install	Fri Feb 25 00:13:56 2011 +0000
    14.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.3 @@ -1,25 +0,0 @@
    14.4 -#!/bin/sh
    14.5 -
    14.6 -grep -qs lguest-slitaz /etc/inittab || {
    14.7 -sed -i 's|^tty1::|tty16::respawn:/boot/lguest-slitaz tty16 /boot/guests/mirror.slitaz.org 192.168.0.1\n&|' /etc/inittab
    14.8 -cat >> /etc/init.d/local.sh <<EOT
    14.9 -. /etc/network.conf
   14.10 -iptables -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE
   14.11 -for port in 22 873 ; do
   14.12 -	iptables -t nat -A PREROUTING -i $INTERFACE --dport $port \
   14.13 -			-j DNAT --to-destination 192.168.0.6:$port
   14.14 -done
   14.15 -for port in 80 443 ; do
   14.16 -	iptables -A INPUT -p tcp -m tcp --dport $port -j ACCEPT
   14.17 -done
   14.18 -for iface in tap+ ; do
   14.19 -	iptables -A INPUT  -i $iface -j ACCEPT
   14.20 -	iptables -A OUTPUT -o $iface -j ACCEPT
   14.21 -	iptables -A FORWARD -i $iface -m state \
   14.22 -			--state NEW,RELATED,ESTABLISHED,UNTRACKED -j ACCEPT
   14.23 -	iptables -A FORWARD -o $iface -m state \
   14.24 -			--state NEW,RELATED,ESTABLISHED,UNTRACKED -j ACCEPT
   14.25 -done
   14.26 -echo "1" > /proc/sys/net/ipv4/ip_forward
   14.27 -EOT
   14.28 -}
    15.1 --- a/mirror-tools/stuff/usr/share/rrd/makegraphs	Fri Feb 25 00:13:56 2011 +0000
    15.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.3 @@ -1,299 +0,0 @@
    15.4 -#!/bin/sh
    15.5 -#*/5  * * * * /usr/share/rrd/makegraphs >/dev/null
    15.6 -
    15.7 -# RRD database directory
    15.8 -rrdlog="/var/spool/rrd"
    15.9 -
   15.10 -# Images directory
   15.11 -rrdgraph="/var/spool/rrd"
   15.12 -
   15.13 -# Colors
   15.14 -#rrdcolors="--color SHADEA#EAE9EE --color SHADEB#EAE9EE --color BACK#EAE9EE" 
   15.15 -rrdcolors="--color SHADEA#FFFFFF --color SHADEB#FFFFFF --color BACK#FFFFFF" 
   15.16 -rrdgraphargs="-aPNG -i -z --alt-y-grid -w 600 -h 100 -r $rrdcolors"
   15.17 -
   15.18 -[ -d $rrdlog ] || mkdir -p $rrdlog
   15.19 -[ -d $rrdgraph ] || mkdir -p $rrdgraph
   15.20 -
   15.21 -updatecpudata() {
   15.22 -	[ -e "$rrdlog/cpu.rrd" ] || rrdtool create $rrdlog/cpu.rrd --step=300 \
   15.23 -			DS:user:COUNTER:600:0:500000000 \
   15.24 -			DS:system:COUNTER:600:0:500000000 \
   15.25 -			DS:idle:COUNTER:600:0:500000000 \
   15.26 -			RRA:AVERAGE:0.5:1:576  RRA:AVERAGE:0.5:6:672 \
   15.27 -			RRA:AVERAGE:0.5:24:732 RRA:AVERAGE:0.5:144:1460
   15.28 -	grep '^cpu' /proc/stat | while read cpu user nice system idle misc; do
   15.29 -		rrdtool update $rrdlog/cpu.rrd -t user:system:idle \
   15.30 -			N:$(( $user + $nice )):$system:$idle
   15.31 -		break
   15.32 -	done
   15.33 -
   15.34 -	[ -e "$rrdlog/cpu2.rrd" ] &&
   15.35 -	grep '^cpu' /proc/stat | while read cpu user nice system idle misc; do
   15.36 -		rrdtool update $rrdlog/cpu2.rrd -t nice:user:system:idle \
   15.37 -			N:$nice:$user:$system:$idle
   15.38 -		break
   15.39 -	done
   15.40 -}
   15.41 -
   15.42 -updatecpugraph() {
   15.43 -	period=$1
   15.44 -	info="$(grep '^model name' /proc/cpuinfo | cut -d: -f2 | head -1)"
   15.45 -	rrdtool graph "$rrdgraph/cpu-$period.png" --start -1$period \
   15.46 -		$rrdgraphargs -l 0 -u 100 -t "cpu usage per $period [$info ]" \
   15.47 -		DEF:user=$rrdlog/cpu.rrd:user:AVERAGE \
   15.48 -		DEF:system=$rrdlog/cpu.rrd:system:AVERAGE \
   15.49 -		DEF:idle=$rrdlog/cpu.rrd:idle:AVERAGE \
   15.50 -		'CDEF:total=user,system,idle,+,+' \
   15.51 -		'CDEF:userpct=100,user,total,/,*' \
   15.52 -		'CDEF:systempct=100,system,total,/,*' \
   15.53 -		'CDEF:idlepct=100,idle,total,/,*' \
   15.54 -		'AREA:userpct#0000FF:user cpu usage' \
   15.55 -		'STACK:systempct#FF0000:system cpu usage' \
   15.56 -		'STACK:idlepct#00FF00:idle cpu usage\j'
   15.57 -}
   15.58 -
   15.59 -
   15.60 -updatememgraph() {
   15.61 -	period=$1
   15.62 -	info="$(free | awk '\
   15.63 -{ \
   15.64 -  if (/Mem:/) { \
   15.65 -	if ($2 < 10000) printf "%d KB",$2; \
   15.66 -	else if ($2 < 10000000) printf "%d MB",$2/1024; \
   15.67 -	else printf "%d GB",$2/1024/1024; \
   15.68 -  } \
   15.69 -}')"
   15.70 -	info2="$(free | awk '\
   15.71 -{ \
   15.72 -  if (/Swap:/) { \
   15.73 -	if ($2 < 10000) printf "%d KB",$2; \
   15.74 -	else if ($2 < 10000000) printf "%d MB",$2/1024; \
   15.75 -	else printf "%d GB",$2/1024/1024; \
   15.76 -  } \
   15.77 -}')"
   15.78 -	rrdtool graph "$rrdgraph/memory-$period.png" --start -1$period \
   15.79 -		$rrdgraphargs -l 0 -u 100 \
   15.80 -		-t "memory usage per $period [ $info + $info2 swap ]" \
   15.81 -		DEF:used=$rrdlog/mem.rrd:memused:AVERAGE \
   15.82 -		DEF:free=$rrdlog/mem.rrd:memfree:AVERAGE \
   15.83 -		DEF:shared=$rrdlog/mem.rrd:memshared:AVERAGE \
   15.84 -		DEF:buffer=$rrdlog/mem.rrd:membuffers:AVERAGE \
   15.85 -		DEF:cache=$rrdlog/mem.rrd:memcache:AVERAGE \
   15.86 -		DEF:swused=$rrdlog/mem.rrd:swapused:AVERAGE \
   15.87 -		DEF:swfree=$rrdlog/mem.rrd:swapfree:AVERAGE \
   15.88 -		'CDEF:total=used,free,+' \
   15.89 -		'CDEF:used2=used,buffer,cache,shared,+,+,-' \
   15.90 -		'CDEF:usedpct=100,used2,total,/,*' \
   15.91 -		'CDEF:sharedpct=100,shared,total,/,*' \
   15.92 -		'CDEF:bufferpct=100,buffer,total,/,*' \
   15.93 -		'CDEF:cachepct=100,cache,total,/,*' \
   15.94 -		'CDEF:freepct=100,free,total,/,*' \
   15.95 -		'CDEF:swtotal=swused,swfree,+' \
   15.96 -		'CDEF:swusedpct=100,swused,swtotal,/,*' \
   15.97 -		'AREA:usedpct#0000FF:used memory' \
   15.98 -		'STACK:sharedpct#FF7F00:shared memory' \
   15.99 -		'STACK:bufferpct#FF00FF:buffered memory' \
  15.100 -		'STACK:cachepct#FFFF00:cached memory' \
  15.101 -		'STACK:freepct#00FF00:free memory' \
  15.102 -		'LINE2:swusedpct#FF0000:used swap\j'
  15.103 -}
  15.104 -
  15.105 -updatememdata () {
  15.106 -	[ -e "$rrdlog/mem.rrd" ] ||
  15.107 -		rrdtool create "$rrdlog/mem.rrd" --step=300 \
  15.108 -			DS:memused:ABSOLUTE:600:0:5000000000 \
  15.109 -			DS:memfree:ABSOLUTE:600:0:5000000000 \
  15.110 -			DS:memshared:ABSOLUTE:600:0:5000000000 \
  15.111 -			DS:membuffers:ABSOLUTE:600:0:5000000000 \
  15.112 -			DS:memcache:ABSOLUTE:600:0:5000000000 \
  15.113 -			DS:swapused:ABSOLUTE:600:0:5000000000 \
  15.114 -			DS:swapfree:ABSOLUTE:600:0:5000000000 \
  15.115 -			RRA:AVERAGE:0.5:1:576  RRA:AVERAGE:0.5:6:672 \
  15.116 -			RRA:AVERAGE:0.5:24:732 RRA:AVERAGE:0.5:144:1460
  15.117 -
  15.118 -	while read tag count unit; do
  15.119 -		case "$tag" in
  15.120 -		MemTotal:)  memtotal=$(($count * 1024));;
  15.121 -		MemFree:)   memfree=$(($count * 1024))
  15.122 -			    memused=$(($memtotal - $memfree))
  15.123 -			    memshared=0;;
  15.124 -		MemShared:) memshared=$(($count * 1024));;
  15.125 -		Buffers:)   membuffers=$(($count * 1024));;
  15.126 -		Cached:)    memcache=$(($count * 1024));;
  15.127 -		SwapTotal:) swaptotal=$(($count * 1024));;
  15.128 -		SwapFree:)  swapfree=$(($count * 1024))
  15.129 -			    swapused=$(( $swaptotal - $swapfree));;
  15.130 -		esac
  15.131 -	done < /proc/meminfo
  15.132 -
  15.133 -	rrdtool update "$rrdlog/mem.rrd" \
  15.134 -		-t memused:memfree:memshared:membuffers:memcache:swapused:swapfree \
  15.135 -		"N:$memused:$memfree:$memshared:$membuffers:$memcache:$swapused:$swapfree"
  15.136 -}
  15.137 -
  15.138 -getmax() {
  15.139 -	rrdtool fetch $rrdlog/$1.rrd AVERAGE | awk '\
  15.140 -BEGIN {max=0} \
  15.141 -/^[0-9]/ { \
  15.142 -   if ($2 != "nan" && $2 > max) max=$2; \
  15.143 -   if ($3 != "nan" && $3 > max) max=$3; \
  15.144 -} \
  15.145 -END { print max }' | sed 's/,/./'
  15.146 -}
  15.147 -
  15.148 -updatediskgraph() {
  15.149 -	period=$1
  15.150 -	[ "$period" == "day" ] && maxdisk="$(getmax disk)"
  15.151 -	info=""
  15.152 -	[ -r $2 ] &&
  15.153 -	info="[ $(fdisk -l | grep "^Disk $2:" | \
  15.154 -		  sed "s|Disk $2: \(.*\), .*|\1|") ]"
  15.155 -	rrdtool graph "$rrdgraph/disk-$period.png" --start -1$period \
  15.156 -		$rrdgraphargs -t "disk access per $period $info" \
  15.157 -		--logarithmic --lower-limit 1 -v "Sectors/second" --units=si \
  15.158 -		DEF:read=$rrdlog/disk.rrd:readsect:AVERAGE \
  15.159 -		DEF:write=$rrdlog/disk.rrd:writesect:AVERAGE \
  15.160 -		DEF:req=$rrdlog/iodisk.rrd:req:AVERAGE \
  15.161 -		DEF:done=$rrdlog/iodisk.rrd:done:AVERAGE \
  15.162 -		DEF:err=$rrdlog/iodisk.rrd:err:AVERAGE \
  15.163 -		"CDEF:readpct=100,read,$maxdisk,/,*" \
  15.164 -		"CDEF:writepct=100,write,$maxdisk,/,*" \
  15.165 -		"CDEF:errpct=100,err,req,/,*" \
  15.166 -		"CDEF:donepct=100,done,req,/,*" \
  15.167 -		'AREA:readpct#0000FF:sectors read from disk' \
  15.168 -		'STACK:writepct#00FF00:sectors written to disk' \
  15.169 -		'LINE2:donepct#FFFF00:I/O complete' \
  15.170 -		'LINE2:errpct#FF0000:I/O error\j'
  15.171 -}
  15.172 -
  15.173 -updatediskdata() {
  15.174 -	dev=$1
  15.175 -	[ -e "$rrdlog/disk.rrd" ] ||
  15.176 -		rrdtool create "$rrdlog/disk.rrd" --step=300 \
  15.177 -			DS:readsect:COUNTER:600:0:5000000000 \
  15.178 -			DS:writesect:COUNTER:600:0:5000000000 \
  15.179 -			RRA:AVERAGE:0.5:1:576  RRA:AVERAGE:0.5:6:672 \
  15.180 -			RRA:AVERAGE:0.5:24:732 RRA:AVERAGE:0.5:144:1460
  15.181 -	[ -e "$rrdlog/iodisk.rrd" ] ||
  15.182 -		rrdtool create "$rrdlog/iodisk.rrd" --step=300 \
  15.183 -			DS:done:GAUGE:600:0:U  DS:err:GAUGE:600:0:U \
  15.184 -			DS:req:GAUGE:600:0:U \
  15.185 -			RRA:AVERAGE:0.5:1:576  RRA:AVERAGE:0.5:6:672 \
  15.186 -			RRA:AVERAGE:0.5:24:732 RRA:AVERAGE:0.5:144:1460
  15.187 -
  15.188 -	while read major minor name readreq readsect writereq writesect misc; do
  15.189 -		[ $major = $(( 0x$(stat -c %t $dev) )) ] || continue
  15.190 -		[ $minor = $(( 0x$(stat -c %T $dev) )) ] || continue
  15.191 -		rrdtool update "$rrdlog/disk.rrd" -t readsect:writesect \
  15.192 -			N:$readsect:$writesect
  15.193 -	done < /proc/diskstats
  15.194 -	dir=/sys/block/${dev#/dev/}/device
  15.195 -	done=$(printf "%d\n" $(cat $dir/iodone_cnt 2> /dev/null) )
  15.196 -	err=$(printf "%d\n" $(cat $dir/ioerr_cnt 2> /dev/null) )
  15.197 -	req=$(printf "%d\n" $(cat $dir/iorequest_cnt 2> /dev/null) )
  15.198 -	rrdtool update "$rrdlog/iodisk.rrd" -t done:err:req N:$done:$err:$req
  15.199 -}
  15.200 -
  15.201 -updateifgraph() {
  15.202 -	interface=$1
  15.203 -	period=$2
  15.204 -	[ "$period" == "day" ] && maxif="$(getmax $interface)"
  15.205 -	rrdtool graph "$rrdgraph/$interface-$period.png" --start -1$period \
  15.206 -		$rrdgraphargs -t "traffic on $interface graph per $period" \
  15.207 -		--logarithmic -A -v "Bytes/second" --units=si \
  15.208 -		DEF:incoming=$rrdlog/$interface.rrd:incoming:AVERAGE \
  15.209 -		DEF:outgoing=$rrdlog/$interface.rrd:outgoing:AVERAGE \
  15.210 -		"CDEF:inpct=100,incoming,$maxif,/,*" \
  15.211 -		"CDEF:outpct=100,outgoing,$maxif,/,*" \
  15.212 -		'AREA:inpct#00FF00:incoming traffic' \
  15.213 -		'LINE1:outpct#0000FF:outgoing traffic\j'
  15.214 -}
  15.215 -
  15.216 -netframes() {
  15.217 -ifconfig $1 | grep "$2 packets" | sed -re "s/.*$3:([0-9]+).*/\1/g"
  15.218 -}
  15.219 -
  15.220 -netstats() {
  15.221 -ifconfig $1 | grep bytes | sed -re "s/.*$2 bytes:([0-9]+).*/\1/g"
  15.222 -}
  15.223 -
  15.224 -updateifdata() {
  15.225 -	interface=$1
  15.226 -	[ -e "$rrdlog/$interface.rrd" ] ||
  15.227 -		rrdtool create "$rrdlog/$interface.rrd" --step=300 \
  15.228 -			DS:incoming:COUNTER:600:0:U \
  15.229 -			DS:outgoing:COUNTER:600:0:U \
  15.230 -			RRA:AVERAGE:0.5:1:576  RRA:AVERAGE:0.5:6:672 \
  15.231 -			RRA:AVERAGE:0.5:24:732 RRA:AVERAGE:0.5:144:1460
  15.232 -	[ -e "$rrdlog/packets-$interface.rrd" ] ||
  15.233 -		rrdtool create "$rrdlog/packets-$interface.rrd" --step=300 \
  15.234 -			DS:in:COUNTER:600:0:U      DS:out:COUNTER:600:0:U \
  15.235 -			DS:inerr:COUNTER:600:0:U   DS:outerr:COUNTER:600:0:U \
  15.236 -			DS:indrop:COUNTER:600:0:U  DS:outdrop:COUNTER:600:0:U \
  15.237 -			DS:inov:COUNTER:600:0:U    DS:outov:COUNTER:600:0:U \
  15.238 -			DS:frame:COUNTER:600:0:U   DS:carrier:COUNTER:600:0:U \
  15.239 -			RRA:AVERAGE:0.5:1:576  RRA:AVERAGE:0.5:6:672 \
  15.240 -			RRA:AVERAGE:0.5:24:732 RRA:AVERAGE:0.5:144:1460
  15.241 -	rx=$(netstats $interface RX)
  15.242 -	tx=$(netstats $interface TX)
  15.243 -	rrdtool update "$rrdlog/$interface.rrd" -t incoming:outgoing \
  15.244 -		N:${rx:-U}:${tx:-U}
  15.245 -	rx=$(netframes $interface RX packets)
  15.246 -	tx=$(netframes $interface TX packets)
  15.247 -	rxerr=$(netframes $interface RX errors)
  15.248 -	txerr=$(netframes $interface TX errors)
  15.249 -	rxdrop=$(netframes $interface RX dropped)
  15.250 -	txdrop=$(netframes $interface TX dropped)
  15.251 -	rxov=$(netframes $interface RX overruns)
  15.252 -	txov=$(netframes $interface TX overruns)
  15.253 -	frame=$(netframes $interface RX frame)
  15.254 -	carrier=$(netframes $interface TX carrier)
  15.255 -	rrdtool update "$rrdlog/packets-$interface.rrd" \
  15.256 -		-t in:out:inerr:outerr:indrop:outdrop:inov:outov:frame:carrier \
  15.257 -		N:${rx:-U}:${tx:-U}:${rxerr:-U}:${txerr:-U}:${rxdrop:-U}:${txdrop:-U}:${rxov:-U}:${txov:-U}:${frame:-U}:${carrier:-U}
  15.258 -}
  15.259 -
  15.260 -getdisk()
  15.261 -{
  15.262 -	local d
  15.263 -	local i
  15.264 -	d=$(stat -c %D $1)
  15.265 -	for i in /dev/* ; do 
  15.266 -		[ $(stat -c "%02t%02T" $i) == $d ] || continue
  15.267 -		echo $i
  15.268 -		break
  15.269 -	done
  15.270 -}
  15.271 -
  15.272 -###
  15.273 -### System graphs
  15.274 -###
  15.275 -
  15.276 -updatecpudata
  15.277 -updatecpugraph day
  15.278 -updatecpugraph week
  15.279 -updatecpugraph month
  15.280 -updatecpugraph year
  15.281 -
  15.282 -updatememdata
  15.283 -updatememgraph day
  15.284 -updatememgraph week
  15.285 -updatememgraph month
  15.286 -updatememgraph year
  15.287 -
  15.288 -if [ -e /proc/diskstats ]; then
  15.289 -	disk=$(getdisk $0)
  15.290 -	updatediskdata $disk
  15.291 -	updatediskgraph day ${disk:0:8}
  15.292 -	updatediskgraph week ${disk:0:8}
  15.293 -	updatediskgraph month ${disk:0:8}
  15.294 -	updatediskgraph year ${disk:0:8}
  15.295 -fi
  15.296 -
  15.297 -iface=$(/sbin/route -n | awk '{ if (/^0.0.0.0/) print $8 }')
  15.298 -updateifdata $iface
  15.299 -updateifgraph $iface day
  15.300 -updateifgraph $iface week
  15.301 -updateifgraph $iface month
  15.302 -updateifgraph $iface year
    16.1 --- a/mirror-tools/stuff/usr/share/slitaz-live/INSTALL	Fri Feb 25 00:13:56 2011 +0000
    16.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.3 @@ -1,14 +0,0 @@
    16.4 -#!/bin/sh
    16.5 -DIR=$(dirname $0)
    16.6 -MOUNTS="/proc /sys /dev/pts /dev/shm"
    16.7 -cp /etc/resolv.conf etc
    16.8 -for i in $MOUNTS; do
    16.9 -  [ -d $i ] && mount --bind $i $DIR/$i
   16.10 -done
   16.11 -#mount --bind /var/tmp tmp
   16.12 -mount --bind /tmp tmp || mount -t tmpfs tmpfs tmp
   16.13 -SHELL=/bin/ash chroot $DIR /bin/ash -
   16.14 -umount tmp
   16.15 -for i in $MOUNTS; do
   16.16 -  umount $DIR/$i
   16.17 -done
    17.1 Binary file mirror-tools/stuff/var/www/mirror-info/favicon.ico has changed
    18.1 --- a/mirror-tools/stuff/var/www/mirror-info/graphs.php	Fri Feb 25 00:13:56 2011 +0000
    18.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.3 @@ -1,132 +0,0 @@
    18.4 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    18.5 -    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    18.6 -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    18.7 -<head>
    18.8 -	<title>Mirror RRD stats</title>
    18.9 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   18.10 -	<meta name="description" content="slitaz mirror rrdtool graphs" />
   18.11 -	<meta name="robots" content="noindex" />
   18.12 -	<meta name="author" content="SliTaz Contributors" />
   18.13 -	<link rel="shortcut icon" href="favicon.ico" />
   18.14 -	<link rel="stylesheet" type="text/css" href="slitaz.css" />
   18.15 -</head>
   18.16 -
   18.17 -<body bgcolor="#ffffff">
   18.18 -<!-- Header -->
   18.19 -<div id="header">
   18.20 -    <a name="top"></a>
   18.21 -	<a href="http://mirror.slitaz.org/"><img id="logo"
   18.22 -	src="pics/website/logo.png" title="mirror.slitaz.org" alt="mirror.slitaz.org"
   18.23 -	style="border: 0px solid ; width: 200px; height: 74px;" /></a>
   18.24 -	<p id="titre">#!/project/mirror</p>
   18.25 -</div>
   18.26 -<!-- Navigation menu -->
   18.27 -<div id="nav">
   18.28 -
   18.29 -<div class="nav_box">
   18.30 -<h4>About Mirror</h4>
   18.31 -<p>
   18.32 -This is the SliTaz GNU/Linux main mirror. The server runs naturally SliTaz 
   18.33 -(stable) in an lguest virtual machine provided by 
   18.34 -<a href="http://www.ads-lu.com/">ADS</a>.
   18.35 -</p>
   18.36 -
   18.37 -</div>
   18.38 -
   18.39 -<div class="nav_box">
   18.40 -<h4>SliTaz Network</h4>
   18.41 -<ul>
   18.42 -	<li><a href="http://www.slitaz.org/">Main Website</a></li>
   18.43 -	<li><a href="http://forum.slitaz.org/">Community Forum</a></li>
   18.44 -	<li><a href="http://community.slitaz.org/">Community Platform</a></li>
   18.45 -	<li><a href="http://labs.slitaz.org/">SliTaz Laboratories</a></li>
   18.46 -	<li><a href="http://pkgs.slitaz.org/">Packages Database</a></li>
   18.47 -	<li><a href="http://boot.slitaz.org/">SliTaz Web Boot</a></li>
   18.48 -	<li><a href="http://tank.slitaz.org/">SliTaz main server</a></li>
   18.49 -	<li><a href="http://twitter.com/slitaz">SliTaz on Twitter</a></li>
   18.50 -	<li><a href="http://www.distrowatch.com/slitaz">SliTaz on DistroWatch</a></li>
   18.51 -</ul>
   18.52 -</div>
   18.53 -
   18.54 -<!-- End navigation menu -->
   18.55 -</div>
   18.56 -
   18.57 -<!-- Content top. -->
   18.58 -<div id="content_top">
   18.59 -<div class="top_left"></div>
   18.60 -<div class="top_right"></div>
   18.61 -</div>
   18.62 -
   18.63 -<!-- Content -->
   18.64 -<div id="content">
   18.65 -
   18.66 -<h1><font color="#3E1220">Mirror RRD stats</font></h1>
   18.67 -<h2><font color="#DF8F06">/usr/bin/rrdtool</font></h2>
   18.68 -
   18.69 -<?php
   18.70 -
   18.71 -$myurl="http://".$_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME'];
   18.72 -
   18.73 -function one_graphic($img,$name)
   18.74 -{
   18.75 -	echo '<img src="pics/rrd/'.$img.'" title="'.
   18.76 -		$name.'" alt="'.$name.'" />'."\n";
   18.77 -}
   18.78 -
   18.79 -function graphic($res, $img='')
   18.80 -{
   18.81 -	global $myurl;
   18.82 -	if (!$img) $img=$res;
   18.83 -	echo "<a name=\"".$res."\"></a>";
   18.84 -	echo "<a href=\"".$myurl."?stats=".$res."#".$res."\">\n";
   18.85 -	one_graphic($img."-day.png",$res." daily");
   18.86 -	echo "</a>";
   18.87 -	if (isset($_GET['stats']) && $_GET['stats'] == $res) {
   18.88 -		one_graphic($img."-week.png",$res." weekly");
   18.89 -		one_graphic($img."-month.png",$res." monthly");
   18.90 -		one_graphic($img."-year.png",$res." yearly");
   18.91 -	}
   18.92 -}
   18.93 -
   18.94 -echo "<h3>CPU</h3>\n";
   18.95 -graphic("cpu");
   18.96 -echo "<h3>Memory</h3>\n";
   18.97 -graphic("memory");
   18.98 -echo "<h3>Disk</h3>\n";
   18.99 -graphic("disk");
  18.100 -echo "<h3>Network</h3>\n";
  18.101 -graphic("net","eth0");
  18.102 -
  18.103 -?>
  18.104 -
  18.105 -<!-- End of content with round corner -->
  18.106 -</div>
  18.107 -<div id="content_bottom">
  18.108 -<div class="bottom_left"></div>
  18.109 -<div class="bottom_right"></div>
  18.110 -</div>
  18.111 -
  18.112 -<!-- Start of footer and copy notice -->
  18.113 -<div id="copy">
  18.114 -<p>                                                                          
  18.115 -Last update : <?php echo date('r'); ?>
  18.116 -</p> 
  18.117 -<p>
  18.118 -Copyright &copy; <?php echo date('Y'); ?> <a href="http://www.slitaz.org/">SliTaz</a> -
  18.119 -<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
  18.120 -</p>
  18.121 -<!-- End of copy -->
  18.122 -</div>
  18.123 -
  18.124 -<!-- Bottom and logo's -->
  18.125 -<div id="bottom">
  18.126 -<p>
  18.127 -<a href="http://validator.w3.org/check?uri=referer"><img
  18.128 -   src="pics/website/xhtml10.png" alt="Valid XHTML 1.0"
  18.129 -   title="Code validé XHTML 1.0"
  18.130 -   style="width: 80px; height: 15px;" /></a>
  18.131 -</p>
  18.132 -</div>
  18.133 -
  18.134 -</body>
  18.135 -</html>
    19.1 --- a/mirror-tools/stuff/var/www/mirror-info/index.php	Fri Feb 25 00:13:56 2011 +0000
    19.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.3 @@ -1,287 +0,0 @@
    19.4 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    19.5 -    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    19.6 -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    19.7 -<head>
    19.8 -	<title>SliTaz Mirror</title>
    19.9 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   19.10 -	<meta name="description" content="slitaz mirror server" />
   19.11 -	<meta name="robots" content="index, nofollow" />
   19.12 -	<meta name="author" content="SliTaz Contributors" />
   19.13 -	<link rel="shortcut icon" href="favicon.ico" />
   19.14 -	<link rel="stylesheet" type="text/css" href="slitaz.css" />
   19.15 -</head>
   19.16 -
   19.17 -<body bgcolor="#ffffff">
   19.18 -<!-- Header -->
   19.19 -<div id="header">
   19.20 -    <a name="top"></a>
   19.21 -	<a href="http://mirror-info.slitaz.org/"><img id="logo"
   19.22 -	src="pics/website/logo.png" title="mirror-info.slitaz.org" alt="mirror-info.slitaz.org"
   19.23 -	style="border: 0px solid ; width: 200px; height: 74px;" /></a>
   19.24 -	<p id="titre">#!/project/<?php echo preg_replace('/(\w+).*/i','$1',$_SERVER["HTTP_HOST"]); ?></p>
   19.25 -</div>
   19.26 -
   19.27 -<!-- Navigation menu -->
   19.28 -<div id="nav">
   19.29 -
   19.30 -<div class="nav_box">
   19.31 -<h4>About Mirror</h4>
   19.32 -<p>
   19.33 -This is the SliTaz GNU/Linux main mirror. The server runs naturally SliTaz 
   19.34 -(stable) in an lguest virtual machine provided by 
   19.35 -<a href="http://www.ads-lu.com/">Allied Data Sys. (ADS)</a>.
   19.36 -</p>
   19.37 -
   19.38 -</div>
   19.39 -
   19.40 -<div class="nav_box">
   19.41 -<h4>SliTaz Network</h4>
   19.42 -<ul>
   19.43 -	<li><a href="http://www.slitaz.org/">Main Website</a></li>
   19.44 -	<li><a href="http://doc.slitaz.org/">Documentation</a></li>
   19.45 -	<li><a href="http://forum.slitaz.org/">Community Forum</a></li>
   19.46 -	<li><a href="http://scn.slitaz.org/">Community Platform</a></li>
   19.47 -	<li><a href="http://labs.slitaz.org/">SliTaz Laboratories</a></li>
   19.48 -	<li><a href="http://pkgs.slitaz.org/">Packages Database</a></li>
   19.49 -	<li><a href="http://boot.slitaz.org/">SliTaz Web Boot</a></li>
   19.50 -	<li><a href="http://tank.slitaz.org/">SliTaz main server</a></li>
   19.51 -	<li><a href="http://bb.slitaz.org/">SliTaz Build Bot</a></li>
   19.52 -	<li><a href="http://hg.slitaz.org/">SliTaz Repositories</a></li>
   19.53 -	<li><a href="http://twitter.com/slitaz">SliTaz on Twitter</a></li>
   19.54 -	<li><a href="http://www.distrowatch.com/slitaz">SliTaz on DistroWatch</a></li>
   19.55 -</ul>
   19.56 -</div>
   19.57 -
   19.58 -<!-- End navigation menu -->
   19.59 -</div>
   19.60 -
   19.61 -<!-- Content top. -->
   19.62 -<div id="content_top">
   19.63 -<div class="top_left"></div>
   19.64 -<div class="top_right"></div>
   19.65 -</div>
   19.66 -
   19.67 -<!-- Content -->
   19.68 -<div id="content">
   19.69 -
   19.70 -<h1><font color="#3E1220">Server</font></h1>
   19.71 -<h2><font color="#DF8F06">Codename:
   19.72 -<?php echo preg_replace('/(\w+).*/i','$1',$_SERVER["HTTP_HOST"]); ?></font></h2>
   19.73 -
   19.74 -<p>
   19.75 -Mirror CPU is a <?php system("sed -e '/^model name/!d;s/.*Intel(R) //;" .         
   19.76 -"s/@//;s/(.*)//;s/CPU //;s/.*AMD //;s/.*: //;s/Processor //' </proc/cpuinfo |" .
   19.77 -" awk '{ s=$0; n++ } END { if (n == 2) printf \"dual \";" .
   19.78 -"if (n == 4) printf \"quad \"; print s }' ")?> -
   19.79 -<?php system("free | awk '/Mem:/ { x=2*$2-1; while (x >= 1024) { x /= 1024; ".
   19.80 -"n++ }; y=1; while (x > 2) { x /= 2; y *= 2}; ".
   19.81 -"printf \"%d%cB RAM\",y,substr(\"MG\",n,1) }' ")?> -
   19.82 -Located in France next to Roubaix. This page has real time statistics 
   19.83 -provided by PHP <code>system()</code>. Mirror is also monitored by RRDtool 
   19.84 -which provides <a href="graphs.php">graphical stats</a>.
   19.85 -</p>
   19.86 -
   19.87 -<h3><a href="graphs.php">
   19.88 -	<img title="Mirror RRDtool graphs" src="pics/website/monitor.png" alt="graphs" />
   19.89 -    </a>System stats</h3>
   19.90 -
   19.91 -<h4>Uptime</h4>
   19.92 -
   19.93 -<pre class="package">
   19.94 -<?php
   19.95 -system("uptime | sed 's/^\s*//'");
   19.96 -?>
   19.97 -</pre>
   19.98 -
   19.99 -<h4>Disk usage</h4>
  19.100 -<pre class="package">
  19.101 -<?php
  19.102 -system("df -h | sed '/^rootfs/d' | grep  '\(^/dev\|Filesystem\)'");
  19.103 -?>
  19.104 -</pre>
  19.105 -
  19.106 -<h4>Network</h4>
  19.107 -<pre class="package">
  19.108 -<?php
  19.109 -system("ifconfig eth0 | awk '{ if (/X packet/ || /X byte/) print }' | sed 's/^\s*//'");
  19.110 -?>
  19.111 -</pre>
  19.112 -
  19.113 -<?php if (isset($_GET["all"])) { ?>
  19.114 -<h4>Logins</h4>
  19.115 -<pre class="package">
  19.116 -<?php
  19.117 -system("last");
  19.118 -?>
  19.119 -</pre>
  19.120 -
  19.121 -<h4>Processes</h4>
  19.122 -<pre class="package">
  19.123 -<?php
  19.124 -system("top -n1 -b");
  19.125 -?>
  19.126 -</pre>
  19.127 -<?php } ?>
  19.128 -
  19.129 -<a name="vhosts"></a>
  19.130 -<h3><a href="http://mirror.slitaz.org/awstats.pl?config=info.mirror.slitaz.org" target="_blank">
  19.131 -	<img title="Mirror Virtual hosts" alt="vhosts"
  19.132 -    src="pics/website/vhosts.png" /></a>Virtual hosts</h3>
  19.133 -
  19.134 -<ul>
  19.135 -	<li><a href="http://mirror.slitaz.org/">mirror.slitaz.org</a> - SliTaz Mirror.
  19.136 -	(<a href="http://mirror.slitaz.org/stats" target="_blank">stats</a>)</li>
  19.137 -	<li><a href="http://scn.slitaz.org/">scn.slitaz.org</a> - SliTaz Community Network.
  19.138 -	(<a href="http://mirror.slitaz.org/awstats.pl?config=scn.slitaz.org" target="_blank">stats</a>)</li>
  19.139 -	<li><a href="http://pizza.slitaz.org/">pizza.slitaz.org</a> - SliTaz Flavor builder.
  19.140 -	(<a href="http://mirror.slitaz.org/awstats.pl?config=pizza.mirror.slitaz.org" target="_blank">stats</a>)</li>
  19.141 -	<li><a href="https://ajaxterm.slitaz.org/">ajaxterm.slitaz.org</a> - Slitaz Web Console.
  19.142 -	(<a href="http://mirror.slitaz.org/awstats.pl?config=ajaxterm.slitaz.org" target="_blank">stats</a>)</li>
  19.143 -</ul>
  19.144 -
  19.145 -<a name="replicas"></a>
  19.146 -<h3><a href="http://mirror.slitaz.org/awstats.pl?config=replicas.mirror.slitaz.org" target="_blank">
  19.147 -         <img title="Tank replicas" alt="replicas"
  19.148 -    src="pics/website/vhosts.png" /></a>Tank replicas</h3>
  19.149 -
  19.150 -<ul>
  19.151 -	<li><a href="http://mirror.slitaz.org/www/">www.slitaz.org</a> - SliTaz Website.
  19.152 -	(<a href="http://www.slitaz.org/" target="_blank">main</a>)</li>
  19.153 -	<li><a href="http://mirror.slitaz.org/doc/">doc.slitaz.org</a> - Documentation.
  19.154 -	(<a href="http://doc.slitaz.org/" target="_blank">main</a>)</li>
  19.155 -	<li><a href="http://mirror.slitaz.org/pkgs/">pkgs.slitaz.org</a> - Packages Web interface.
  19.156 -	(<a href="http://pkgs.slitaz.org/" target="_blank">main</a>)</li>
  19.157 -	<li><a href="http://mirror.slitaz.org/hg/">hg.slitaz.org</a> - Mercurial repositories (read only).
  19.158 -	(<a href="http://hg.slitaz.org/" target="_blank">main</a>
  19.159 -	<a href="http://hg.tuxfamily.org/mercurialroot/slitaz/" target="_blank">tuxfamily</a>)</li>
  19.160 -	<li><a href="http://mirror.slitaz.org/webboot/">boot.slitaz.org</a> - gPXE Web boot.
  19.161 -	(<a href="http://boot.slitaz.org/" target="_blank">main</a>)</li>
  19.162 -</ul>
  19.163 -
  19.164 -<a name="mirrors"></a>
  19.165 -<h3><a href="http://mirror.slitaz.org/awstats.pl?config=rsync" target="_blank">
  19.166 -	<img title="Secondary mirrors" src="pics/website/vhosts.png" 
  19.167 -	 alt="mirrors" /></a>Mirrors</h3>
  19.168 -	Most mirrors are updated using the url: <b>rsync://mirror.slitaz.org/slitaz/</b>
  19.169 -	(<a href="http://mirror.slitaz.org/awstats.pl?config=rsync">stats</a>)
  19.170 -<ul>
  19.171 -	<li><a href="http://en.utrace.de/?query=mirror.switch.ch">
  19.172 -		<img title="map" src="pics/website/ch.png" alt="map" /></a>
  19.173 -		<a href="http://mirror.switch.ch/ftp/mirror/slitaz/">
  19.174 -		http://mirror.switch.ch/ftp/mirror/slitaz/</a> or
  19.175 -		<a href="ftp://mirror.switch.ch/mirror/slitaz/">ftp</a></li>
  19.176 -	<li><a href="http://en.utrace.de/?query=www.gtlib.gatech.edu">
  19.177 -		<img title="map" src="pics/website/us.png" alt="map" /></a>
  19.178 -		<a href="http://www.gtlib.gatech.edu/pub/slitaz/">
  19.179 -		http://www.gtlib.gatech.edu/pub/slitaz/</a> or
  19.180 -		<a href="ftp://ftp.gtlib.gatech.edu/pub/slitaz/">ftp</a> or
  19.181 -		<a href="rsync://www.gtlib.gatech.edu/slitaz/">rsync</a></li>
  19.182 -	<li><a href="http://en.utrace.de/?query=download.tuxfamily.org">
  19.183 -		<img title="map" src="pics/website/fr.png" alt="map" /></a>
  19.184 -		<a href="http://download.tuxfamily.org/slitaz/">
  19.185 -		http://download.tuxfamily.org/slitaz/</a> or
  19.186 -		<a href="ftp://download.tuxfamily.org/slitaz/">ftp</a> or
  19.187 -		<a href="rsync://download.tuxfamily.org/pub/slitaz/">rsync</a></li>
  19.188 -	<!-- li><a href="http://www.linuxembarque.com/slitaz/mirror/">
  19.189 -		<img title="map" src="pics/website/fr.png" alt="map" /></a>
  19.190 -		<a href="http://www.linuxembarque.com/slitaz/mirror/">
  19.191 -		http://www.linuxembarque.com/slitaz/mirror/</a></li -->
  19.192 -	<li><a href="http://en.utrace.de/?query=mirror.lupaworld.com">
  19.193 -		<img title="map" src="pics/website/cn.png" alt="map" /></a>
  19.194 -		<a href="http://mirror.lupaworld.com/slitaz/">
  19.195 -		http://mirror.lupaworld.com/slitaz/</a></li>
  19.196 -	<li><a href="http://en.utrace.de/?query=slitaz.c3sl.ufpr.br">
  19.197 -		<img title="map" src="pics/website/br.png" alt="map" /></a>
  19.198 -		<a href="http://slitaz.c3sl.ufpr.br/">
  19.199 -		http://slitaz.c3sl.ufpr.br/</a> or
  19.200 -		<a href="ftp://slitaz.c3sl.ufpr.br/slitaz/">ftp</a> or
  19.201 -		<a href="rsync://slitaz.c3sl.ufpr.br/slitaz/">rsync</a></li>
  19.202 -	<li><a href="http://en.utrace.de/?query=slitaz.mirror.garr.it">
  19.203 -		<img title="map" src="pics/website/it.png" alt="map" /></a>
  19.204 -		<a href="http://slitaz.mirror.garr.it/mirrors/slitaz/">
  19.205 -		http://slitaz.mirror.garr.it/mirrors/slitaz/</a> or
  19.206 -		<a href="ftp://slitaz.mirror.garr.it/mirrors/slitaz/">ftp</a> or
  19.207 -		<a href="rsync://slitaz.mirror.garr.it/mirrors/slitaz/">rsync</a></li>
  19.208 -	<!-- li><a href="http://mirror.drustvo-dns.si/slitaz/">
  19.209 -		http://mirror.drustvo-dns.si/slitaz/</a></li -->
  19.210 -	<li><a href="http://en.utrace.de/?query=ftp.pina.si">
  19.211 -		<img title="map" src="pics/website/si.png" alt="map" /></a>
  19.212 -		<a href="ftp://ftp.pina.si/slitaz/">
  19.213 -		ftp://ftp.pina.si/slitaz/</a></li>
  19.214 -	<li><a href="http://en.utrace.de/?query=distro.ibiblio.org">
  19.215 -		<img title="map" src="pics/website/us.png" alt="map" /></a>
  19.216 -		<a href="http://distro.ibiblio.org/pub/linux/distributions/slitaz/">
  19.217 -		http://distro.ibiblio.org/pub/linux/distributions/slitaz/</a> or
  19.218 -		<a href="ftp://distro.ibiblio.org/pub/linux/distributions/slitaz/">ftp</a></li>
  19.219 -	<li><a href="http://en.utrace.de/?query=ftp.vim.org">
  19.220 -		<img title="map" src="pics/website/nl.png" alt="map" /></a>
  19.221 -		<a href="http://ftp.vim.org/ftp/os/Linux/distr/slitaz/">
  19.222 -		http://ftp.vim.org/ftp/os/Linux/distr/slitaz/</a> or
  19.223 -		<a href="ftp://ftp.vim.org/mirror/os/Linux/distr/slitaz/">
  19.224 -		ftp</a></li>
  19.225 -	<li><a href="http://en.utrace.de/?query=ftp.nedit.org">
  19.226 -		<img title="map" src="pics/website/nl.png" alt="map" /></a>
  19.227 -		<a href="http://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/">
  19.228 -		http://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/</a> or
  19.229 -		<a href="ftp://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/">
  19.230 -		ftp</a></li>
  19.231 -	<li><a href="http://en.utrace.de/?query=ftp.ch.xemacs.org">
  19.232 -		<img title="map" src="pics/website/ch.png" alt="map" /></a>
  19.233 -		<a href="http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/" />
  19.234 -		http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/</a> or
  19.235 -		<a href="ftp://ftp.ch.xemacs.org//pool/2/mirror/slitaz/" />
  19.236 -		ftp</a></li>
  19.237 -</ul>
  19.238 -
  19.239 -<a name="builds"></a>
  19.240 -<h3><img title="Daily builds" src="pics/website/monitor.png" alt="builds" />
  19.241 -    Daily builds</h3>
  19.242 -
  19.243 -<?php
  19.244 -function display_log($file,$anchor,$url)
  19.245 -{
  19.246 -echo '<a name="'.$anchor.'"></a>';
  19.247 -echo "<a href=\"$url\">";
  19.248 -system("stat -c '<h4>%y %n</h4>' ".$file." | sed -e 's/.000000000//' -e 's|/var/log/\(.*\).log|\\1.iso|'");
  19.249 -echo "</a>";
  19.250 -echo "<pre>";
  19.251 -system("cat ".$file." | sed -e 's/.\[[0-9][^mG]*.//g' | awk '".
  19.252 -'{ if (/\[/) { n=index($0,"["); printf("%s%s%s\n",substr($0,1,n-1),'.
  19.253 -'substr("\t\t\t\t\t\t\t",1,9-(n/8)),substr($0,n)); } else print }'."'");
  19.254 -echo "</pre>";
  19.255 -}
  19.256 -
  19.257 -display_log("/var/log/packages-stable.log", "buildstable", "/iso/stable/packages-3.0.iso");
  19.258 -display_log("/var/log/packages-cooking.log","buildcooking","/iso/cooking/packages-cooking.iso");
  19.259 -?>
  19.260 -<!-- End of content with round corner -->
  19.261 -</div>
  19.262 -<div id="content_bottom">
  19.263 -<div class="bottom_left"></div>
  19.264 -<div class="bottom_right"></div>
  19.265 -</div>
  19.266 -
  19.267 -<!-- Start of footer and copy notice -->
  19.268 -<div id="copy">
  19.269 -<p>                                                                          
  19.270 -Last update : <?php echo date('r'); ?>
  19.271 -</p> 
  19.272 -<p>
  19.273 -Copyright &copy; <?php echo date('Y'); ?> <a href="http://www.slitaz.org/">SliTaz</a> -
  19.274 -<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
  19.275 -</p>
  19.276 -<!-- End of copy -->
  19.277 -</div>
  19.278 -
  19.279 -<!-- Bottom and logo's -->
  19.280 -<div id="bottom">
  19.281 -<p>
  19.282 -<a href="http://validator.w3.org/check?uri=referer"><img
  19.283 -   src="pics/website/xhtml10.png" alt="Valid XHTML 1.0"
  19.284 -   title="Code validé XHTML 1.0"
  19.285 -   style="width: 80px; height: 15px;" /></a>
  19.286 -</p>
  19.287 -</div>
  19.288 -
  19.289 -</body>
  19.290 -</html>
    20.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/desktop.png has changed
    21.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-day.png	Fri Feb 25 00:13:56 2011 +0000
    21.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.3 @@ -1,1 +0,0 @@
    21.4 -/home/bellard/Public/pics/rrd/cpu-day.png
    21.5 \ No newline at end of file
    22.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-month.png	Fri Feb 25 00:13:56 2011 +0000
    22.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.3 @@ -1,1 +0,0 @@
    22.4 -/home/bellard/Public/pics/rrd/cpu-month.png
    22.5 \ No newline at end of file
    23.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-week.png	Fri Feb 25 00:13:56 2011 +0000
    23.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.3 @@ -1,1 +0,0 @@
    23.4 -/home/bellard/Public/pics/rrd/cpu-week.png
    23.5 \ No newline at end of file
    24.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/cpu-year.png	Fri Feb 25 00:13:56 2011 +0000
    24.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.3 @@ -1,1 +0,0 @@
    24.4 -/home/bellard/Public/pics/rrd/cpu-year.png
    24.5 \ No newline at end of file
    25.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-day.png	Fri Feb 25 00:13:56 2011 +0000
    25.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    25.3 @@ -1,1 +0,0 @@
    25.4 -/home/bellard/Public/pics/rrd/disk-day.png
    25.5 \ No newline at end of file
    26.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-month.png	Fri Feb 25 00:13:56 2011 +0000
    26.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.3 @@ -1,1 +0,0 @@
    26.4 -/home/bellard/Public/pics/rrd/disk-month.png
    26.5 \ No newline at end of file
    27.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-week.png	Fri Feb 25 00:13:56 2011 +0000
    27.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    27.3 @@ -1,1 +0,0 @@
    27.4 -/home/bellard/Public/pics/rrd/disk-week.png
    27.5 \ No newline at end of file
    28.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/disk-year.png	Fri Feb 25 00:13:56 2011 +0000
    28.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    28.3 @@ -1,1 +0,0 @@
    28.4 -/home/bellard/Public/pics/rrd/disk-year.png
    28.5 \ No newline at end of file
    29.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-day.png	Fri Feb 25 00:13:56 2011 +0000
    29.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    29.3 @@ -1,1 +0,0 @@
    29.4 -/home/bellard/Public/pics/rrd/eth0-day.png
    29.5 \ No newline at end of file
    30.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-month.png	Fri Feb 25 00:13:56 2011 +0000
    30.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    30.3 @@ -1,1 +0,0 @@
    30.4 -/home/bellard/Public/pics/rrd/eth0-month.png
    30.5 \ No newline at end of file
    31.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-week.png	Fri Feb 25 00:13:56 2011 +0000
    31.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    31.3 @@ -1,1 +0,0 @@
    31.4 -/home/bellard/Public/pics/rrd/eth0-week.png
    31.5 \ No newline at end of file
    32.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/eth0-year.png	Fri Feb 25 00:13:56 2011 +0000
    32.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.3 @@ -1,1 +0,0 @@
    32.4 -/home/bellard/Public/pics/rrd/eth0-year.png
    32.5 \ No newline at end of file
    33.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-day.png	Fri Feb 25 00:13:56 2011 +0000
    33.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    33.3 @@ -1,1 +0,0 @@
    33.4 -/home/bellard/Public/pics/rrd/memory-day.png
    33.5 \ No newline at end of file
    34.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-month.png	Fri Feb 25 00:13:56 2011 +0000
    34.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    34.3 @@ -1,1 +0,0 @@
    34.4 -/home/bellard/Public/pics/rrd/memory-month.png
    34.5 \ No newline at end of file
    35.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-week.png	Fri Feb 25 00:13:56 2011 +0000
    35.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    35.3 @@ -1,1 +0,0 @@
    35.4 -/home/bellard/Public/pics/rrd/memory-week.png
    35.5 \ No newline at end of file
    36.1 --- a/mirror-tools/stuff/var/www/mirror-info/pics/rrd/memory-year.png	Fri Feb 25 00:13:56 2011 +0000
    36.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    36.3 @@ -1,1 +0,0 @@
    36.4 -/home/bellard/Public/pics/rrd/memory-year.png
    36.5 \ No newline at end of file
    37.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/slitaz-awstats.png has changed
    38.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/slitaz.png has changed
    39.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/br.png has changed
    40.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/ch.png has changed
    41.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/cn.png has changed
    42.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/fr.png has changed
    43.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/header.png has changed
    44.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/it.png has changed
    45.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/logo.png has changed
    46.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/logo.xcf has changed
    47.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/monitor.png has changed
    48.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/nl.png has changed
    49.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/si.png has changed
    50.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/us.png has changed
    51.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/vhosts.png has changed
    52.1 Binary file mirror-tools/stuff/var/www/mirror-info/pics/website/xhtml10.png has changed
    53.1 --- a/mirror-tools/stuff/var/www/mirror-info/slitaz.css	Fri Feb 25 00:13:56 2011 +0000
    53.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    53.3 @@ -1,382 +0,0 @@
    53.4 -/*
    53.5 -	CSS style for SliTaz GNU/Linux website
    53.6 -	www.slitaz.org - (c) 2007 Pankso
    53.7 -*/
    53.8 -
    53.9 -html {
   53.10 -	height:  102%;
   53.11 -}
   53.12 -
   53.13 -body {
   53.14 -	background: #ffffff;
   53.15 -	color: black;
   53.16 -	font: 13px sans-serif, vernada, arial;
   53.17 -	margin: 0;
   53.18 -}
   53.19 -
   53.20 -/* Accessibility */
   53.21 -
   53.22 -#access {
   53.23 -	position: absolute;
   53.24 -	top: 4px;
   53.25 -	right: 4px;
   53.26 -	text-align: right;
   53.27 -	width: 100%;
   53.28 -	margin: 0;
   53.29 -	font-size: 11px;
   53.30 -	font-weight: bold;
   53.31 -}
   53.32 -
   53.33 -#access a {
   53.34 -	background: inherit;
   53.35 -	color: white;
   53.36 -	text-decoration: none;
   53.37 -}
   53.38 -
   53.39 -#access a:hover {
   53.40 -	background: inherit;
   53.41 -	color: #222222;
   53.42 -}
   53.43 -
   53.44 -/* Header and title */
   53.45 -
   53.46 -#header{
   53.47 -	background: #f0ba08 url(pics/website/header.png) repeat-x top;
   53.48 -	color: black;
   53.49 -	width: 100%;
   53.50 -	height: 50px;
   53.51 -	border-top: 1px solid black;
   53.52 -	border-bottom: 1px solid black;
   53.53 -	margin-bottom: 30px;
   53.54 -}
   53.55 -
   53.56 -#titre {
   53.57 -	position: absolute;
   53.58 -	font-size: 16px;
   53.59 -	font-weight: bolder ;
   53.60 -	margin-left: 200px;
   53.61 -	margin-top: 28px;
   53.62 -}
   53.63 -
   53.64 -#logo {
   53.65 -	position: absolute;
   53.66 -	float: left;
   53.67 -	margin-left: 16px;
   53.68 -	margin-top: 0px;
   53.69 -}
   53.70 -
   53.71 -/* Navigation */
   53.72 -
   53.73 -#nav {
   53.74 -	position: absolute;
   53.75 -	top: 76px;
   53.76 -	right: 40px;
   53.77 -	color: #555555;
   53.78 -	float: right;
   53.79 -	width: 250px;
   53.80 -	line-height: 1.5em;
   53.81 -	text-align: left;
   53.82 -	font-size: 12px;
   53.83 -}
   53.84 -
   53.85 -#nav ul {
   53.86 -	-moz-border-radius: 8px;
   53.87 -	-webkit-border-radius: 8px;
   53.88 -	list-style-type: none;
   53.89 -	margin: 10px 0;
   53.90 -	padding: 10px 24px 10px 24px;
   53.91 -	background-color: #eaeaea;
   53.92 -}
   53.93 -
   53.94 -#nav .nav_box ul {
   53.95 -	list-style-type: none;
   53.96 -	margin: 0;
   53.97 -	padding: 10px 24px 10px 0px;
   53.98 -}
   53.99 -
  53.100 -#nav li {
  53.101 -	display: inline;
  53.102 -}
  53.103 -
  53.104 -#nav h4 {
  53.105 -	font-size: 110%;
  53.106 -	color: #666666;
  53.107 -	font-weight: bold;
  53.108 -	margin: 0;
  53.109 -	padding: 0 0 1px 0;
  53.110 -	border-bottom: 1px solid #cecece;
  53.111 -}
  53.112 -
  53.113 -#nav a {
  53.114 -	color: #0F314E;
  53.115 -	background: inherit;
  53.116 -	display: block;
  53.117 -	text-decoration: none;
  53.118 -	font-weight: bold;
  53.119 -}
  53.120 -
  53.121 -#nav a:hover {
  53.122 -	color: #DF8F06;
  53.123 -	text-decoration: none;
  53.124 -	display: block;
  53.125 -}
  53.126 -
  53.127 -#nav hr {
  53.128 -	margin: 2px 0px 1px 0px;
  53.129 -	border: 0px;
  53.130 -	border-top: 1px solid #BDBDBD;
  53.131 -
  53.132 -}
  53.133 -
  53.134 -.nav_box {
  53.135 -	-moz-border-radius: 8px;
  53.136 -	-webkit-border-radius: 8px;
  53.137 -	margin: 10px 0;
  53.138 -	padding: 10px 24px 10px 24px;
  53.139 -	background-color: #eaeaea;
  53.140 -	text-align: justify;
  53.141 -}
  53.142 -
  53.143 -#nav .nav_box p {
  53.144 -	line-height: 1.3em;
  53.145 -}
  53.146 -
  53.147 -#nav .nav_box p a {
  53.148 -	display: inline;
  53.149 -	font-weight: normal;
  53.150 -	text-decoration: none;
  53.151 -}
  53.152 -
  53.153 -#nav .nav_box p a:hover {
  53.154 -	text-decoration: none;
  53.155 -	color: #DF8F06;
  53.156 -	background: inherit;
  53.157 -}
  53.158 -
  53.159 -#nav hr {
  53.160 -	height: 0px;
  53.161 -	border: 0px solid #eaeaea;
  53.162 -}
  53.163 -
  53.164 -/* Page content */
  53.165 -
  53.166 -#content, #content_bottom, #content_top {
  53.167 -	background: white;
  53.168 -	color: black;
  53.169 -	text-align: justify;
  53.170 -}
  53.171 -
  53.172 -#content {
  53.173 -	height: auto;
  53.174 -	margin: 6px 280px 0px 0px;
  53.175 -	padding: 0px 40px 60px 40px;
  53.176 -}
  53.177 -
  53.178 -#content li {
  53.179 -	line-height: 1.5em;
  53.180 -	text-align: left;
  53.181 -}
  53.182 -
  53.183 -/* Legal informations */
  53.184 -
  53.185 -#copy {
  53.186 -	font-size: 11px ;
  53.187 -	text-align: center ;
  53.188 -	background: transparent;
  53.189 -	color: #a8a8a8;
  53.190 -	padding-top: 10px;
  53.191 -}
  53.192 -
  53.193 -#copy a {
  53.194 -	background: inherit;
  53.195 -	color: #a8a8a8;
  53.196 -}
  53.197 -
  53.198 -#copy a:hover {
  53.199 -	background: inherit;
  53.200 -	color: #666666;
  53.201 -}
  53.202 -
  53.203 -/* Footer */
  53.204 -
  53.205 -#bottom {
  53.206 -	float: none;
  53.207 -	background: inherit;
  53.208 -	color: black;
  53.209 -	width: auto;
  53.210 -	clear: both;
  53.211 -	padding: 0;
  53.212 -	margin: 0;
  53.213 -	text-align: center;
  53.214 -	vertical-align: middle;
  53.215 -}
  53.216 -
  53.217 -#news li {
  53.218 -	list-style-type: square;
  53.219 -	border-bottom: 1px dotted #BEBEBE;
  53.220 -	margin-left: -25px;
  53.221 -	padding: 4px 0px 4px 0px;
  53.222 -}
  53.223 -
  53.224 -#gallery {
  53.225 -	text-align: center;
  53.226 -}
  53.227 -
  53.228 -#gallery table {
  53.229 -	margin: 30px 0px 30px 0px;
  53.230 -}
  53.231 -
  53.232 -/* Clouds */
  53.233 -
  53.234 -#cloud {
  53.235 -	padding: 20px 0px 20px 0px;
  53.236 -	line-height: 3em;
  53.237 -	text-align: center;
  53.238 -}
  53.239 -#cloud a { padding: 4px; color: #956411; }
  53.240 -#cloud a.tag1 { font-size: 0.7em; font-weight: 100; }
  53.241 -#cloud a.tag2 { font-size: 0.8em; font-weight: 200; }
  53.242 -#cloud a.tag3 { font-size: 0.9em; font-weight: 300; }
  53.243 -#cloud a.tag4 { font-size: 1.0em; font-weight: 400; }
  53.244 -#cloud a.tag5 { font-size: 1.2em; font-weight: 500; }
  53.245 -#cloud a.tag6 { font-size: 1.4em; font-weight: 600; }
  53.246 -#cloud a.tag7 { font-size: 1.6em; font-weight: 700; }
  53.247 -#cloud a.tag8 { font-size: 1.8em; font-weight: 800; }
  53.248 -#cloud a.tag9 { font-size: 2.2em; font-weight: 900; }
  53.249 -#cloud a.tag10 { font-size: 2.5em; font-weight: 900; }
  53.250 -
  53.251 -/* CSS class. */
  53.252 -
  53.253 -.infobox {
  53.254 -	margin: 10px;
  53.255 -	padding: 12px;
  53.256 -	background: #f2f2f2;
  53.257 -	border: 1px solid #eaeaea;
  53.258 -	-moz-border-radius: 8px;
  53.259 -	-webkit-border-radius: 8px;
  53.260 -}
  53.261 -
  53.262 -/* HTML styles */
  53.263 -
  53.264 -h1 {
  53.265 -	color: blue;
  53.266 -	background: inherit;
  53.267 -	text-align: left;
  53.268 -	margin: 0px 0px 10px 0px;
  53.269 -	font-size: 140%;
  53.270 -	font-weight: bold;
  53.271 -}
  53.272 -
  53.273 -h2 {
  53.274 -	color: #DF8F06;
  53.275 -	/* border-top: 1px solid #f3f3f3; */
  53.276 -	border-left: 8px solid #f3f3f3;
  53.277 -	padding: 4px 0px 4px 4px;
  53.278 -	margin: 0;
  53.279 -	font-size: 140%;
  53.280 -	font-weight: bold;
  53.281 -}
  53.282 -
  53.283 -h3 {
  53.284 -	font-weight: bold;
  53.285 -	color: #6c0023;
  53.286 -	background: inherit;
  53.287 -}
  53.288 -
  53.289 -h3 img {
  53.290 -	vertical-align: middle;
  53.291 -	padding-right: 4px;
  53.292 -}
  53.293 -
  53.294 -a {
  53.295 -	text-decoration: underline;
  53.296 -	color: #0F314E;
  53.297 -	background: inherit;
  53.298 -}
  53.299 -
  53.300 -a:hover {
  53.301 -	text-decoration: none;
  53.302 -	color: blue;
  53.303 -	background: inherit;
  53.304 -}
  53.305 -
  53.306 -code {
  53.307 -	font-size: 12px;
  53.308 -	color: #669900;
  53.309 -	background: inherit;
  53.310 -}
  53.311 -
  53.312 -tt {
  53.313 -	color: #15EE15;
  53.314 -	background: inherit;
  53.315 -}
  53.316 -
  53.317 -img {
  53.318 -	border: 0pt none;
  53.319 -}
  53.320 -
  53.321 -fieldset {
  53.322 -	background: #E2ECf6;
  53.323 -	color: black;
  53.324 -	margin-top: 25px;
  53.325 -	border: 1px solid black;
  53.326 -}
  53.327 -
  53.328 -legend {
  53.329 -	border: 1px solid black;
  53.330 -	color: #6c0023;
  53.331 -	background: #eaeaea;
  53.332 -	font-weight: bold;
  53.333 -}
  53.334 -
  53.335 -pre {
  53.336 -	padding: 5px;
  53.337 -	color: black;
  53.338 -	background: #E1E0B0;
  53.339 -}
  53.340 -
  53.341 -pre.script {
  53.342 -	padding: 10px;
  53.343 -	color: black;
  53.344 -	background: #E8E8E8;
  53.345 -	border: 1px inset #606060;
  53.346 -}
  53.347 -
  53.348 -textarea {
  53.349 -	background: #E5E5E5;
  53.350 -	margin-top: 12px;
  53.351 -}
  53.352 -
  53.353 -input[type=submit] {
  53.354 -	background: #E5E5E5;
  53.355 -	color: black;
  53.356 -	border: 1px outset #111111;
  53.357 -	font-weight: bold;
  53.358 -}
  53.359 -
  53.360 -input[type=submit]:hover {
  53.361 -	background: #F3F3F3;
  53.362 -	color: black;
  53.363 -}
  53.364 -
  53.365 -/* Packages pages */
  53.366 -
  53.367 -.pkg_nav {
  53.368 -	border-top: 1px solid black;
  53.369 -	margin-top: 10px;
  53.370 -	padding-top: 10px;
  53.371 -}
  53.372 -
  53.373 -pre.package {
  53.374 -	padding: 0px;
  53.375 -	color: black;
  53.376 -	background: white;
  53.377 -}
  53.378 -
  53.379 -p.get {
  53.380 -	text-align: center;
  53.381 -	padding: 10px;
  53.382 -	color: black;
  53.383 -	background: #F3F3F3;
  53.384 -	border: 1px solid #DEDEDE;
  53.385 -}
    54.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/favicon.ico has changed
    55.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/Directory has changed
    56.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/application_octet-stream has changed
    57.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_fd has changed
    58.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_iso has changed
    59.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_md5 has changed
    60.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_tar.gz has changed
    61.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/file_tazpkg has changed
    62.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/mime/text_plain has changed
    63.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/header-img.png has changed
    64.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/logo.png has changed
    65.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/network.png has changed
    66.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/users.png has changed
    67.1 Binary file mirror-tools/stuff/var/www/slitaz/mirror/css/pics/website/xhtml10.png has changed
    68.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/css/slitaz.css	Fri Feb 25 00:13:56 2011 +0000
    68.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    68.3 @@ -1,587 +0,0 @@
    68.4 -/*
    68.5 -	CSS style for SliTaz GNU/Linux website
    68.6 -	www.slitaz.org - (c) 2011 Pankso
    68.7 -*/
    68.8 -
    68.9 -html {
   68.10 -	min-height:  102%;
   68.11 -}
   68.12 -
   68.13 -body {
   68.14 -	background: #ffffff;
   68.15 -	color: black;
   68.16 -	font: 13px sans-serif, vernada, arial;
   68.17 -	margin: 0;
   68.18 -	border-top: 34px solid #f1f1f1;
   68.19 -}
   68.20 -
   68.21 -/* Accessibility */
   68.22 -
   68.23 -#access {
   68.24 -	position: absolute;
   68.25 -	top: 4px;
   68.26 -	right: 0px;
   68.27 -	text-align: right;
   68.28 -	width: auto;
   68.29 -	margin: 0;
   68.30 -	padding: 4px 4px 4px 20px;
   68.31 -	font-size: 11px;
   68.32 -	font-weight: bold;
   68.33 -}
   68.34 -
   68.35 -#access a {
   68.36 -	background: transparent;
   68.37 -	color: #0F314E;
   68.38 -	text-decoration: none;
   68.39 -}
   68.40 -
   68.41 -#access a:hover {
   68.42 -	background: inherit;
   68.43 -	color: #b64b22;
   68.44 -}
   68.45 -
   68.46 -#access img {
   68.47 -	vertical-align: middle;
   68.48 -}
   68.49 -
   68.50 -/* Header and title */
   68.51 -
   68.52 -#header {
   68.53 -	/*background: #f0ba08 url(pics/website/header.png) repeat-x top;*/
   68.54 -	background: #351a0a url(pics/website/header-img.png) no-repeat top right;
   68.55 -	color: black;
   68.56 -	width: 100%;
   68.57 -	height: 42px;
   68.58 -	border-top: 1px solid black;
   68.59 -	border-bottom: 1px solid #999;
   68.60 -	margin-bottom: 33px;
   68.61 -}
   68.62 -
   68.63 -#titre {
   68.64 -	position: absolute;
   68.65 -	font-size: 14px;
   68.66 -	font-weight: bolder ;
   68.67 -	left: 180px;
   68.68 -	top: 4px;
   68.69 -}
   68.70 -
   68.71 -#logo {
   68.72 -	position: absolute;
   68.73 -	float: left;
   68.74 -	left: 16px;
   68.75 -	top: -10px;
   68.76 -	width: 200px;
   68.77 -	height: 74px;
   68.78 -}
   68.79 -
   68.80 -/* Side bar Navigation */
   68.81 -
   68.82 -#nav {
   68.83 -	position: absolute;
   68.84 -	top: 102px;
   68.85 -	right: 80px;
   68.86 -	color: #555555;
   68.87 -	float: right;
   68.88 -	width: 250px;
   68.89 -	line-height: 1.5em;
   68.90 -	text-align: left;
   68.91 -	font-size: 12px;
   68.92 -}
   68.93 -
   68.94 -#nav .nav_box ul {
   68.95 -	list-style-type: none;
   68.96 -	margin: 0;
   68.97 -	padding: 10px 24px 10px 0px;
   68.98 -	background-color: inherit;
   68.99 -}
  68.100 -
  68.101 -#nav li {
  68.102 -	display: inline;
  68.103 -}
  68.104 -
  68.105 -#nav h4 {
  68.106 -	font-size: 120%;
  68.107 -	color: #666666;
  68.108 -	font-weight: bold;
  68.109 -	margin: 0;
  68.110 -	padding: 0 0 1px 0;
  68.111 -	border-bottom: 1px solid #cecece;
  68.112 -}
  68.113 -
  68.114 -#nav a {
  68.115 -	color: #0F314E;
  68.116 -	background: inherit;
  68.117 -	display: block;
  68.118 -	text-decoration: none;
  68.119 -	font-weight: bold;
  68.120 -}
  68.121 -
  68.122 -#nav a:hover {
  68.123 -	color: #b64b22;
  68.124 -	text-decoration: none;
  68.125 -	display: block;
  68.126 -}
  68.127 -
  68.128 -#nav ul {
  68.129 -	-moz-border-radius: 8px;
  68.130 -	-webkit-border-radius: 8px;
  68.131 -	border-radius: 8px;
  68.132 -	list-style-type: none;
  68.133 -	margin: 10px 0;
  68.134 -	padding: 10px 24px 10px 24px;
  68.135 -	background-color: #eaeaea;
  68.136 -}
  68.137 -
  68.138 -.nav_box {
  68.139 -	margin: 10px 0;
  68.140 -	padding: 10px 24px 10px 24px;
  68.141 -	background-color: #eaeaea;
  68.142 -	text-align: justify;
  68.143 -	-moz-border-radius: 8px;
  68.144 -	-webkit-border-radius: 8px;
  68.145 -	border-radius: 8px;
  68.146 -	-moz-box-shadow: 0 1px 3px #666;
  68.147 -	-webkit-box-shadow: 0 1px 3px #666;
  68.148 -	box-shadow: 0 1px 3px #666;
  68.149 -	/* CSS3 transition */
  68.150 -	-webkit-transition-property: background-color;
  68.151 -	-webkit-transition-duration: 2s;
  68.152 -	-moz-transition-property: background-color;
  68.153 -	-moz-transition-duration: 2s;
  68.154 -	transition-property: background-color;
  68.155 -	transition-duration: 2s;
  68.156 -}
  68.157 -
  68.158 -.nav_box:hover { background-color: #f8f8f8; }
  68.159 -
  68.160 -#nav .nav_box p {
  68.161 -	line-height: 1.3em;
  68.162 -}
  68.163 -
  68.164 -#nav .nav_box p a {
  68.165 -	display: inline;
  68.166 -	font-weight: normal;
  68.167 -	text-decoration: underline;
  68.168 -}
  68.169 -
  68.170 -#nav .nav_box p a:hover {
  68.171 -	text-decoration: none;
  68.172 -	color: blue;
  68.173 -	background: inherit;
  68.174 -}
  68.175 -
  68.176 -/* Page content */
  68.177 -
  68.178 -#content {
  68.179 -	background: white;
  68.180 -	color: black;
  68.181 -	text-align: justify;
  68.182 -	height: auto;
  68.183 -	margin: 6px 320px 0px 0px;
  68.184 -	padding: 0px 40px 60px 80px;
  68.185 -}
  68.186 -
  68.187 -#content-full {
  68.188 -	background: white;
  68.189 -	color: black;
  68.190 -	text-align: justify;
  68.191 -	height: auto;
  68.192 -	margin: 0;
  68.193 -	padding: 0px 80px 40px 80px;
  68.194 -}
  68.195 -
  68.196 -#content li, #content-full li {
  68.197 -	line-height: 1.5em;
  68.198 -	text-align: left;
  68.199 -}
  68.200 -
  68.201 -#news li {
  68.202 -	list-style-type: square;
  68.203 -	border-bottom: 1px dotted #BEBEBE;
  68.204 -	margin-left: -25px;
  68.205 -	padding: 4px 0px 4px 0px;
  68.206 -}
  68.207 -
  68.208 -#news a {
  68.209 -	text-decoration: none;
  68.210 -}
  68.211 -
  68.212 -#gallery {
  68.213 -	text-align: center;
  68.214 -}
  68.215 -
  68.216 -/* Box and block. */
  68.217 -
  68.218 -.infobox {
  68.219 -	margin: 20px 60px;
  68.220 -	padding: 12px;
  68.221 -	background: #f8f8f8;
  68.222 -}
  68.223 -
  68.224 -.infobox img { vertical-align: middle; }
  68.225 -/* .infobox:hover { background-color: #f2b21d; } */
  68.226 -.infobox:hover { background-color: #FBFBFB; }
  68.227 -
  68.228 -.block {
  68.229 -	/*padding-bottom: 35%;*/
  68.230 -	color: black;
  68.231 -	min-height: 200px;
  68.232 -	margin-bottom: 40px;
  68.233 -}
  68.234 -
  68.235 -.block ul {
  68.236 -	list-style-type: none;
  68.237 -	margin: 0;
  68.238 -	padding: 0 20px;
  68.239 -}
  68.240 -
  68.241 -.block_left {
  68.242 -	width: 46%;
  68.243 -	float: left;
  68.244 -	background-color: #eaeaea;
  68.245 -	margin: 4px 2px;
  68.246 -	padding: 0 10px 10px 10px;
  68.247 -}
  68.248 -
  68.249 -.block_right {
  68.250 -	width: 46%;
  68.251 -	float: right;
  68.252 -	background-color: #eaeaea;
  68.253 -	margin: 4px 2px;
  68.254 -	padding: 0 10px 10px 10px;
  68.255 -}
  68.256 -
  68.257 -#block_top {
  68.258 -	color: black;
  68.259 -	background-color: #eaeaea;
  68.260 -	min-height: 180px;
  68.261 -	margin-bottom: 40px;
  68.262 -	margin-right: 340px;
  68.263 -	padding: 0 10px;
  68.264 -}
  68.265 -
  68.266 -#block_nav {
  68.267 -	width: 300px;
  68.268 -	min-height: 180px;
  68.269 -	float: right;
  68.270 -	background-color: #eaeaea;
  68.271 -	margin: 0;
  68.272 -	padding: 0 10px;
  68.273 -}
  68.274 -
  68.275 -.infobox, .block_left, .block_right, #block_top, #block_nav, #footer {
  68.276 -	-moz-border-radius: 8px;
  68.277 -	-webkit-border-radius: 8px;
  68.278 -	border-radius: 8px;
  68.279 -	-moz-box-shadow: 0 1px 3px #666;
  68.280 -	-webkit-box-shadow: 0 1px 3px #666;
  68.281 -	box-shadow: 0 1px 3px #666;
  68.282 -	/* CSS3 transition */
  68.283 -	-webkit-transition-property: background-color;
  68.284 -	-webkit-transition-duration: 2s;
  68.285 -	-moz-transition-property: background-color;
  68.286 -	-moz-transition-duration: 2s;
  68.287 -	transition-property: background-color;
  68.288 -	transition-duration: 2s;
  68.289 -}
  68.290 -
  68.291 -#block_nav {
  68.292 -	font-weight: bold;
  68.293 -}
  68.294 -
  68.295 -#block_nav a {
  68.296 -	text-decoration: none;
  68.297 -}
  68.298 -
  68.299 -#block_nav li a:hover {
  68.300 -	color: #b64b22;
  68.301 -}
  68.302 -
  68.303 -#block_nav ul {
  68.304 -	margin: 0;
  68.305 -	list-style-type: none;
  68.306 -}
  68.307 -
  68.308 -#block_nav h3 {
  68.309 -	font-size: 110%;
  68.310 -}
  68.311 -
  68.312 -.block_left:hover, .block_right:hover, #block_top:hover,
  68.313 -#block_nav:hover, #footer:hover { 
  68.314 -	background-color: #f8f8f8;
  68.315 -}
  68.316 -
  68.317 -.right_box {
  68.318 -	width: 50%;
  68.319 -	float: right;
  68.320 -}
  68.321 -
  68.322 -.floor {
  68.323 -	color: #999999;
  68.324 -	font-size: 20px;
  68.325 -	-webkit-transform: rotate(-45deg) skew(15deg, 15deg);
  68.326 -	-moz-transform: rotate(-45deg) skew(15deg, 15deg);
  68.327 -	-o-transform: rotate(-45deg) skew(15deg, 15deg);
  68.328 -	-ms-transform: rotate(-45deg) skew(15deg, 15deg);
  68.329 -	transform: rotate(-45deg) skew(15deg, 15deg);
  68.330 -}
  68.331 -	
  68.332 -/* Button */
  68.333 -
  68.334 -.button { margin-left: 20px; }
  68.335 -
  68.336 -.button a { 
  68.337 -	background-color: #b64b22;
  68.338 -	color: #ffffff;
  68.339 -	margin-right: 6px;
  68.340 -	padding: 6px 10px;
  68.341 -	font-size: 14px;
  68.342 -	-moz-border-radius: 4px;
  68.343 -	-webkit-border-radius: 4px;
  68.344 -	border-radius: 4px;
  68.345 -	-moz-box-shadow: 0 1px 3px #666;
  68.346 -	-webkit-box-shadow: 0 1px 3px #666;
  68.347 -	box-shadow: 0 1px 3px #666;
  68.348 -}
  68.349 -
  68.350 -.button a:hover, input[type=submit]:hover { 
  68.351 -	background-color: #a3431f;
  68.352 -	color: #ffffff;
  68.353 -}
  68.354 -
  68.355 -input[type=submit] {
  68.356 -	border: 1px solid #b64b22;
  68.357 -	background-color: #b64b22;
  68.358 -	color: white;
  68.359 -	font-weight: bold;
  68.360 -	cursor: pointer;
  68.361 -	padding: 2px 10px;
  68.362 -	font-size: 14px;
  68.363 -	-moz-border-radius: 2px;
  68.364 -	-webkit-border-radius: 2px;
  68.365 -	border-radius: 2px;
  68.366 -	-moz-box-shadow: 0 0 5px #666;
  68.367 -	-webkit-box-shadow: 0 0 5px#666;
  68.368 -	box-shadow: 0 0 5px #666;
  68.369 -}
  68.370 -
  68.371 -input[type=text] {
  68.372 -	border: 1px solid #333333;
  68.373 -	padding: 3px;
  68.374 -	width: 100%;
  68.375 -	max-width: 500px;
  68.376 -}
  68.377 -
  68.378 -/* Clouds */
  68.379 -
  68.380 -#cloud {
  68.381 -	padding: 10px 0px;
  68.382 -	line-height: 3em;
  68.383 -	text-align: center;
  68.384 -}
  68.385 -#cloud a { padding: 0 2px; color: #956411; }
  68.386 -#cloud a.tag1 { font-size: 0.7em; font-weight: 100; }
  68.387 -#cloud a.tag2 { font-size: 0.8em; font-weight: 200; }
  68.388 -#cloud a.tag3 { font-size: 0.9em; font-weight: 300; }
  68.389 -#cloud a.tag4 { font-size: 1.0em; font-weight: 400; }
  68.390 -#cloud a.tag5 { font-size: 1.2em; font-weight: 500; }
  68.391 -#cloud a.tag6 { font-size: 1.4em; font-weight: 600; }
  68.392 -#cloud a.tag7 { font-size: 1.6em; font-weight: 700; }
  68.393 -#cloud a.tag8 { font-size: 1.8em; font-weight: 800; }
  68.394 -#cloud a.tag9 { font-size: 2.2em; font-weight: 900; }
  68.395 -#cloud a.tag10 { font-size: 2.5em; font-weight: 900; }
  68.396 -
  68.397 -/* Slideshow. */
  68.398 -
  68.399 -#slideshow
  68.400 -{
  68.401 -	overflow: hidden;
  68.402 -	margin: 10px auto 10px;
  68.403 -	position: relative;
  68.404 -	width: 260px;
  68.405 -	height: 163px;
  68.406 -}
  68.407 -
  68.408 -#slideshow img
  68.409 -{
  68.410 -	border: 0;
  68.411 -	width: 260px;
  68.412 -	height: 163px;
  68.413 -}
  68.414 -
  68.415 -#twitter {
  68.416 -	margin-top: 20px;
  68.417 -	-moz-border-radius: 8px;
  68.418 -	-webkit-border-radius: 8px;
  68.419 -	border-radius: 8px;
  68.420 -	-moz-box-shadow: 0 1px 3px #666;
  68.421 -	-webkit-box-shadow: 0 1px 3px #666;
  68.422 -	box-shadow: 0 1px 3px #666;
  68.423 -}
  68.424 -
  68.425 -/* HTML styles */
  68.426 -
  68.427 -h1 {
  68.428 -	color: #444444;
  68.429 -	background: transparent;
  68.430 -	text-align: left;
  68.431 -	margin: 0px 0px 4px 0px;
  68.432 -	font-size: 150%;
  68.433 -	font-weight: bold;
  68.434 -	padding: 5px 0 0 10px;
  68.435 -}
  68.436 -
  68.437 -h2 {
  68.438 -	color: #b64b22;
  68.439 -	padding: 0;
  68.440 -	margin: 20px 0 0 0;
  68.441 -	font-size: 130%;
  68.442 -	font-weight: bold;
  68.443 -}
  68.444 -
  68.445 -h3 {
  68.446 -	font-weight: bold;
  68.447 -	color: #666666;
  68.448 -	background: transparent;
  68.449 -}
  68.450 -	
  68.451 -h3 img { 
  68.452 -	vertical-align: middle;
  68.453 -	width: 20px;
  68.454 -	height: 20px;
  68.455 -	padding-right: 4px; 
  68.456 -}
  68.457 -
  68.458 -a {
  68.459 -	text-decoration: underline;
  68.460 -	color: #103A5E;
  68.461 -	background: inherit;
  68.462 -}
  68.463 -
  68.464 -a:hover {
  68.465 -	text-decoration: none;
  68.466 -	color: blue;
  68.467 -	background: inherit;
  68.468 -}
  68.469 -
  68.470 -code {
  68.471 -	font-size: 12px;
  68.472 -	color: #669900;
  68.473 -	background: inherit;
  68.474 -}
  68.475 -
  68.476 -tt {
  68.477 -	color: #15EE15;
  68.478 -	background: inherit;
  68.479 -}
  68.480 -
  68.481 -img {
  68.482 -	border: 0pt none;
  68.483 -}
  68.484 -
  68.485 -fieldset {
  68.486 -	background: #E2ECf6;
  68.487 -	color: black;
  68.488 -	margin-top: 25px;
  68.489 -	border: 1px solid black;
  68.490 -}
  68.491 -
  68.492 -legend {
  68.493 -	border: 1px solid black;
  68.494 -	color: #6c0023;
  68.495 -	background: #eaeaea;
  68.496 -	font-weight: bold;
  68.497 -}
  68.498 -
  68.499 -pre {
  68.500 -	padding: 5px;
  68.501 -	color: black;
  68.502 -	background: #E1E0B0;
  68.503 -}
  68.504 -
  68.505 -pre.script {
  68.506 -	padding: 10px;
  68.507 -	color: black;
  68.508 -	background: #E8E8E8;
  68.509 -	border: 1px inset #606060;
  68.510 -}
  68.511 -
  68.512 -textarea {
  68.513 -	background: #E5E5E5;
  68.514 -	margin-top: 12px;
  68.515 -}
  68.516 -
  68.517 -/* Packages pages */
  68.518 -
  68.519 -.pkg_nav {
  68.520 -	border-top: 1px solid black;
  68.521 -	margin-top: 10px;
  68.522 -	padding-top: 10px;
  68.523 -}
  68.524 -
  68.525 -pre.package {
  68.526 -	padding: 0px;
  68.527 -	color: black;
  68.528 -	background: white;
  68.529 -}
  68.530 -
  68.531 -p.get {
  68.532 -	text-align: center;
  68.533 -	padding: 10px;
  68.534 -	color: black;
  68.535 -	background: #F3F3F3;
  68.536 -	border: 1px solid #DEDEDE;
  68.537 -	border-radius: 4px;
  68.538 -	-moz-border-radius: 4px;
  68.539 -	-webkit-border-radius: 4px;
  68.540 -}
  68.541 -
  68.542 -p.get a {
  68.543 -	font-weight: bold;
  68.544 -	text-decoration: none;
  68.545 -}
  68.546 -
  68.547 -.pkgs-search { 
  68.548 -	text-align: center; 
  68.549 -	padding: 40px 20px 80px 20px;
  68.550 -}
  68.551 -
  68.552 -.year:after {
  68.553 -	/* content: "2007-2011"; */
  68.554 -	content: "2011";
  68.555 -}
  68.556 -
  68.557 -/* Footer */
  68.558 -
  68.559 -#footer {
  68.560 -	margin: 0px 80px 80px 80px;
  68.561 -	padding: 10px;
  68.562 -	background: #eaeaea;
  68.563 -	color: #666666;
  68.564 -	height: 180px;
  68.565 -	clear: both;
  68.566 -	border-radius: 8px;
  68.567 -	-moz-border-radius: 8px;
  68.568 -	-webkit-border-radius: 8px;
  68.569 -	-moz-box-shadow: 0 1px 3px #666;
  68.570 -	-webkit-box-shadow: 0 1px 3px #666;
  68.571 -	box-shadow: 0 1px 3px #666;
  68.572 -}
  68.573 -#footer a {
  68.574 -	background: inherit;
  68.575 -	color: #666666;
  68.576 -}
  68.577 -#footer a:hover {
  68.578 -	background: inherit;
  68.579 -	color: #333333;
  68.580 -}
  68.581 -#footer ul {
  68.582 -	list-style-type: none;
  68.583 -}
  68.584 -#footer li {
  68.585 -	padding: 2px;
  68.586 -}
  68.587 -#footer h4 {
  68.588 -	margin: 0 20px;
  68.589 -	font-size: 125%;
  68.590 -}
    69.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/dir-generator.php	Fri Feb 25 00:13:56 2011 +0000
    69.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    69.3 @@ -1,442 +0,0 @@
    69.4 -<?php
    69.5 -function redirect()
    69.6 -{
    69.7 -?>
    69.8 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    69.9 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   69.10 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
   69.11 -<head>
   69.12 -	<title>SliTaz mirror redirection</title>
   69.13 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   69.14 -	<meta name="description" content="slitaz mirror redirection" />
   69.15 -	<meta name="robots" content="index, nofollow" />
   69.16 -	<meta name="author" content="SliTaz Contributors" />
   69.17 -	<meta http-equiv="Refresh" content="0;url=http://mirror.slitaz.org/">
   69.18 -</head>
   69.19 -<?php
   69.20 -}
   69.21 -
   69.22 -$VERSION = "0.2-slitaz";
   69.23 -
   69.24 -/*  Lighttpd Enhanced Directory Listing Script
   69.25 - *  ------------------------------------------
   69.26 - *  Authors: Evan Fosmark   <me@evanfosmark.com>,
   69.27 - *           Pascal Bellard <pascal.bellard@slitaz.org>
   69.28 - *           Christophe Lincoln <pankso@slitaz.org>
   69.29 - *
   69.30 - *
   69.31 - *  GNU License Agreement
   69.32 - *  ---------------------
   69.33 - *  This program is free software; you can redistribute it and/or modify
   69.34 - *  it under the terms of the GNU General Public License as published by
   69.35 - *  the Free Software Foundation; either version 2 of the License, or
   69.36 - *  (at your option) any later version.
   69.37 - *
   69.38 - *  This program is distributed in the hope that it will be useful,
   69.39 - *  but WITHOUT ANY WARRANTY; without even the implied warranty of
   69.40 - *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   69.41 - *  GNU General Public License for more details.
   69.42 - *
   69.43 - *  You should have received a copy of the GNU General Public License
   69.44 - *  along with this program; if not, write to the Free Software
   69.45 - *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
   69.46 - *
   69.47 - *  http://www.gnu.org/licenses/gpl.txt
   69.48 - */
   69.49 - 
   69.50 -// Get the path (cut out the query string from the request_uri)
   69.51 -list($path) = explode('?', $_SERVER['REQUEST_URI']);
   69.52 -
   69.53 -
   69.54 -// Get the path that we're supposed to show.
   69.55 -$path = ltrim(rawurldecode($path), '/');
   69.56 -
   69.57 -
   69.58 -if(strlen($path) == 0) {
   69.59 -	$path = "./";
   69.60 -}
   69.61 -
   69.62 -
   69.63 -// Can't call the script directly since REQUEST_URI won't be a directory
   69.64 -if($_SERVER['PHP_SELF'] == '/'.$path) {
   69.65 -	redirect();
   69.66 -//	die("Unable to call " . $path . " directly.");
   69.67 -}
   69.68 -
   69.69 -
   69.70 -$vpath = ($path != "./")?$path:"";
   69.71 -// Make sure it is valid.
   69.72 -if(!is_dir($path)) {
   69.73 -//	die("<b>" . $path . "</b> is not a valid path.");
   69.74 -	$path = dirname($_SERVER["SCRIPT_FILENAME"]);
   69.75 -	list($vpath) = explode('?', $_SERVER['REQUEST_URI']);
   69.76 -	$vpath = ltrim(rawurldecode($vpath), '/');
   69.77 -}
   69.78 -
   69.79 -
   69.80 -//
   69.81 -// This function returns the file size of a specified $file.
   69.82 -//
   69.83 -function format_bytes($size, $precision=1) {
   69.84 -    $sizes = array('Y', 'Z', 'E', 'P', 'T', 'G', 'M', 'K', '');
   69.85 -    $total = count($sizes);
   69.86 -
   69.87 -    while($total-- && $size > 1024) $size /= 1024;
   69.88 -    if ($sizes[$total] == '') {
   69.89 -    	$size /= 1024;
   69.90 -    	$total--;
   69.91 -    }
   69.92 -    return sprintf('%.'.$precision.'f', $size).$sizes[$total];
   69.93 -}
   69.94 -
   69.95 -
   69.96 -//
   69.97 -// Get some variables from /etc/lighttpd/lighttpd.conf
   69.98 -//
   69.99 -$conf_lightty = file_get_contents("/etc/lighttpd/lighttpd.conf");
  69.100 -
  69.101 -function get_conf($var,$start,$stop,$default='') {
  69.102 -    global $conf_lightty;
  69.103 -
  69.104 -    if (!preg_match('/'.$var.'/',$conf_lightty)) return $default;
  69.105 -    $filter = '/(.*\n)*'.$var.'\s*=\s*'.$start.'(([^'.$stop.']*\n*)*)'.$stop.'(.*\n)*/';
  69.106 -    return preg_replace($filter,'$2',$conf_lightty);
  69.107 -}
  69.108 -
  69.109 -$encoding = get_conf('dir-listing.encoding','"','"','ascii');
  69.110 -$external_css = get_conf('dir-listing.external-css','"','"');
  69.111 -
  69.112 -$show_hidden_files = false;
  69.113 -if (get_conf('dir-listing.hide-dotfile','"','"','disable') == "disable") {
  69.114 -	$show_hidden_files = true;
  69.115 -}
  69.116 -// get_conf('dir-listing.exclude','\(','\)');
  69.117 -// get_conf('dir-listing.set-footer','"','"');
  69.118 -
  69.119 -$mime_types = array();
  69.120 -foreach (explode(',',get_conf('mimetype.assign','\(','\)')) as $item) {
  69.121 -	$filter = '/\s*"(.*)"\s*=>\s*"(.*)".*/';
  69.122 -	$val = explode(',',preg_replace($filter,'$1,$2',$item));
  69.123 -	if (isset($val[1])) $mime_types[$val[0]] = $val[1];
  69.124 -}
  69.125 -
  69.126 -//
  69.127 -// This function returns the mime type of $file.
  69.128 -//
  69.129 -function get_file_type($file) {
  69.130 -	global $mime_types;
  69.131 -	
  69.132 -	$file = basename($file);
  69.133 -	$default_type = "application/octet-stream";
  69.134 -	if (isset($mime_types[$file])) {
  69.135 -		return $mime_types[$file];
  69.136 -	}
  69.137 -	$pos = strrpos($file, ".");
  69.138 -	if ($pos === false) {
  69.139 -		return $default_type;
  69.140 -	}
  69.141 -//FIXME .tar.gz
  69.142 -	$ext = '.'.rtrim(substr($file, $pos+1), "~");
  69.143 -	if (isset($mime_types[$ext])) {
  69.144 -		return $mime_types[$ext];
  69.145 -	}
  69.146 -	return $default_type;
  69.147 -}
  69.148 -
  69.149 -//$slitaz_style = (dirname($_SERVER["PHP_SELF"]) == '/');
  69.150 -$slitaz_style = ($_SERVER["SERVER_NAME"] == "mirror.slitaz.org");
  69.151 -if ($slitaz_style) {
  69.152 -	$fvalue = "";
  69.153 -	if (isset($_GET[f])) $fvalue = 'value="'.$_GET[f].'"';
  69.154 -	print <<<EOT
  69.155 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  69.156 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  69.157 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
  69.158 -<head>
  69.159 -	<title>Index of /$vpath</title>
  69.160 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
  69.161 -	<meta name="description" content=">Index of /$vpath" />
  69.162 -	<meta name="robots" content="index, nofollow" />
  69.163 -	<meta name="author" content="SliTaz Contributors" />
  69.164 -	<link rel="shortcut icon" href="/css/favicon.ico" />
  69.165 -	<link rel="stylesheet" type="text/css" href="/css/slitaz.css" />
  69.166 -	<style type='text/css'>
  69.167 -		div.list { background-color: white; padding-bottom: 14px;}
  69.168 -		table {width: 100% ;}
  69.169 -		th, td { font: 90% monospace; text-align: left;}
  69.170 -		th { font-weight: bold; padding-right: 14px; padding-bottom: 3px;}
  69.171 -		td {padding-right: 14px;}
  69.172 -		td.s, th.s {text-align: right;}
  69.173 -	</style>
  69.174 -</head>
  69.175 -<body>
  69.176 -
  69.177 -<!-- Header -->
  69.178 -<div id="header">
  69.179 -	<a href="http://mirror.slitaz.org/"><img id="logo" 
  69.180 -		src="/css/pics/website/logo.png" 
  69.181 -		title="mirror.slitaz.org" alt="mirror.slitaz.org" /></a>
  69.182 -	<p id="titre">#!/Mirror/${vpath}</p>
  69.183 -</div>
  69.184 -
  69.185 -<!-- Content -->
  69.186 -<div id="content-full">
  69.187 -
  69.188 -<!-- Block begin -->
  69.189 -<div class="block">
  69.190 -	<!-- Nav block begin -->
  69.191 -	<div id="block_nav">
  69.192 -		<h3><img src="/css/pics/website/users.png" alt="users.png" />Community</h3>
  69.193 -		<ul>
  69.194 -			<li><a href="http://pizza.slitaz.org/">Live Builder</a></li>
  69.195 -			<li><a href="http://boot.slitaz.org/">Web Boot</a></li>
  69.196 -		</ul>
  69.197 -		<h3>Search</h3>
  69.198 -		<form class="search" action="${_SERVER["REQUEST_URI"]}" method="get" >
  69.199 -			<p><input type="text" name="f" $fvalue /></p>
  69.200 -		</form>
  69.201 -	<!-- Nav block end -->
  69.202 -	</div>
  69.203 -	<!-- Top block begin -->
  69.204 -	<div id="block_top">
  69.205 -		<h1>About Mirror</h1>
  69.206 -		<p>Welcome to Open Source!
  69.207 -EOT;
  69.208 -	if ($_SERVER["SERVER_NAME"] == "mirror.slitaz.org") print <<<EOT
  69.209 -		This is the SliTaz GNU/Linux main mirror. The server runs naturally SliTaz 
  69.210 -		(stable) in an lguest virtual machine provided by 
  69.211 -		<a href="http://www.ads-lu.com/">ADS</a>.	
  69.212 -EOT;
  69.213 -	print <<<EOT
  69.214 -		</p>
  69.215 -		<p><img src="/css/pics/website/network.png" 
  69.216 -			alt=".png" style="vertical-align:middle;"/>Mirrors: 
  69.217 -EOT;
  69.218 -	$mirrors = array();
  69.219 -	$fp = @fopen(dirname($_SERVER["SCRIPT_FILENAME"])."/mirrors","r");
  69.220 -	if ($fp) {
  69.221 -		while (($line = fgets($fp)) !== false) {
  69.222 -			$line = chop($line);
  69.223 -			$url = parse_url($line);
  69.224 -			if ($_SERVER["SERVER_NAME"] == $url['host']) continue;
  69.225 -			$host = explode('.',$url['host']);
  69.226 -			$mirrors[$host[count($host)-2].".".
  69.227 -			         $host[count($host)-1]] = $line;
  69.228 -		}
  69.229 -	}
  69.230 -	fclose($fp);
  69.231 -	foreach($mirrors as $name => $url) {
  69.232 -		echo "<a href=\"$url$vpath\" title=\"$name mirror\">$name</a>\n";
  69.233 -	}
  69.234 -	print <<<EOT
  69.235 -		</p>
  69.236 -	<!-- Top block end -->
  69.237 -	</div>
  69.238 -<!-- Block end -->
  69.239 -</div>
  69.240 -
  69.241 -EOT;
  69.242 -}
  69.243 -else {
  69.244 -
  69.245 -// Print the heading stuff
  69.246 -print "<?xml version='1.0' encoding='$encoding'?>
  69.247 -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1//EN' 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>
  69.248 -<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en'>
  69.249 -	<head>
  69.250 -		<title>Index of /" .$vpath. "</title>
  69.251 -";
  69.252 -if ($external_css != '') {
  69.253 -print "	<link rel='stylesheet' type='text/css' href='".$external_css."' />
  69.254 -";
  69.255 -}
  69.256 -else {
  69.257 -print " <style type='text/css'>
  69.258 -		a, a:active {text-decoration: none; color: blue;}
  69.259 -		a:visited {color: #48468F;}
  69.260 -		a:hover, a:focus {text-decoration: underline; color: red;}
  69.261 -		body {background-color: #F5F5F5;}
  69.262 -		h2 {margin-bottom: 12px;}
  69.263 -		table {margin-left: 12px;}
  69.264 -		th, td { font: 90% monospace; text-align: left;}
  69.265 -		th { font-weight: bold; padding-right: 14px; padding-bottom: 3px;}
  69.266 -		td {padding-right: 14px;}
  69.267 -		td.s, th.s {text-align: right;}
  69.268 -		div.list { background-color: white; border-top: 1px solid #646464; border-bottom: 1px solid #646464; padding-top: 10px; padding-bottom: 14px;}
  69.269 -		div.foot { font: 90% monospace; color: #787878; padding-top: 4px;}
  69.270 -		</style>
  69.271 -";
  69.272 -}
  69.273 -print "	</head>
  69.274 -	<boby>
  69.275 -	<h2>Index of /" . $vpath ."</h2>
  69.276 -";
  69.277 -}
  69.278 -
  69.279 -print "	<div class='list'>
  69.280 -	<table summary='Directory Listing' cellpadding='0' cellspacing='0'>
  69.281 -";
  69.282 -
  69.283 -
  69.284 -
  69.285 -// Get all of the folders and files. 
  69.286 -$folderlist = array();
  69.287 -$filelist = array();
  69.288 -if($handle = @opendir($path)) {
  69.289 -	while(($item = readdir($handle)) !== false) {
  69.290 -		if ($item == "index.php") continue;
  69.291 -		if ($item == "dir-generator.php") continue;
  69.292 -		if (isset($_GET['f'])) {
  69.293 -			$filter = $_GET['f'];
  69.294 -			if (substr($filter,0,1) != '/')
  69.295 -				$filter = '/'.$filter.'/i';
  69.296 -			if (!preg_match($filter,$item)) continue;
  69.297 -		}
  69.298 -		if(is_dir($path.'/'.$item) and $item != '.' and $item != '..') {
  69.299 -			$folderlist[] = array(
  69.300 -				'name' => $item, 
  69.301 -				'size' => 0, 
  69.302 -				'modtime'=> filemtime($path.'/'.$item),
  69.303 -				'file_type' => "Directory"
  69.304 -			);
  69.305 -		}
  69.306 -		elseif(is_file($path.'/'.$item)) {
  69.307 -			if(!$show_hidden_files) {
  69.308 -				if(substr($item, 0, 1) == "." or substr($item, -1) == "~") {
  69.309 -					continue;
  69.310 -				}
  69.311 -			}
  69.312 -			$filelist[] = array(
  69.313 -				'name'=> $item, 
  69.314 -				'size'=> filesize($path.'/'.$item), 
  69.315 -				'modtime'=> filemtime($path.'/'.$item),
  69.316 -				'file_type' => get_file_type($path.'/'.$item)
  69.317 -			);
  69.318 -		}
  69.319 -	}
  69.320 -	closedir($handle);
  69.321 -}
  69.322 -
  69.323 -
  69.324 -if(!isset($_GET['s'])) {
  69.325 -	$_GET['s'] = 'name';
  69.326 -}
  69.327 -
  69.328 -// Figure out what to sort files by
  69.329 -$file_order_by = array();
  69.330 -foreach ($filelist as $key=>$row) {
  69.331 -    $file_order_by[$key]  = $row[$_GET['s']];
  69.332 -}
  69.333 -
  69.334 -// Figure out what to sort folders by
  69.335 -$folder_order_by = array();
  69.336 -foreach ($folderlist as $key=>$row) {
  69.337 -    $folder_order_by[$key]  = $row[$_GET['s']];
  69.338 -}
  69.339 -
  69.340 -// Order the files and folders
  69.341 -$sort_type = SORT_ASC;
  69.342 -$order = "&amp;o=d";
  69.343 -if(isset($_GET['o'])) {
  69.344 -	$sort_type = SORT_DESC;
  69.345 -	$order = "";
  69.346 -}
  69.347 -array_multisort($folder_order_by, $sort_type, $folderlist);
  69.348 -array_multisort($file_order_by, $sort_type, $filelist);
  69.349 -
  69.350 -
  69.351 -// Show sort methods
  69.352 -print "<thead><tr>";
  69.353 -
  69.354 -$sort_methods = array();
  69.355 -$sort_methods['name'] = "Name";
  69.356 -$sort_methods['modtime'] = "Last Modified";
  69.357 -$sort_methods['size'] = "Size";
  69.358 -$sort_methods['file_type'] = "Type";
  69.359 -
  69.360 -foreach($sort_methods as $key=>$item) {
  69.361 -	if ($_GET['s'] == $key) $key = "$key$order";
  69.362 -	print "<th class='n'><a href='?s=$key'>$item</a></th>";
  69.363 -}
  69.364 -print "</tr></thead>\n<tbody>\n";
  69.365 -
  69.366 -
  69.367 -
  69.368 -// Parent directory link
  69.369 -if($path != "./") {
  69.370 -	print "<tr><td class='n'><a href='..'>Parent Directory</a>/</td>";
  69.371 -	print "<td class='m'>&nbsp;</td>";
  69.372 -	print "<td class='s'>- &nbsp;</td>";
  69.373 -	print "<td class='t'>Directory</td></tr>\n";
  69.374 -}
  69.375 -
  69.376 -
  69.377 -
  69.378 -// Print folder information
  69.379 -foreach($folderlist as $folder) {
  69.380 -	print "<tr><td class='n'><a href='" . addslashes($folder['name']). "'>" .htmlentities($folder['name']). "</a>/</td>";
  69.381 -	print "<td class='m'>" . date('Y-M-d H:m:s', $folder['modtime']) . "</td>";
  69.382 -	print "<td class='s'>- &nbsp;</td>";
  69.383 -	print "<td class='t'>" . $folder['file_type']                    . "</td></tr>\n";
  69.384 -}
  69.385 -
  69.386 -
  69.387 -// Print file information
  69.388 -foreach($filelist as $file) {
  69.389 -	print "<tr><td class='n'><a href='" . addslashes($file['name']). "'>" .htmlentities($file['name']). "</a></td>";
  69.390 -	print "<td class='m'>" . date('Y-M-d H:m:s', $file['modtime'])   . "</td>";
  69.391 -	print "<td class='s'>" . format_bytes($file['size'])           . "</td>";
  69.392 -	print "<td class='t'>" . $file['file_type']                      . "</td></tr>\n";
  69.393 -}
  69.394 -
  69.395 -// Print ending stuff
  69.396 -$soft = explode('/',$_SERVER["SERVER_SOFTWARE"]);
  69.397 -$tag = get_conf('server.tag','"','"',$soft[0].' &lt;'.$soft[1].'&gt;');
  69.398 -print "</tbody>
  69.399 -	</table>
  69.400 -	</div>";
  69.401 -if ($slitaz_style) { ?>
  69.402 -
  69.403 -<!-- End of content -->
  69.404 -</div>
  69.405 -
  69.406 -<!-- Footer -->
  69.407 -<div id="footer">
  69.408 -	<div class="right_box">
  69.409 -	<h4>SliTaz Network</h4>
  69.410 -		<ul>
  69.411 -			<li><a href="http://www.slitaz.org/">Main Website</a></li>
  69.412 -			<li><a href="http://doc.slitaz.org/">Documentation</a></li>
  69.413 -			<li><a href="http://forum.slitaz.org/">Support Forum</a></li>
  69.414 -			<li><a href="http://scn.slitaz.org/">Community Network</a></li>
  69.415 -			<li><a href="http://pkgs.slitaz.org/">Packages</a></li>
  69.416 -			<li><a href="http://labs.slitaz.org/">Laboratories</a></li>
  69.417 -		</ul>
  69.418 -	</div>
  69.419 -	<h4>SliTaz Website</h4>
  69.420 -	<ul>
  69.421 -		<li><a href="#header">Top of the page</a></li>
  69.422 -		<li>Copyright &copy; <span class="year"></span>
  69.423 -			<a href="http://www.slitaz.org/">SliTaz</a></li>
  69.424 -		<li><a href="about/">About the project</a></li>
  69.425 -		<li><a href="netmap.php">Network Map</a></li>
  69.426 -		<li>Page modified the <?php echo date('r'); ?></li>
  69.427 -		<li><a href="http://validator.w3.org/check?uri=referer"><img
  69.428 -		src="pics/website/xhtml10.png" alt="Valid XHTML 1.0"
  69.429 -		title="Code validé XHTML 1.0"
  69.430 -		style="width: 80px; height: 15px; vertical-align: middle;" /></a></li>
  69.431 -	</ul>
  69.432 -</div>
  69.433 -
  69.434 -<?php }
  69.435 -else print "
  69.436 -	<form action='".$_SERVER["REQUEST_URI"]."' method='get'>
  69.437 -	<div class='foot'>".$tag."
  69.438 -		<input type='text' name='f'/>
  69.439 -		<!-- <input type='submit' value='Filter' /> -->
  69.440 -	</div>
  69.441 -	</form>
  69.442 -";
  69.443 -print "</body>
  69.444 -	</html>";
  69.445 -?>
    70.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/floppies/builder/bootloader	Fri Feb 25 00:13:56 2011 +0000
    70.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    70.3 @@ -1,211 +0,0 @@
    70.4 -#!/bin/sh
    70.5 -#
    70.6 -# This script creates a floppy image set from a linux bzImage and can merge
    70.7 -# a cmdline and/or one or more initramfs.
    70.8 -# The total size can not exceed 15M because INT 15H function 87H limitations.
    70.9 -#
   70.10 -# (C) 2009 Pascal Bellard - GNU General Public License v3.
   70.11 -
   70.12 -usage()
   70.13 -{
   70.14 -cat <<EOT
   70.15 -Usage: $0 bzImage [--prefix image_prefix] [--cmdline 'args']
   70.16 -       [--rdev device] [--video mode] [--flags rootflags] [--tracks cnt]
   70.17 -       [--format 1440|1680|1920|2880 ] [--initrd initrdfile]...
   70.18 -
   70.19 -Default values: --format 1440 --tracks 80 --prefix floppy.
   70.20 -
   70.21 -Example:
   70.22 -$0 /boot/vmlinuz-2.6.30.6 --rdev /dev/ram0 --video -3 --cmdline 'rw lang=fr_FR kmap=fr-latin1 laptop autologin' --initrd /boot/rootfs.gz --initrd ./myconfig.gz
   70.23 -EOT
   70.24 -exit 1
   70.25 -}
   70.26 -
   70.27 -KERNEL=""
   70.28 -INITRD=""
   70.29 -CMDLINE=""
   70.30 -PREFIX="floppy."
   70.31 -FORMAT="1440"
   70.32 -RDEV=""
   70.33 -VIDEO=""
   70.34 -FLAGS=""
   70.35 -TRACKS=""
   70.36 -DEBUG=""
   70.37 -while [ -n "$1" ]; do
   70.38 -	case "$1" in
   70.39 -	--c*|-c*)  CMDLINE="$2"; shift;;
   70.40 -	--i*|-i*)  INITRD="$INITRD $2"; shift;;
   70.41 -	--p*|-p*)  PREFIX="$2"; shift;;
   70.42 -	--fo*|-f*) FORMAT="$2"; shift;;
   70.43 -	--fl*)     FLAGS="$2"; shift;;	# 1 read-only, 0 read-write
   70.44 -	--r*|-r*)  RDEV="$2"; shift;;	# /dev/???
   70.45 -	--v*|-v*)  VIDEO="$2"; shift;;	# -3 .. n
   70.46 -	--t*|-t*)  TRACKS="$2"; shift;; # likely 81 .. 84
   70.47 -	--debug)   DEBUG="1";;
   70.48 -	*) KERNEL="$1";;
   70.49 -	esac
   70.50 -	shift
   70.51 -done
   70.52 -[ -n "$KERNEL" -a -f "$KERNEL" ] || usage
   70.53 -if [ -n "$TRACKS" ]; then
   70.54 -	if [ $(( $FORMAT % $TRACKS )) -ne 0 ]; then
   70.55 -		echo "Invalid track count for format $FORMAT."
   70.56 -		usage
   70.57 -	fi
   70.58 -fi
   70.59 -
   70.60 -# write a 16 bits data
   70.61 -# usage: store16 offset data16 file
   70.62 -store16()
   70.63 -{
   70.64 -	echo $(( $2 + 0x10000 )) | \
   70.65 -		awk '{ printf "\\\\x%02X\\\\x%02X",$1%256,($1/256)%256 }' | \
   70.66 -		xargs echo -en | \
   70.67 -	dd bs=2 conv=notrunc of=$3 seek=$(( $1 / 2 )) 2> /dev/null
   70.68 -	[ -n "$DEBUG" ] && printf "store16(%04X) = %04X\n" $1 $2 1>&2
   70.69 -}
   70.70 -
   70.71 -# write a 32 bits data
   70.72 -# usage: storelong offset data32 file
   70.73 -storelong()
   70.74 -{
   70.75 -	echo $2 | awk '{ printf "\\\\x%02X\\\\x%02X\\\\x%02X\\\\x%02X",
   70.76 -		 $1%256,($1/256)%256,($1/256/256)%256,($1/256/256/256)%256 }' | \
   70.77 -		xargs echo -en | \
   70.78 -		dd bs=4 conv=notrunc of=$3 seek=$(( $1 / 4 )) 2> /dev/null
   70.79 -	[ -n "$DEBUG" ] && printf "storelong(%04X) = %08X\n" $1 $2 1>&2
   70.80 -}
   70.81 -
   70.82 -# read a 32 bits data
   70.83 -# usage: getlong offset file
   70.84 -getlong()
   70.85 -{
   70.86 -	dd if=$2 bs=1 skip=$(( $1 )) count=4 2> /dev/null | \
   70.87 -		hexdump -e '"" 1/4 "%d" "\n"'
   70.88 -}
   70.89 -
   70.90 -floppyset()
   70.91 -{
   70.92 -	# bzImage offsets
   70.93 -	CylinderCount=496
   70.94 -	SetupSzOfs=497
   70.95 -	FlagsOfs=498
   70.96 -	SyssizeOfs=500
   70.97 -	VideoModeOfs=506
   70.98 -	RootDevOfs=508
   70.99 -	CodeAdrOfs=0x214
  70.100 -	RamfsAdrOfs=0x218
  70.101 -	RamfsLenOfs=0x21C
  70.102 -	ArgPtrOfs=0x228
  70.103 -
  70.104 -	# boot+setup address
  70.105 -	SetupBase=0x90000
  70.106 -
  70.107 -	stacktop=0x9E00
  70.108 -
  70.109 -	bs=/tmp/bs$$
  70.110 -
  70.111 -	# Get and patch boot sector
  70.112 -	# See  http://hg.slitaz.org/wok/raw-file/711d076b277c/linux/stuff/linux-header-2.6.34.u
  70.113 -	dd if=$KERNEL bs=512 count=1 of=$bs 2> /dev/null
  70.114 -	uudecode <<EOT | dd of=$bs conv=notrunc 2> /dev/null
  70.115 -begin-base64 644 -
  70.116 -/L+6nWgAkAcGF4n8McC5HQDzq1sfD6mg8X1ABlfFd3ixBvOlZWaPR3gGH8ZF
  70.117 -+D/6l1hB6DQBvgACA3QO6HYBWwseKAJ0LFNH6AoBXuhmAbAgzRCwCM0QTuhl
  70.118 -ATwIdAOIBK05NigCdPDoPgE8CnXgiHz+ieb/TBD/TBi/9AGBTRz/gMdFMACc
  70.119 -sBCxBUi0k4lEHLABiUQUmGaY0+BIZgMFZtPoaAAQB7+AACn4nHMCAccx21BW
  70.120 -6J4AXrkAgLSH/kQczRVYnXfcoRoCvxwCsQk4RBxyuJPNE+oAACCQsEYoyL7b
  70.121 -AejSAF3rI4D5E3IEOMF3a4D+AnIEOOZ3bGCB/QAGdCoGUlFTlrQCULEGtQTB
  70.122 -xQSwDyHoBJAnFEAn6IwA/s117LAgzRDitOiWAJjNE2FSUCjIdwKwAZg5+HIC
  70.123 -ifhQtALNE5VeWFpyoJVBjuGAxwJPdFFOdfSM4ZU4wXVFiMj+xrEBOOZ1O4j0
  70.124 -/sW2AID9UHIwOi7wAXIqtQBgvt4B/kQMU+gxAFvoOAB1FlKYzRO4AQLNE1rQ
  70.125 -1Dpk/nXqRgjkdeVh64sWB7AxLAO0DrsHAM0QPA1088OwDejv/6wIwHX4w79s
  70.126 -BLFbZQINuA0BZToNdArNFnT0mM0Wju9Hw1g6AEluc2VydCBkaXNrIDEuBw0A
  70.127 -AA==
  70.128 -====
  70.129 -EOT
  70.130 -
  70.131 -	# Get setup
  70.132 -	setupsz=$(getlong $SetupSzOfs $bs)
  70.133 -	setupszb=$(( $setupsz & 255 ))
  70.134 -	dd if=$KERNEL bs=512 skip=1 count=$setupszb 2> /dev/null >> $bs
  70.135 -
  70.136 -	if [ -n "$TRACKS" ]; then
  70.137 -		[ -n "$DEBUG" ] && echo -n "--tracks " 1>&2
  70.138 -		n=$(getlong $CylinderCount $bs)
  70.139 -		store16 $CylinderCount $(( ($n & -256) + $TRACKS )) $bs
  70.140 -	fi
  70.141 -	if [ -n "$FLAGS" ]; then
  70.142 -		[ -n "$DEBUG" ] && echo -n "--flags " 1>&2
  70.143 -		store16 $FlagsOfs $FLAGS $bs
  70.144 -	fi
  70.145 -	if [ -n "$VIDEO" ]; then
  70.146 -		[ -n "$DEBUG" ] && echo -n "--video " 1>&2
  70.147 -		store16 $VideoModeOfs $VIDEO $bs
  70.148 -	fi
  70.149 -	if [ -n "$RDEV" ]; then
  70.150 -		if [ "$(dirname $RDEV)" == "/dev" -a -b $RDEV ]; then
  70.151 -			[ -n "$DEBUG" ] && echo -n "--rdev " 1>&2
  70.152 -			RDEV=$(stat -c '0x%02t%02T' $RDEV 2> /dev/null)
  70.153 -			store16 $RootDevOfs $RDEV $bs
  70.154 -		fi
  70.155 -	fi
  70.156 -
  70.157 -	# Store cmdline after setup
  70.158 -	if [ -n "$CMDLINE" ]; then
  70.159 -		[ -n "$DEBUG" ] && echo -n "--cmdline '$CMDLINE' " 1>&2
  70.160 -		echo -n "$CMDLINE" | dd bs=512 count=1 conv=sync 2> /dev/null >> $bs
  70.161 -		storelong $ArgPtrOfs $(( $SetupBase + $stacktop )) $bs
  70.162 -	fi
  70.163 -
  70.164 -	# Compute initramfs size
  70.165 -	initrdlen=0
  70.166 -	for i in $( echo $INITRD | sed 's/,/ /' ); do
  70.167 -		[ -s "$i" ] || continue
  70.168 -		[ -n "$DEBUG" ] && echo "--initrd $i " 1>&2
  70.169 -		initrdlen=$(( ($initrdlen + $(stat -c %s $i) + 3) & -4 ))
  70.170 -	done
  70.171 -	if [ $initrdlen -ne 0 ]; then
  70.172 -		[ -n "$DEBUG" ] && echo "initrdlen = $initrdlen " 1>&2
  70.173 -		storelong $RamfsAdrOfs \
  70.174 -			$(( (0x1000000 - $initrdlen) & 0xFFFF0000 )) $bs
  70.175 -		storelong $RamfsLenOfs $initrdlen $bs
  70.176 -	fi
  70.177 -
  70.178 -	# Output boot sector + setup + cmdline
  70.179 -	dd if=$bs 2> /dev/null
  70.180 -
  70.181 -	# Output kernel code
  70.182 -	dd if=$KERNEL bs=512 skip=$(( $setupszb + 1 )) 2> /dev/null
  70.183 -
  70.184 -	# Pad to next sector
  70.185 -	Kpad=$(( 512 - ($(stat -c %s $KERNEL) & 511) ))
  70.186 -	[ $Kpad -eq 512 ] || dd if=/dev/zero bs=1 count=$Kpad 2> /dev/null
  70.187 -
  70.188 -	# Output initramfs
  70.189 -	padding=0
  70.190 -	for i in $( echo $INITRD | sed 's/,/ /' ); do
  70.191 -		[ -s "$i" ] || continue
  70.192 -		[ $padding -ne 0 ] && dd if=/dev/zero bs=1 count=$padding 2> /dev/null
  70.193 -		dd if=$i 2> /dev/null
  70.194 -		padding=$(( 4 - ($(stat -c %s $i) & 3) ))
  70.195 -		[ $padding -eq 4 ] && padding=0
  70.196 -	done
  70.197 -
  70.198 -	# Cleanup
  70.199 -	rm -f $bs
  70.200 -}
  70.201 -
  70.202 -if [ "$FORMAT" == "0" ]; then # unsplitted
  70.203 -	floppyset > $PREFIX
  70.204 -	exit
  70.205 -fi
  70.206 -floppyset | split -b ${FORMAT}k /dev/stdin floppy$$
  70.207 -i=1
  70.208 -ls floppy$$* | while read file ; do
  70.209 -	output=$PREFIX$(printf "%03d" $i)
  70.210 -	cat $file /dev/zero | dd bs=1k count=$FORMAT conv=sync of=$output 2> /dev/null
  70.211 -	echo $output
  70.212 -	rm -f $file
  70.213 -	i=$(( $i + 1 ))
  70.214 -done
    71.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/floppies/builder/index.php	Fri Feb 25 00:13:56 2011 +0000
    71.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    71.3 @@ -1,440 +0,0 @@
    71.4 -<?php
    71.5 -if (false) { // no php support on this mirror !
    71.6 -?>
    71.7 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    71.8 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    71.9 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
   71.10 -<head>
   71.11 -	<title>SliTaz Boot Floppies redirection</title>
   71.12 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   71.13 -	<meta name="description" content="slitaz boot floppies builder redirection" />
   71.14 -	<meta name="robots" content="index, nofollow" />
   71.15 -	<meta name="author" content="SliTaz Contributors" />
   71.16 -	<meta http-equiv="Refresh" content="0;url=http://mirror.slitaz.org/floppies/builder/index.php">
   71.17 -</head>
   71.18 -<?php
   71.19 -}
   71.20 -ini_set('upload_max_filesize','16M');
   71.21 -ini_set('post_max_size','16M');
   71.22 -if (isset($_GET['id']) && is_file("/tmp/".$_GET['id']."/fd")) {
   71.23 -
   71.24 -	// Download a floppy image
   71.25 -	
   71.26 -    	$size = $_GET['s'];
   71.27 -    	if ($size == 0)
   71.28 -    		$size = filesize("/tmp/".$_GET['id']."/fd");
   71.29 -	header("Content-Type: application/octet-stream");
   71.30 -	header("Content-Length: ".$size);
   71.31 -	header("Content-Disposition: attachment; filename=".
   71.32 -		sprintf("fd%03d.img",$_GET['n']));
   71.33 -	$cmd = "cat /tmp/".$_GET['id']."/fd";
   71.34 -	if ($_GET['s'] != 0) {
   71.35 -		$cmd .= " /dev/zero | dd count=1 bs=".$_GET['s'];
   71.36 -		if ($_GET['n'] > 1)
   71.37 -			$cmd .= " skip=".($_GET['n']-1);
   71.38 -	}
   71.39 -	echo `$cmd 2> /dev/null`;
   71.40 -	exit;
   71.41 -}
   71.42 -?>
   71.43 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   71.44 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   71.45 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
   71.46 -<head>
   71.47 -	<title>SliTaz Boot Floppies</title>
   71.48 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   71.49 -	<meta name="description" content="slitaz boot floppies builder" />
   71.50 -	<meta name="robots" content="index, nofollow" />
   71.51 -	<meta name="author" content="SliTaz Contributors" />
   71.52 -	<link rel="shortcut icon" href="../../css/favicon.ico" />
   71.53 -	<link rel="stylesheet" type="text/css" href="../../css/slitaz.css" />
   71.54 -	<style>
   71.55 -input[type=text] {
   71.56 -	width: inherit;
   71.57 -}
   71.58 -	</style>
   71.59 -</head>
   71.60 -<body bgcolor="#ffffff">
   71.61 -<!-- Header -->
   71.62 -<div id="header">
   71.63 -    <a name="top"></a>
   71.64 -<!-- Access -->
   71.65 -<div id="access">
   71.66 -	<a href="bootloader" title="Build your floppy sets without Internet">Shell builder</a> |
   71.67 -	<a href="../../boot/floppy-grub4dos" title="Boot tools">Generic boot floppy</a>
   71.68 -</div>   
   71.69 -	<a href="http://www.slitaz.org/"><img id="logo" src="../../css/pics/website/logo.png" title="www.slitaz.org" alt="www.slitaz.org" style="border: 0px solid ; width: 200px; height: 74px;" /></a>
   71.70 -	<p id="titre">#!/boot/floppies/builder</p>
   71.71 -</div>
   71.72 -
   71.73 -<!-- Navigation menu -->
   71.74 -<div id="nav">
   71.75 -
   71.76 -<?php
   71.77 -
   71.78 -	// Cleanup old sessions
   71.79 -	
   71.80 -	$dir = opendir("/tmp");
   71.81 -	while (($name = readdir($dir)) !== false) {
   71.82 -		if (preg_match('/^fdbuild/',$name) == 0) continue;
   71.83 -		if (filemtime("/tmp/$name") > strtotime("-1 hour")) continue;
   71.84 -		system("rm -rf /tmp/$name");
   71.85 -	}
   71.86 -	closedir($dir);
   71.87 -
   71.88 -function get_long($file, $offset)
   71.89 -{
   71.90 -	$value = 0;
   71.91 -	if ($fp = fopen($file,"r")) {
   71.92 -		fseek($fp,$offset,SEEK_SET);
   71.93 -		for ($i = 0; $i < 32; $i += 8) {
   71.94 -			$value += ord(fgetc($fp)) << $i;
   71.95 -		}
   71.96 -		fclose($fp);
   71.97 -	}
   71.98 -	return $value;
   71.99 -}
  71.100 -
  71.101 -function error($string, $title="Error")
  71.102 -{
  71.103 -	echo <<<EOT
  71.104 -<div class="nav_box">
  71.105 -<h4>$title</h4>
  71.106 -<p>
  71.107 -$string
  71.108 -</p>
  71.109 -</div>
  71.110 -EOT;
  71.111 -}
  71.112 -
  71.113 -	$size = 0;
  71.114 -	$initrd_size = 0;
  71.115 -	
  71.116 -	// Upload kernel
  71.117 -	
  71.118 -	foreach($_FILES as $data) {
  71.119 -		$msg="The file ".$_FILES["kernel"]['name']." ";
  71.120 -		switch ($data["error"]) {
  71.121 -		case UPLOAD_ERR_INI_SIZE   : 
  71.122 -			error($msg."exceeds upload_max_filesize.");
  71.123 -			break;
  71.124 -		case UPLOAD_ERR_FORM_SIZE  : 
  71.125 -			error($msg."exceeds max_post_size.");
  71.126 -			break;
  71.127 -		case UPLOAD_ERR_PARTIAL    : 
  71.128 -			error($msg."was only partially uploaded.");
  71.129 -			break;
  71.130 -		case UPLOAD_ERR_NO_TMP_DIR : 
  71.131 -			error("Missing a temporary folder.");
  71.132 -			break;
  71.133 -		case UPLOAD_ERR_CANT_WRITE : 
  71.134 -			error("Failed to write file to disk.");
  71.135 -			break;
  71.136 -		}
  71.137 -	}
  71.138 -	if (isset($_FILES["kernel"]['tmp_name']) &&
  71.139 -	    is_uploaded_file($_FILES["kernel"]['tmp_name'])) {
  71.140 -		$tmp_dir = tempnam('','fdbuild');
  71.141 -		if (file_exists($tmp_dir)) unlink($tmp_dir);
  71.142 -		mkdir($tmp_dir);
  71.143 -		$tmp_dir .= '/';
  71.144 -		move_uploaded_file($_FILES["kernel"]['tmp_name'],
  71.145 -				   $tmp_dir."kernel");
  71.146 -		$kernel = $tmp_dir."kernel";
  71.147 -		$boot_version = get_long($kernel,0x206) & 255;
  71.148 -		$size = get_long($kernel,0x1F4);	// syssize paragraphs
  71.149 -		if ($boot_version < 4) $size &= 0xFFFF;	// 16 bits before 2.4
  71.150 -		$size = ($size + 0xFFF) & 0xFFFF000;	// round up to 64K
  71.151 -		$size <<= 4;				// paragraphs -> bytes
  71.152 -		if (get_long($kernel,0x202) != 0x53726448 ||	// 'HdrS' magic
  71.153 -		    (get_long($kernel,0x211) & 1 != 1)) {	// bzImage flag
  71.154 -			error("The file ".$_FILES["kernel"]['name'].
  71.155 -			      " is not a bzImage Linux kernel.");
  71.156 -			$size = 0;
  71.157 -		}
  71.158 -		else if ($boot_version < 2 && $_POST['cmdline']) { // before 2.2
  71.159 -			unset($_POST['cmdline']);
  71.160 -			error("This boot loader does not support Linux kernel ".
  71.161 -			      "prior 2.4.0-test3-pre3 command line.",
  71.162 -			      "Warning");
  71.163 -		}
  71.164 -		$msg = "The size of the file ".$_FILES["kernel"]['name'];
  71.165 -	}
  71.166 -	
  71.167 -	// Upload initrd
  71.168 -	
  71.169 -	if ($size && isset($_FILES["initrd"]['tmp_name']) &&
  71.170 -	    is_uploaded_file($_FILES["initrd"]['tmp_name'])) {
  71.171 -		move_uploaded_file($_FILES["initrd"]['tmp_name'],
  71.172 -				   $tmp_dir."initrd");
  71.173 -		$initrd_size = $_FILES["initrd"]['size'];
  71.174 -		$size += $initrd_size;
  71.175 -		$msg = "The total size of the files ".$_FILES["kernel"]['name'].
  71.176 -		       " and ".$_FILES["initrd"]['name'];
  71.177 -	}
  71.178 -	if ($initrd_size && isset($_FILES["initrd2"]['tmp_name']) &&
  71.179 -	    is_uploaded_file($_FILES["initrd2"]['tmp_name'])) {
  71.180 -		move_uploaded_file($_FILES["initrd2"]['tmp_name'],
  71.181 -				   $tmp_dir."initrd2");
  71.182 -		$initrd2_size = $_FILES["initrd2"]['size'];
  71.183 -		$size += $initrd2_size;
  71.184 -		$msg = "The total size of the files ".$_FILES["kernel"]['name'].
  71.185 -		       ", ".$_FILES["initrd"]['name'].
  71.186 -		       " and ".$_FILES["initrd2"]['name'];
  71.187 -	}
  71.188 -	if ($size >= 15 * 1024 * 1024) {
  71.189 -		error($msg." exceeds 15 MB.");
  71.190 -		$size = 0;
  71.191 -	}
  71.192 -	if ($size == 0) {
  71.193 -		if (isset($tmp_dir))
  71.194 -			system("rm -f $tmp_dir");
  71.195 -	}
  71.196 -	else {
  71.197 -		$cmd = "./bootloader ".$tmp_dir."kernel --prefix "
  71.198 -		     . $tmp_dir."fd --format 0 --flags ".$_POST['flags']
  71.199 -		     . " --video ".$_POST['video'];
  71.200 -		if ($_POST['cmdline'])
  71.201 -			$cmd .= " --cmdline '".$_POST['cmdline']."'";
  71.202 -		if (file_exists($_POST['rdev']))
  71.203 -			$cmd .= " --rdev ".$_POST['rdev'];
  71.204 -		if ($initrd_size)
  71.205 -			$cmd .= " --initrd ".$tmp_dir."initrd";
  71.206 -		if ($initrd2_size)
  71.207 -			$cmd .= " --initrd ".$tmp_dir."initrd2";
  71.208 -		switch ($_POST['size']) {
  71.209 -		case 1763328 : 
  71.210 -		case 2015232 : 
  71.211 -		case 3526656 :
  71.212 -		case 4030464 :
  71.213 -			$cmd .= " --tracks 82"; break;
  71.214 -		case 1784832 : 
  71.215 -			$cmd .= " --tracks 83"; break;
  71.216 -		}
  71.217 -		shell_exec($cmd);
  71.218 -		$count = 1;
  71.219 -		if ($_POST['size'] != 0) {
  71.220 -			$count += (filesize($tmp_dir."fd") -1) / $_POST['size'];
  71.221 -			$padding = $_POST['size'] - 
  71.222 -				(filesize($tmp_dir."fd") % $_POST['size']);
  71.223 -		}
  71.224 -	}
  71.225 -	$sizes = array(
  71.226 -		"368640" => "360 KB",   "737280" => "720 KB",
  71.227 -		"1228800" => "1.20 MB",
  71.228 -		"1474560" => "1.44 MB", "1638400" => "1.60 MB",
  71.229 -		"1720320" => "1.68 MB", "1763328" => "1.72 MB",
  71.230 -		"1784832" => "1.74 MB", "1802240" => "1.76 MB",
  71.231 -		"1884160" => "1.84 MB", "1966080" => "1.92 MB", 
  71.232 -		"2015232" => "1.96 MB", "2949120" => "2.88 MB",
  71.233 -		"3440640" => "3.36 MB", "3526656" => "3.44 MB",
  71.234 -		"3932160" => "3.84 MB", "4030464" => "3.92 MB",
  71.235 -		"0"       => "no limit"
  71.236 -	);
  71.237 -
  71.238 -function show_size($size)
  71.239 -{
  71.240 -	global $sizes;
  71.241 -	if ($size != 0) return " ".$sizes[$size];
  71.242 -}
  71.243 -	if (!isset($count)) {
  71.244 -?>
  71.245 -<div class="nav_box">
  71.246 -<h4>How does it work ?</h4>
  71.247 -<p>
  71.248 -This tool updates the boot sector of your kernel with
  71.249 -<a href="http://hg.slitaz.org/wok/raw-file/b84ff32e3457/linux/stuff/linux-header-2.6.34.u">this patch</a>.
  71.250 -You may add a default cmdline and an initramfs. The cmdline can be edited at boot
  71.251 -time but the keyboard is not mandatory.
  71.252 -A <a href="bootloader"> standalone version</a> is available.
  71.253 -</p>
  71.254 -<p>
  71.255 -Each part (boot, setup, cmdline, kernel, initramfs) is aligned to 512 bytes.
  71.256 -The result is split to fit the floppy size.
  71.257 -The last floppy image is padded with zeros.
  71.258 -</p>
  71.259 -</div>
  71.260 -<?php
  71.261 -	}
  71.262 -	else {
  71.263 -?>
  71.264 -<div class="nav_box">
  71.265 -<h4>Download image<?php if ($count >= 2) echo "s"; ?></h4>
  71.266 -<ul>
  71.267 -<?php
  71.268 -		for ($i = 1; $i <= $count; $i++) {
  71.269 -			echo '	<li><a href="'.$_SERVER["PHP_SELF"].
  71.270 -			     "?id=".basename($tmp_dir)."&amp;n=$i&amp;s=".
  71.271 -			     $_POST["size"].'">'.sprintf("fd%03d.img",$i).
  71.272 -			     show_size($_POST["size"])."</a></li>\n";
  71.273 -		}
  71.274 -		echo "</ul>\n".floor($padding/1024)."KB padding.\n";
  71.275 -?>
  71.276 -</div>
  71.277 -<?php
  71.278 -	}
  71.279 -?>
  71.280 -
  71.281 -<!-- End navigation menu -->
  71.282 -</div>
  71.283 -
  71.284 -<!-- Content top. -->
  71.285 -<div id="content_top">
  71.286 -<div class="top_left"></div>
  71.287 -<div class="top_right"></div>
  71.288 -</div>
  71.289 -
  71.290 -<!-- Content -->
  71.291 -<div id="content">
  71.292 -
  71.293 -<h1><font color="#3e1220">Boot</font></h1>
  71.294 -<h2><font color="#df8f06">Floppy image set builder</font></h2>
  71.295 -
  71.296 -<?php
  71.297 -	if (!isset($count)) {
  71.298 -		$max = rtrim(ini_get('upload_max_filesize'),"M");
  71.299 -		$max_post = rtrim(ini_get('post_max_size'),"M");
  71.300 -		if ($max_post < $max) $max = $max_post;
  71.301 -		$msg = "the tiny boot loader can't load more than 15 MB";
  71.302 -		if ($max < 16)
  71.303 -			$msg = "the web server can't upload more than $max MB";
  71.304 -?>
  71.305 -<form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
  71.306 -<table>
  71.307 -	<tr>
  71.308 -	<td>Linux kernel:</td>
  71.309 -	<td><input type="file" name="kernel" size="25" /> <i>required</i></td>
  71.310 -	</tr>
  71.311 -	<tr>
  71.312 -	<td>Initramfs / Initrd:</td>
  71.313 -	<td><input type="file" name="initrd" size="25" /> <i>optional</i></td>
  71.314 -	</tr>
  71.315 -	<tr>
  71.316 -	<td>Extra initramfs:</td>
  71.317 -	<td><input type="file" name="initrd2" size="25" /> <i>optional</i></td>
  71.318 -	</tr>
  71.319 -	<tr>
  71.320 -	<td>Default cmdline:</td>
  71.321 -	<td><input type="text" name="cmdline" size="36" <?php 
  71.322 -		if (isset($_GET['cmdline'])) echo 'value="'.$_GET['cmdline'].'"';
  71.323 -	?>/> <i>optional</i></td>
  71.324 -	</tr>
  71.325 -	<tr>
  71.326 -	<td>Root device:</td>
  71.327 -	<td><input type="text" name="rdev" size="8" value="<?php
  71.328 -		if (isset($_GET['rdev'])) echo $_GET['rdev'];
  71.329 -		else echo "/dev/fd0";
  71.330 -	?>" />
  71.331 -	&nbsp;&nbsp;Root flags: <select name="flags">
  71.332 -		<option value="1">R/O</option>
  71.333 -		<option value="0" <?php
  71.334 -			if (isset($_GET['rdev']) && $_GET['rdev'] == "0")
  71.335 -				echo ' selected="selected"'
  71.336 -		?>>R/W</option>
  71.337 -	</select>
  71.338 -	&nbsp;&nbsp;VGA mode: <select name="video">
  71.339 -		<?php
  71.340 -			$selected=-1;
  71.341 -			if (isset($_GET['video'])) $selected = $_GET['video'];
  71.342 -			$options = array();
  71.343 -			$options[-3] = "Ask";
  71.344 -			$options[-2] = "Ext";
  71.345 -			$options[-1] = "Std";
  71.346 -			for ($i = 0; $i < 64; $i++) $options[$i] = $i;
  71.347 -			foreach ($options as $key => $value) {
  71.348 -				echo '<option value="'.$key.'"';
  71.349 -				if ($key == $selected || $value == $selected)
  71.350 -					echo ' selected="selected"';
  71.351 -				echo '>'.$value."</option>\n";
  71.352 -			}
  71.353 -		?>
  71.354 -	</select>
  71.355 -	</td>
  71.356 -	</tr>
  71.357 -	<tr>
  71.358 -	<td>Floppy size:</td>
  71.359 -	<td><select name="size">
  71.360 -<?php
  71.361 -	foreach ($sizes as $key => $value) {
  71.362 -		echo "		<option value=\"$key\"";
  71.363 -		if ($key == "1474560") echo " selected='selected'";
  71.364 -		echo ">$value</option>\n";
  71.365 -	}
  71.366 -?>
  71.367 -	</select>
  71.368 -		<input name="build" value="Build floppy set" type="submit" />
  71.369 -	</td>
  71.370 -	</tr>
  71.371 -</table>
  71.372 -</form>
  71.373 -<?php
  71.374 -		echo <<<EOT
  71.375 -<p>
  71.376 -Note 1: $msg of files (kernel and initramfs) in memory.
  71.377 -</p>
  71.378 -<p>
  71.379 -Note 2: the extra initramfs may be useful to add your own configuration files.
  71.380 -</p>
  71.381 -EOT;
  71.382 -	}
  71.383 -	else {
  71.384 -?>
  71.385 -
  71.386 -<p>
  71.387 -You can write floppies with SliTaz <i>bootfloppybox</i>, 
  71.388 -<a href="http://en.wikipedia.org/wiki/RaWrite">Windows rawrite</a> or simply dd:
  71.389 -</p>
  71.390 -<pre># dd if=fd001.img of=/dev/fd0
  71.391 -</pre>
  71.392 -
  71.393 -<p>
  71.394 -Start your computer with <i>fd001.img</i>. It will show the kernel version string and
  71.395 -the kernel cmdline line. You can edit the cmdline. Most users can just press Enter.
  71.396 -</p>
  71.397 -
  71.398 -<?php
  71.399 -		if ($count >= 2) {
  71.400 -?>
  71.401 -<p>
  71.402 -The floppy is then loaded into memory (one dot each 64k) and you will be prompted to
  71.403 -insert the next floppy, <i>fd002.img</i>. And so on.
  71.404 -</p>
  71.405 -
  71.406 -<p>
  71.407 -The floppy set detects disk swaps and can be used without keyboard.
  71.408 -</p>
  71.409 -<?php
  71.410 -		}
  71.411 -?>
  71.412 -<p>
  71.413 -Good luck.
  71.414 -</p>
  71.415 -<?php
  71.416 -	}
  71.417 -?>
  71.418 -
  71.419 -<!-- End of content with round corner -->
  71.420 -</div>
  71.421 -<div id="content_bottom">
  71.422 -<div class="bottom_left"></div>
  71.423 -<div class="bottom_right"></div>
  71.424 -</div>
  71.425 -
  71.426 -<!-- Start of footer and copy notice -->
  71.427 -<div id="copy">
  71.428 -<p>
  71.429 -Copyright &copy; <?php echo date('Y'); ?> <a href="http://www.slitaz.org/">SliTaz</a> -
  71.430 -<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
  71.431 -</p>
  71.432 -<!-- End of copy -->
  71.433 -</div>
  71.434 -
  71.435 -<!-- Bottom and logo's -->
  71.436 -<div id="bottom">
  71.437 -<p>
  71.438 -<a href="http://validator.w3.org/check?uri=referer"><img src="../../css/pics/website/xhtml10.png" alt="Valid XHTML 1.0" title="Code validé XHTML 1.0" style="width: 80px; height: 15px;" /></a>
  71.439 -</p>
  71.440 -</div>
  71.441 -
  71.442 -</body>
  71.443 -</html>
    72.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/floppies/index.html	Fri Feb 25 00:13:56 2011 +0000
    72.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    72.3 @@ -1,206 +0,0 @@
    72.4 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    72.5 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    72.6 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
    72.7 -<head>
    72.8 -	<title>SliTaz Boot Floppies</title>
    72.9 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   72.10 -	<meta name="description" content="slitaz boot floppies" />
   72.11 -	<meta name="robots" content="index, nofollow" />
   72.12 -	<meta name="author" content="SliTaz Contributors" />
   72.13 -	<link rel="shortcut icon" href="../css/favicon.ico" />
   72.14 -	<link rel="stylesheet" type="text/css" href="../css/slitaz.css" />
   72.15 -</head>
   72.16 -<body bgcolor="#ffffff">
   72.17 -<!-- Header -->
   72.18 -<div id="header">
   72.19 -    <a name="top"></a>
   72.20 -<!-- Access -->
   72.21 -<div id="access">
   72.22 -	<a href="../boot/floppy-grub4dos" title="Boot tools">Generic boot floppy</a> |
   72.23 -	<a href="http://pizza.slitaz.org/tiny/" title="SliTaz for (very) old PC">Tiny SliTaz</a> |
   72.24 -	<a href="loram/index.html" title="Floppy image sets for low ram systems">Loram floppies</a> |
   72.25 -	<a href="builder/index.php" title="Build floppies with your own kernel and initramfs">Floppy set web builder</a> |
   72.26 -	<a href="builder/bootloader" title="Build your floppy sets without Internet">Shell builder</a>
   72.27 -</div>   
   72.28 -	<a href="http://www.slitaz.org/"><img id="logo" 
   72.29 -	   src="../css/pics/website/logo.png" title="www.slitaz.org" 
   72.30 -	   alt="www.slitaz.org" 
   72.31 -	   style="border: 0px solid ; width: 200px; height: 74px;" /></a>
   72.32 -	<p id="titre">#!/boot/floppies</p>
   72.33 -</div>
   72.34 -
   72.35 -<!-- Navigation menu -->
   72.36 -<div id="nav">
   72.37 -
   72.38 -<div class="nav_box">
   72.39 -<h4>Download images 3.0</h4>
   72.40 -<ul>
   72.41 -	<li><a href="3.0/fd001.img">fd001.img 1.44Mb</a></li>
   72.42 -	<li><a href="3.0/fd002.img">fd002.img 1.44Mb</a></li>
   72.43 -	<li><a href="3.0/fd003.img">fd003.img 1.44Mb</a></li>
   72.44 -	<li><a href="3.0/fd004.img">fd004.img 1.44Mb</a></li>
   72.45 -	<li><a href="3.0/fd005.img">fd005.img 1.44Mb</a><br /></li>
   72.46 -	<li><a href="3.0/fd100.img">fd100.img 1.44Mb</a></li>
   72.47 -	<li><a href="3.0/fd101.img">fd101.img 1.44Mb</a></li>
   72.48 -	<li><a href="3.0/fd102.img">fd102.img 1.44Mb</a></li>
   72.49 -	<li><a href="3.0/fd103.img">fd103.img 1.44Mb</a></li>
   72.50 -	<li><a href="3.0/fd104.img">fd104.img 1.44Mb</a></li>
   72.51 -	<li><a href="3.0/fd105.img">fd105.img 1.44Mb</a><br /></li>
   72.52 -	<li><a href="3.0/fd200.img">fd200.img 1.44Mb</a></li>
   72.53 -	<li><a href="3.0/fd201.img">fd201.img 1.44Mb</a></li>
   72.54 -	<li><a href="3.0/fd202.img">fd202.img 1.44Mb</a></li>
   72.55 -	<li><a href="3.0/fd203.img">fd203.img 1.44Mb</a></li>
   72.56 -	<li><a href="3.0/fd204.img">fd204.img 1.44Mb</a></li>
   72.57 -	<li><a href="3.0/fd205.img">fd205.img 1.44Mb</a></li>
   72.58 -	<li><a href="3.0/fd206.img">fd206.img 1.44Mb</a></li>
   72.59 -	<li><a href="3.0/fd207.img">fd207.img 1.44Mb</a></li>
   72.60 -	<li><a href="3.0/fd208.img">fd208.img 1.44Mb</a></li>
   72.61 -	<li><a href="3.0/fd209.img">fd209.img 1.44Mb</a></li>
   72.62 -	<li><a href="3.0/fd210.img">fd210.img 1.44Mb</a><br /></li>
   72.63 -	<li><a href="3.0/md5sum">md5sum</a></li>
   72.64 -</ul>
   72.65 -</div>
   72.66 -
   72.67 -<div class="nav_box">
   72.68 -<h4>Download images 2.0</h4>
   72.69 -<ul>
   72.70 -	<li><a href="2.0/fd001.img">fd001.img 1.44Mb</a></li>
   72.71 -	<li><a href="2.0/fd002.img">fd002.img 1.44Mb</a></li>
   72.72 -	<li><a href="2.0/fd003.img">fd003.img 1.44Mb</a></li>
   72.73 -	<li><a href="2.0/fd004.img">fd004.img 1.44Mb</a></li>
   72.74 -	<li><a href="2.0/fd005.img">fd005.img 1.44Mb</a><br /></li>
   72.75 -	<li><a href="2.0/fd100.img">fd100.img 1.44Mb</a></li>
   72.76 -	<li><a href="2.0/fd101.img">fd101.img 1.44Mb</a></li>
   72.77 -	<li><a href="2.0/fd102.img">fd102.img 1.44Mb</a></li>
   72.78 -	<li><a href="2.0/fd103.img">fd103.img 1.44Mb</a></li>
   72.79 -	<li><a href="2.0/fd104.img">fd104.img 1.44Mb</a></li>
   72.80 -	<li><a href="2.0/fd105.img">fd105.img 1.44Mb</a><br /></li>
   72.81 -	<li><a href="2.0/fd200.img">fd200.img 1.44Mb</a></li>
   72.82 -	<li><a href="2.0/fd201.img">fd201.img 1.44Mb</a></li>
   72.83 -	<li><a href="2.0/fd202.img">fd202.img 1.44Mb</a></li>
   72.84 -	<li><a href="2.0/fd203.img">fd203.img 1.44Mb</a></li>
   72.85 -	<li><a href="2.0/fd204.img">fd204.img 1.44Mb</a></li>
   72.86 -	<li><a href="2.0/fd205.img">fd205.img 1.44Mb</a></li>
   72.87 -	<li><a href="2.0/fd206.img">fd206.img 1.44Mb</a></li>
   72.88 -	<li><a href="2.0/fd207.img">fd207.img 1.44Mb</a></li>
   72.89 -	<li><a href="2.0/fd208.img">fd208.img 1.44Mb</a></li>
   72.90 -	<li><a href="2.0/fd209.img">fd209.img 1.44Mb</a></li>
   72.91 -	<li><a href="2.0/fd210.img">fd210.img 1.44Mb</a><br /></li>
   72.92 -	<li><a href="2.0/md5sum">md5sum</a></li>
   72.93 -</ul>
   72.94 -</div>
   72.95 -
   72.96 -<div class="nav_box">
   72.97 -<h4>Download images 1.0</h4>
   72.98 -<ul>
   72.99 -	<li><a href="1.0/fd001.img">fd001.img 1.44Mb</a></li>
  72.100 -	<li><a href="1.0/fd002.img">fd002.img 1.44Mb</a><br /></li>
  72.101 -	<li><a href="1.0/fd100.img">fd100.img 1.44Mb</a></li>
  72.102 -	<li><a href="1.0/fd101.img">fd101.img 1.44Mb</a></li>
  72.103 -	<li><a href="1.0/fd102.img">fd102.img 1.44Mb</a></li>
  72.104 -	<li><a href="1.0/fd103.img">fd103.img 1.44Mb</a></li>
  72.105 -	<li><a href="1.0/fd104.img">fd104.img 1.44Mb</a></li>
  72.106 -	<li><a href="1.0/fd105.img">fd105.img 1.44Mb</a></li>
  72.107 -	<li><a href="1.0/fd106.img">fd106.img 1.44Mb</a></li>
  72.108 -	<li><a href="1.0/fd107.img">fd107.img 1.44Mb</a></li>
  72.109 -	<li><a href="1.0/fd108.img">fd108.img 1.44Mb</a></li>
  72.110 -	<li><a href="1.0/fd109.img">fd109.img 1.44Mb</a></li>
  72.111 -	<li><a href="1.0/fd110.img">fd110.img 1.44Mb</a></li>
  72.112 -	<li><a href="1.0/fd111.img">fd111.img 1.44Mb</a></li>
  72.113 -	<li><a href="1.0/fd112.img">fd112.img 1.44Mb</a></li>
  72.114 -	<li><a href="1.0/fd113.img">fd113.img 1.44Mb</a></li>
  72.115 -	<li><a href="1.0/fd114.img">fd114.img 1.44Mb</a></li>
  72.116 -	<li><a href="1.0/fd115.img">fd115.img 1.44Mb</a><br /></li>
  72.117 -	<li><a href="1.0/md5sum">md5sum</a></li>
  72.118 -</ul>
  72.119 -</div>
  72.120 -
  72.121 -<!-- End navigation menu -->
  72.122 -</div>
  72.123 -
  72.124 -<!-- Content top. -->
  72.125 -<div id="content_top">
  72.126 -<div class="top_left"></div>
  72.127 -<div class="top_right"></div>
  72.128 -</div>
  72.129 -
  72.130 -<!-- Content -->
  72.131 -<div id="content">
  72.132 -
  72.133 -<h1><font color="#3e1220">Boot</font></h1>
  72.134 -<h2><font color="#df8f06">Floppy image set</font></h2>
  72.135 -
  72.136 -<p>
  72.137 -This floppy set will boot a Slitaz stable version. You can write floppies
  72.138 -with SliTaz <i>bootfloppybox</i>, 
  72.139 -<a href="http://en.wikipedia.org/wiki/RaWrite">Windows rawrite</a> or simply dd:
  72.140 -</p><pre># dd if=fd001.img of=/dev/fd0
  72.141 -</pre>
  72.142 -
  72.143 -<p>
  72.144 -If you have a CD-ROM, an USB port and an USB key or a network card, but you
  72.145 -can't boot these devices directly, then try
  72.146 -<a href="http://mirror.slitaz.org/boot/floppy-grub4dos">floppy-grub4dos</a> 
  72.147 -first. This 1.44Mb floppy provides tiny programs to boot these devices without BIOS
  72.148 -support and some other tools.
  72.149 -</p>
  72.150 -<p>
  72.151 -You can start with one of the 3 following flavors :
  72.152 -</p><ul>
  72.153 -  <li>
  72.154 -  <b>base</b> needs 32Mb of RAM and 5 floppies: <i>fd001.img</i> to <i>fd005.img</i>.<br />
  72.155 -  base provides the minimum slitaz distribution subset in text mode. 
  72.156 -  </li>
  72.157 -  <li>
  72.158 -  <b>justx</b> needs 96M of RAM and 11 floppies: <i>fd001.img</i> to <i>fd105.img</i>.<br />
  72.159 -  justx provides the minimum slitaz distribution subset with X11 support. 
  72.160 -  </li>
  72.161 -  <li>
  72.162 -  <b>core</b> needs 160M of RAM and 22 floppies: <i>fd001.img</i> to <i>fd210.img</i>.<br />
  72.163 -  core provides the default slitaz distribution. 
  72.164 -  </li>
  72.165 -</ul>
  72.166 -
  72.167 -Start your computer with <i>fd001.img</i>. It will show the kernel version string and
  72.168 -the kernel cmdline line. You can edit the cmdline. Most users can just press Enter.
  72.169 -
  72.170 -<p>
  72.171 -The floppy is then loaded into memory (one dot each 64k) and you will be prompted to
  72.172 -insert the next floppy, <i>fd002.img</i>. And so on up to <i>fd005.img</i>.
  72.173 -</p>
  72.174 -<p>
  72.175 -The base flavor will then start and you will be prompted to insert extra floppies
  72.176 -for justx and core flavors. You can bypass this by using Q and Enter.
  72.177 -</p>
  72.178 -<p>
  72.179 -Each floppy set detects disk swaps and can be used without a keyboard.
  72.180 -</p>
  72.181 -<p>
  72.182 -Good luck.
  72.183 -</p>
  72.184 -
  72.185 -<!-- End of content with round corner -->
  72.186 -</div>
  72.187 -<div id="content_bottom">
  72.188 -<div class="bottom_left"></div>
  72.189 -<div class="bottom_right"></div>
  72.190 -</div>
  72.191 -
  72.192 -<!-- Start of footer and copy notice -->
  72.193 -<div id="copy">
  72.194 -<p>
  72.195 -Copyright &copy; <span class="year"></span> <a href="http://www.slitaz.org/">SliTaz</a> -
  72.196 -<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
  72.197 -</p>
  72.198 -<!-- End of copy -->
  72.199 -</div>
  72.200 -
  72.201 -<!-- Bottom and logo's -->
  72.202 -<div id="bottom">
  72.203 -<p>
  72.204 -<a href="http://validator.w3.org/check?uri=referer"><img src="../css/pics/website/xhtml10.png" alt="Valid XHTML 1.0" title="Code validé XHTML 1.0" style="width: 80px; height: 15px;" /></a>
  72.205 -</p>
  72.206 -</div>
  72.207 -
  72.208 -</body>
  72.209 -</html>
    73.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/floppies/loram/index.html	Fri Feb 25 00:13:56 2011 +0000
    73.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    73.3 @@ -1,155 +0,0 @@
    73.4 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    73.5 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    73.6 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
    73.7 -<head>
    73.8 -	<title>SliTaz Boot Floppies</title>
    73.9 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   73.10 -	<meta name="description" content="slitaz loram boot floppies" />
   73.11 -	<meta name="robots" content="index, nofollow" />
   73.12 -	<meta name="author" content="SliTaz Contributors" />
   73.13 -	<link rel="shortcut icon" href="../../css/favicon.ico" />
   73.14 -	<link rel="stylesheet" type="text/css" href="../../css/slitaz.css" />
   73.15 -</head>
   73.16 -<body bgcolor="#ffffff">
   73.17 -<!-- Header -->
   73.18 -<div id="header">
   73.19 -    <a name="top"></a>
   73.20 -<!-- Access -->
   73.21 -<div id="access">
   73.22 -	<a href="../../boot/floppy-grub4dos" title="Boot tools">Generic boot floppy</a> |
   73.23 -	<a href="http://pizza.slitaz.org/tiny/" title="SliTaz for (very) old PC">Tiny SliTaz</a> |
   73.24 -	<a href="../builder/index.php" title="Build floppies with your own kernel and initramfs">Floppy set web builder</a> |
   73.25 -	<a href="../builder/bootloader" title="Build your floppy sets without Internet">Shell builder</a>
   73.26 -</div>   
   73.27 -	<a href="http://www.slitaz.org/"><img id="logo" 
   73.28 -	   src="../../css/pics/website/logo.png" title="www.slitaz.org" 
   73.29 -	   alt="www.slitaz.org" 
   73.30 -	   style="border: 0px solid ; width: 200px; height: 74px;" /></a>
   73.31 -	<p id="titre">#!/boot/floppies/loram</p>
   73.32 -</div>
   73.33 -
   73.34 -<!-- Navigation menu -->
   73.35 -<div id="nav">
   73.36 -
   73.37 -<div class="nav_box">
   73.38 -<h4>Images loram 3.0</h4>
   73.39 -<ul>
   73.40 -	<li><a href="fd001.img">fd001.img 1.44Mb</a></li>
   73.41 -	<li><a href="fd002.img">fd002.img 1.44Mb</a></li>
   73.42 -	<li><a href="fd003.img">fd003.img 1.44Mb</a><br /></li>
   73.43 -	<li><a href="fd100.img">fd100.img 1.44Mb</a></li>
   73.44 -	<li><a href="fd101.img">fd101.img 1.44Mb</a></li>
   73.45 -	<li><a href="fd102.img">fd102.img 1.44Mb</a></li>
   73.46 -	<li><a href="fd103.img">fd103.img 1.44Mb</a><br /></li>
   73.47 -	<li><a href="fd200.img">fd200.img 1.44Mb</a></li>
   73.48 -	<li><a href="fd201.img">fd201.img 1.44Mb</a></li>
   73.49 -	<li><a href="fd202.img">fd202.img 1.44Mb</a></li>
   73.50 -	<li><a href="fd203.img">fd203.img 1.44Mb</a></li>
   73.51 -	<li><a href="fd204.img">fd204.img 1.44Mb</a></li>
   73.52 -	<li><a href="fd205.img">fd205.img 1.44Mb</a></li>
   73.53 -	<li><a href="fd206.img">fd206.img 1.44Mb</a><br /></li>
   73.54 -	<li><a href="fd300.img">fd300.img 1.44Mb</a></li>
   73.55 -	<li><a href="fd301.img">fd301.img 1.44Mb</a></li>
   73.56 -	<li><a href="fd302.img">fd302.img 1.44Mb</a></li>
   73.57 -	<li><a href="fd303.img">fd303.img 1.44Mb</a></li>
   73.58 -	<li><a href="fd304.img">fd304.img 1.44Mb</a></li>
   73.59 -	<li><a href="fd305.img">fd305.img 1.44Mb</a></li>
   73.60 -	<li><a href="fd306.img">fd306.img 1.44Mb</a></li>
   73.61 -	<li><a href="fd307.img">fd307.img 1.44Mb</a></li>
   73.62 -	<li><a href="fd308.img">fd308.img 1.44Mb</a></li>
   73.63 -	<li><a href="fd309.img">fd309.img 1.44Mb</a></li>
   73.64 -	<li><a href="fd310.img">fd310.img 1.44Mb</a></li>
   73.65 -	<li><a href="fd311.img">fd311.img 1.44Mb</a><br /></li>
   73.66 -	<li><a href="md5sum">md5sum</a></li>
   73.67 -</ul>
   73.68 -</div>
   73.69 -
   73.70 -<!-- End navigation menu -->
   73.71 -</div>
   73.72 -
   73.73 -<!-- Content top. -->
   73.74 -<div id="content_top">
   73.75 -<div class="top_left"></div>
   73.76 -<div class="top_right"></div>
   73.77 -</div>
   73.78 -
   73.79 -<!-- Content -->
   73.80 -<div id="content">
   73.81 -
   73.82 -<h1><font color="#3e1220">Boot</font></h1>
   73.83 -<h2><font color="#df8f06">Floppy image set</font></h2>
   73.84 -
   73.85 -<p>
   73.86 -This floppy set will boot a Slitaz stable loram version. You can write floppies
   73.87 -with SliTaz <i>bootfloppybox</i>, 
   73.88 -<a href="http://en.wikipedia.org/wiki/RaWrite">Windows rawrite</a> or simply dd:
   73.89 -</p><pre># dd if=fd001.img of=/dev/fd0
   73.90 -</pre>
   73.91 -
   73.92 -<p>
   73.93 -If you have a CD-ROM, an USB port and an USB key or a network card, but you
   73.94 -can't boot these devices directly, then try
   73.95 -<a href="http://mirror.slitaz.org/boot/floppy-grub4dos">floppy-grub4dos</a> 
   73.96 -first. This 1.44Mb floppy provides tiny programs to boot these devices without BIOS
   73.97 -support and some other tools.
   73.98 -</p>
   73.99 -<p>
  73.100 -You can start with one of the 3 following flavors :
  73.101 -</p><ul>
  73.102 -  <li>
  73.103 -  <b>base</b> needs 22Mb of RAM and 7 floppies: <i>fd001.img</i> to <i>fd103.img</i>.<br />
  73.104 -  base provides the minimum slitaz distribution subset in text mode. 
  73.105 -  </li>
  73.106 -  <li>
  73.107 -  <b>justx</b> needs 64M of RAM and 14 floppies: <i>fd001.img</i> to <i>fd206.img</i>.<br />
  73.108 -  justx provides the minimum slitaz distribution subset with X11 support. 
  73.109 -  </li>
  73.110 -  <li>
  73.111 -  <b>core</b> needs 92M of RAM and 26 floppies: <i>fd001.img</i> to <i>fd311.img</i>.<br />
  73.112 -  core provides the default slitaz distribution. 
  73.113 -  </li>
  73.114 -</ul>
  73.115 -
  73.116 -Start your computer with <i>fd001.img</i>. It will show the kernel version string and
  73.117 -the kernel cmdline line. You can edit the cmdline. Most users can just press Enter.
  73.118 -
  73.119 -<p>
  73.120 -The floppy is then loaded into memory (one dot each 64k) and you will be prompted to
  73.121 -insert the next floppy, <i>fd002.img</i>. And so on up to <i>fd003.img</i>.
  73.122 -</p>
  73.123 -<p>
  73.124 -The loram bootstrap will then start and you will be prompted to insert extra floppies
  73.125 -for base, justx and core flavors. You can bypass this by using Q and Enter.
  73.126 -</p>
  73.127 -<p>
  73.128 -Each floppy set detects disk swaps and can be used without a keyboard.
  73.129 -</p>
  73.130 -<p>
  73.131 -Good luck.
  73.132 -</p>
  73.133 -
  73.134 -<!-- End of content with round corner -->
  73.135 -</div>
  73.136 -<div id="content_bottom">
  73.137 -<div class="bottom_left"></div>
  73.138 -<div class="bottom_right"></div>
  73.139 -</div>
  73.140 -
  73.141 -<!-- Start of footer and copy notice -->
  73.142 -<div id="copy">
  73.143 -<p>
  73.144 -Copyright &copy; <span class="year"></span> <a href="http://www.slitaz.org/">SliTaz</a> -
  73.145 -<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
  73.146 -</p>
  73.147 -<!-- End of copy -->
  73.148 -</div>
  73.149 -
  73.150 -<!-- Bottom and logo's -->
  73.151 -<div id="bottom">
  73.152 -<p>
  73.153 -<a href="http://validator.w3.org/check?uri=referer"><img src="../../css/pics/website/xhtml10.png" alt="Valid XHTML 1.0" title="Code validé XHTML 1.0" style="width: 80px; height: 15px;" /></a>
  73.154 -</p>
  73.155 -</div>
  73.156 -
  73.157 -</body>
  73.158 -</html>
    74.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/mirrors	Fri Feb 25 00:13:56 2011 +0000
    74.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    74.3 @@ -1,10 +0,0 @@
    74.4 -http://mirror.slitaz.org/
    74.5 -http://mirror.switch.ch/ftp/mirror/slitaz/
    74.6 -http://www.gtlib.gatech.edu/pub/slitaz/
    74.7 -http://download.tuxfamily.org/slitaz/
    74.8 -http://mirror.lupaworld.com/slitaz/
    74.9 -http://slitaz.c3sl.ufpr.br/
   74.10 -ftp://ftp.pina.si/slitaz/
   74.11 -http://distro.ibiblio.org/pub/linux/distributions/slitaz/
   74.12 -http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/
   74.13 -http://slitaz.mirror.garr.it/mirrors/slitaz/
    75.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/pxe/defaults.cfg	Fri Feb 25 00:13:56 2011 +0000
    75.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    75.3 @@ -1,17 +0,0 @@
    75.4 -default menu.c32
    75.5 -prompt 0
    75.6 -
    75.7 -MENU TITLE Slitaz Web boot                                       http://www.slitaz.org/
    75.8 -ALLOWOPTIONS 0
    75.9 -MENU MARGIN 0
   75.10 -MENU ROWS 17
   75.11 -MENU COLOR BORDER       37;44 #40000000 #00000000 std
   75.12 -MENU COLOR TITLE      1;33;44 #c00090f0 #00000000 std
   75.13 -MENU COLOR SCROLLBAR    37;44 #40000000 #00000000 std
   75.14 -
   75.15 -#MENU COLOR TIMEOUT_MSG 1;33;44 #c00090f0 #00000000 std
   75.16 -#MENU COLOR TIMEOUT       37;40 #80ffffff #00000000 std
   75.17 -MENU TIMEOUTROW 25
   75.18 -MENU AUTOBOOT Start cooking in # second{,s}
   75.19 -timeout 100
   75.20 -TOTALTIMEOUT 9000
    76.1 --- a/mirror-tools/stuff/var/www/slitaz/mirror/pxe/mkcfg.sh	Fri Feb 25 00:13:56 2011 +0000
    76.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    76.3 @@ -1,176 +0,0 @@
    76.4 -#!/bin/sh
    76.5 -
    76.6 -#usage:
    76.7 -# copy /boot/isolinux/* <version>
    76.8 -# remove *.cfg
    76.9 -# copy then update /boot/isolinux/isolinux.cfg <version>core.cfg
   76.10 -
   76.11 -cd $(dirname $0)
   76.12 -
   76.13 -# Status functions.
   76.14 -status()
   76.15 -{
   76.16 -	local CHECK=$?
   76.17 -	echo -en "\\033[70G[ "
   76.18 -	if [ $CHECK = 0 ]; then
   76.19 -		echo -en "\\033[1;33mOK"
   76.20 -	else
   76.21 -		echo -en "\\033[1;31mFailed"
   76.22 -	fi
   76.23 -        echo -e "\\033[0;39m ]"
   76.24 -}
   76.25 -
   76.26 -directlinks()
   76.27 -{
   76.28 -	mkdir $1/$2
   76.29 -	ln -s .. $1/$2/$1
   76.30 -	ln -s ../$2.cfg $1/$2/default
   76.31 -	ln -s ../../pxelinux.0 $1/$2/pxelinux.0
   76.32 -	ln -s . $1/$2/pxelinux.cfg
   76.33 -	[ -e $1/boot ] || ln -s ../../boot $1/boot
   76.34 -}
   76.35 -for version in cooking $(ls ../boot | grep 0$) ; do
   76.36 -
   76.37 -[ "$version" = "1.0" ] && continue
   76.38 -echo -n "Building $version"
   76.39 -for i in splash.lss isolinux.msg core.cfg ; do
   76.40 -	[ -s $version/$i ] && continue
   76.41 -	echo -n " $version/$i not found !"
   76.42 -	false
   76.43 -	status
   76.44 -	continue 2
   76.45 -done
   76.46 -if ! grep -q $version/splash.lss $version/isolinux.msg ; then
   76.47 -	echo "WARNING: please update $version/isolinux.msg with $version/splash.lss"
   76.48 -fi
   76.49 -rm -f $version/*-*.cfg
   76.50 -( cd ../boot/$version ; ls rootfs-*.gz 2> /dev/null ) | \
   76.51 -sed 's/rootfs-\(.*\).gz/\1/' | while read flavor; do
   76.52 -	lowcased=$(echo $flavor | tr [A-Z] [a-z])
   76.53 -	if [ "$lowcased" != "$flavor" ]; then
   76.54 -		echo ""
   76.55 -		echo "Warning : renaming ../boot/$version/rootfs-$flavor.gz to ../boot/$version/rootfs-$lowcased.gz"
   76.56 -		mv ../boot/$version/rootfs-$flavor.gz ../boot/$version/rootfs-$lowcased.gz
   76.57 -		flavor=$lowcased
   76.58 -	fi
   76.59 -    	[ -f $version/$flavor.cfg ] && continue
   76.60 -        cp $version/core.cfg $version/$flavor.cfg
   76.61 -	sed -i -e "s/core-common/$flavor-common/" \
   76.62 -	       -e "s/^label slitaz$/say Using $flavor flavor.\nlabel slitaz/" \
   76.63 -	       -e "s/rootfs.gz/rootfs-$flavor.gz/" $version/$flavor.cfg
   76.64 -	directlinks $version $flavor
   76.65 -done
   76.66 -for flavor in $(cd $version ; ls *.cfg | sed 's/.cfg//') ; do
   76.67 -  echo -n " $flavor"
   76.68 -  cat > $version/$flavor-common.cfg <<EOT
   76.69 -default slitaz
   76.70 -label deCH
   76.71 -	config $version/$flavor-de_CH.cfg
   76.72 -label frCH
   76.73 -	config $version/$flavor-fr_CH.cfg
   76.74 -label reboot
   76.75 -	com32 reboot.c32
   76.76 -
   76.77 -implicit 0	
   76.78 -prompt 1	
   76.79 -timeout 80
   76.80 -F1 $version/help.txt
   76.81 -F2 $version/options.txt
   76.82 -F3 $version/isolinux.msg
   76.83 -F4 $version/display.txt
   76.84 -F5 $version/enhelp.txt
   76.85 -F6 $version/enopts.txt
   76.86 -
   76.87 -EOT
   76.88 -  while read cfg kbd loc ; do
   76.89 -    if [ ! -f $version/$cfg.kbd ]; then
   76.90 -    	echo ""
   76.91 -	echo "Not found: $version/$cfg.kbd"
   76.92 -    fi
   76.93 -    info="Now using $kbd keyboard and $loc locale."
   76.94 -    sed -e "s/^display/kbdmap $version\/$cfg.kbd\ndisplay/" \
   76.95 -        -e "s/^label slitaz$/say $info\nlabel slitaz/" \
   76.96 -        -e "s/gz/gz lang=$loc kmap=$kbd/" \
   76.97 -        < $version/$flavor.cfg > $version/$flavor-$cfg.cfg
   76.98 -    cat >> $version/$flavor-common.cfg <<EOT
   76.99 -label $cfg
  76.100 -	config $version/$flavor-$cfg.cfg
  76.101 -EOT
  76.102 -  done <<EOT
  76.103 -be    be-latin1    fr_FR
  76.104 -br    br-abnt2     pt_PT
  76.105 -ca    cf           fr_FR
  76.106 -de    de-latin1    de_DE
  76.107 -de_CH de_CH-latin1 de_DE
  76.108 -en    uk           C
  76.109 -es    es           es_ES
  76.110 -fi    fi-latin1    fi
  76.111 -fr    fr-latin1    fr_FR
  76.112 -fr_CH fr_CH-latin1 fr_FR
  76.113 -hu    hu           hu
  76.114 -it    it           it_IT
  76.115 -jp    jp106        jp_JP
  76.116 -pt    pt-latin1    pt_PT
  76.117 -ru    ru           ru_RU
  76.118 -us    us           C
  76.119 -EOT
  76.120 -done
  76.121 -status
  76.122 -
  76.123 -done
  76.124 -
  76.125 -echo -n "Building 1.0"
  76.126 -rm -f 1.0/*-*.cfg
  76.127 -( cd ../boot/1.0 ; ls rootfs-*.gz 2> /dev/null ) | \
  76.128 -sed 's/rootfs-\(.*\).gz/\1/' | while read flavor; do
  76.129 -    	[ -f 1.0/$flavor.cfg ] && continue
  76.130 -        cp 1.0/core.cfg 1.0/$flavor.cfg
  76.131 -	sed -i -e "s/core-common/$flavor-common/" \
  76.132 -	       -e "s/rootfs.gz/rootfs-$flavor.gz/" 1.0/$flavor.cfg
  76.133 -	directlinks 1.0 $flavor
  76.134 -done
  76.135 -directlinks 1.0 core
  76.136 -for flavor in $(cd 1.0; ls *.cfg | sed 's/.cfg//') ; do
  76.137 -  echo -n " $flavor"
  76.138 -  cat > 1.0/$flavor-common.cfg <<EOT
  76.139 -default slitaz
  76.140 -
  76.141 -label def
  76.142 -	config 1.0/$flavor.cfg
  76.143 -
  76.144 -label reboot
  76.145 -	com32 reboot.c32
  76.146 -
  76.147 -implicit 0	
  76.148 -prompt 1	
  76.149 -timeout 80
  76.150 -F1 1.0/help.txt
  76.151 -F2 1.0/options.txt
  76.152 -F3 1.0/isolinux.msg
  76.153 -F4 1.0/display.txt
  76.154 -EOT
  76.155 -  while read cfg kbd loc ; do
  76.156 -    if [ ! -f 1.0/$cfg.kbd ]; then
  76.157 -    	echo ""
  76.158 -	echo "Not found: 1.0/$cfg.kbd"
  76.159 -    fi
  76.160 -    sed -e "s/^display/KBDMAP 1.0\/$cfg.kbd\ndisplay/" \
  76.161 -        -e "s/gz/gz lang=$loc kmap=$kbd/" \
  76.162 -        < 1.0/$flavor.cfg > 1.0/$flavor-$cfg.cfg
  76.163 -    cat >> 1.0/$flavor-common.cfg <<EOT
  76.164 -label $cfg
  76.165 -	config 1.0/$flavor-$cfg.cfg
  76.166 -EOT
  76.167 -  done <<EOT
  76.168 -be    be    fr
  76.169 -ca    ca    fr
  76.170 -de_CH fr_CH fr_CH
  76.171 -en    en    en
  76.172 -es    es    en
  76.173 -fr    fr    fr
  76.174 -fr_CH fr_CH fr_CH
  76.175 -it    it    en
  76.176 -us    us    en
  76.177 -EOT
  76.178 -done
  76.179 -status