slitaz-dev-tools annotate mirror-tools/var/www/slitaz/mirror/pxe/mkcfg.sh @ rev 5

Add /var/www/mirror-info/mirror from mirror-tools stuff.
author Christopher Rogers <slaxemulator@gmail.com>
date Thu Feb 24 01:29:50 2011 +0000 (2011-02-24)
parents
children
rev   line source
slaxemulator@5 1 #!/bin/sh
slaxemulator@5 2
slaxemulator@5 3 #usage:
slaxemulator@5 4 # copy /boot/isolinux/* <version>
slaxemulator@5 5 # remove *.cfg
slaxemulator@5 6 # copy then update /boot/isolinux/isolinux.cfg <version>core.cfg
slaxemulator@5 7
slaxemulator@5 8 cd $(dirname $0)
slaxemulator@5 9
slaxemulator@5 10 # Status functions.
slaxemulator@5 11 status()
slaxemulator@5 12 {
slaxemulator@5 13 local CHECK=$?
slaxemulator@5 14 echo -en "\\033[70G[ "
slaxemulator@5 15 if [ $CHECK = 0 ]; then
slaxemulator@5 16 echo -en "\\033[1;33mOK"
slaxemulator@5 17 else
slaxemulator@5 18 echo -en "\\033[1;31mFailed"
slaxemulator@5 19 fi
slaxemulator@5 20 echo -e "\\033[0;39m ]"
slaxemulator@5 21 }
slaxemulator@5 22
slaxemulator@5 23 directlinks()
slaxemulator@5 24 {
slaxemulator@5 25 mkdir $1/$2
slaxemulator@5 26 ln -s .. $1/$2/$1
slaxemulator@5 27 ln -s ../$2.cfg $1/$2/default
slaxemulator@5 28 ln -s ../../pxelinux.0 $1/$2/pxelinux.0
slaxemulator@5 29 ln -s . $1/$2/pxelinux.cfg
slaxemulator@5 30 [ -e $1/boot ] || ln -s ../../boot $1/boot
slaxemulator@5 31 }
slaxemulator@5 32 for version in cooking $(ls ../boot | grep 0$) ; do
slaxemulator@5 33
slaxemulator@5 34 [ "$version" = "1.0" ] && continue
slaxemulator@5 35 echo -n "Building $version"
slaxemulator@5 36 for i in splash.lss isolinux.msg core.cfg ; do
slaxemulator@5 37 [ -s $version/$i ] && continue
slaxemulator@5 38 echo -n " $version/$i not found !"
slaxemulator@5 39 false
slaxemulator@5 40 status
slaxemulator@5 41 continue 2
slaxemulator@5 42 done
slaxemulator@5 43 if ! grep -q $version/splash.lss $version/isolinux.msg ; then
slaxemulator@5 44 echo "WARNING: please update $version/isolinux.msg with $version/splash.lss"
slaxemulator@5 45 fi
slaxemulator@5 46 rm -f $version/*-*.cfg
slaxemulator@5 47 ( cd ../boot/$version ; ls rootfs-*.gz 2> /dev/null ) | \
slaxemulator@5 48 sed 's/rootfs-\(.*\).gz/\1/' | while read flavor; do
slaxemulator@5 49 lowcased=$(echo $flavor | tr [A-Z] [a-z])
slaxemulator@5 50 if [ "$lowcased" != "$flavor" ]; then
slaxemulator@5 51 echo ""
slaxemulator@5 52 echo "Warning : renaming ../boot/$version/rootfs-$flavor.gz to ../boot/$version/rootfs-$lowcased.gz"
slaxemulator@5 53 mv ../boot/$version/rootfs-$flavor.gz ../boot/$version/rootfs-$lowcased.gz
slaxemulator@5 54 flavor=$lowcased
slaxemulator@5 55 fi
slaxemulator@5 56 [ -f $version/$flavor.cfg ] && continue
slaxemulator@5 57 cp $version/core.cfg $version/$flavor.cfg
slaxemulator@5 58 sed -i -e "s/core-common/$flavor-common/" \
slaxemulator@5 59 -e "s/^label slitaz$/say Using $flavor flavor.\nlabel slitaz/" \
slaxemulator@5 60 -e "s/rootfs.gz/rootfs-$flavor.gz/" $version/$flavor.cfg
slaxemulator@5 61 directlinks $version $flavor
slaxemulator@5 62 done
slaxemulator@5 63 for flavor in $(cd $version ; ls *.cfg | sed 's/.cfg//') ; do
slaxemulator@5 64 echo -n " $flavor"
slaxemulator@5 65 cat > $version/$flavor-common.cfg <<EOT
slaxemulator@5 66 default slitaz
slaxemulator@5 67 label deCH
slaxemulator@5 68 config $version/$flavor-de_CH.cfg
slaxemulator@5 69 label frCH
slaxemulator@5 70 config $version/$flavor-fr_CH.cfg
slaxemulator@5 71 label reboot
slaxemulator@5 72 com32 reboot.c32
slaxemulator@5 73
slaxemulator@5 74 implicit 0
slaxemulator@5 75 prompt 1
slaxemulator@5 76 timeout 80
slaxemulator@5 77 F1 $version/help.txt
slaxemulator@5 78 F2 $version/options.txt
slaxemulator@5 79 F3 $version/isolinux.msg
slaxemulator@5 80 F4 $version/display.txt
slaxemulator@5 81 F5 $version/enhelp.txt
slaxemulator@5 82 F6 $version/enopts.txt
slaxemulator@5 83
slaxemulator@5 84 EOT
slaxemulator@5 85 while read cfg kbd loc ; do
slaxemulator@5 86 if [ ! -f $version/$cfg.kbd ]; then
slaxemulator@5 87 echo ""
slaxemulator@5 88 echo "Not found: $version/$cfg.kbd"
slaxemulator@5 89 fi
slaxemulator@5 90 info="Now using $kbd keyboard and $loc locale."
slaxemulator@5 91 sed -e "s/^display/kbdmap $version\/$cfg.kbd\ndisplay/" \
slaxemulator@5 92 -e "s/^label slitaz$/say $info\nlabel slitaz/" \
slaxemulator@5 93 -e "s/gz/gz lang=$loc kmap=$kbd/" \
slaxemulator@5 94 < $version/$flavor.cfg > $version/$flavor-$cfg.cfg
slaxemulator@5 95 cat >> $version/$flavor-common.cfg <<EOT
slaxemulator@5 96 label $cfg
slaxemulator@5 97 config $version/$flavor-$cfg.cfg
slaxemulator@5 98 EOT
slaxemulator@5 99 done <<EOT
slaxemulator@5 100 be be-latin1 fr_FR
slaxemulator@5 101 br br-abnt2 pt_PT
slaxemulator@5 102 ca cf fr_FR
slaxemulator@5 103 de de-latin1 de_DE
slaxemulator@5 104 de_CH de_CH-latin1 de_DE
slaxemulator@5 105 en uk C
slaxemulator@5 106 es es es_ES
slaxemulator@5 107 fi fi-latin1 fi
slaxemulator@5 108 fr fr-latin1 fr_FR
slaxemulator@5 109 fr_CH fr_CH-latin1 fr_FR
slaxemulator@5 110 hu hu hu
slaxemulator@5 111 it it it_IT
slaxemulator@5 112 jp jp106 jp_JP
slaxemulator@5 113 pt pt-latin1 pt_PT
slaxemulator@5 114 ru ru ru_RU
slaxemulator@5 115 us us C
slaxemulator@5 116 EOT
slaxemulator@5 117 done
slaxemulator@5 118 status
slaxemulator@5 119
slaxemulator@5 120 done
slaxemulator@5 121
slaxemulator@5 122 echo -n "Building 1.0"
slaxemulator@5 123 rm -f 1.0/*-*.cfg
slaxemulator@5 124 ( cd ../boot/1.0 ; ls rootfs-*.gz 2> /dev/null ) | \
slaxemulator@5 125 sed 's/rootfs-\(.*\).gz/\1/' | while read flavor; do
slaxemulator@5 126 [ -f 1.0/$flavor.cfg ] && continue
slaxemulator@5 127 cp 1.0/core.cfg 1.0/$flavor.cfg
slaxemulator@5 128 sed -i -e "s/core-common/$flavor-common/" \
slaxemulator@5 129 -e "s/rootfs.gz/rootfs-$flavor.gz/" 1.0/$flavor.cfg
slaxemulator@5 130 directlinks 1.0 $flavor
slaxemulator@5 131 done
slaxemulator@5 132 directlinks 1.0 core
slaxemulator@5 133 for flavor in $(cd 1.0; ls *.cfg | sed 's/.cfg//') ; do
slaxemulator@5 134 echo -n " $flavor"
slaxemulator@5 135 cat > 1.0/$flavor-common.cfg <<EOT
slaxemulator@5 136 default slitaz
slaxemulator@5 137
slaxemulator@5 138 label def
slaxemulator@5 139 config 1.0/$flavor.cfg
slaxemulator@5 140
slaxemulator@5 141 label reboot
slaxemulator@5 142 com32 reboot.c32
slaxemulator@5 143
slaxemulator@5 144 implicit 0
slaxemulator@5 145 prompt 1
slaxemulator@5 146 timeout 80
slaxemulator@5 147 F1 1.0/help.txt
slaxemulator@5 148 F2 1.0/options.txt
slaxemulator@5 149 F3 1.0/isolinux.msg
slaxemulator@5 150 F4 1.0/display.txt
slaxemulator@5 151 EOT
slaxemulator@5 152 while read cfg kbd loc ; do
slaxemulator@5 153 if [ ! -f 1.0/$cfg.kbd ]; then
slaxemulator@5 154 echo ""
slaxemulator@5 155 echo "Not found: 1.0/$cfg.kbd"
slaxemulator@5 156 fi
slaxemulator@5 157 sed -e "s/^display/KBDMAP 1.0\/$cfg.kbd\ndisplay/" \
slaxemulator@5 158 -e "s/gz/gz lang=$loc kmap=$kbd/" \
slaxemulator@5 159 < 1.0/$flavor.cfg > 1.0/$flavor-$cfg.cfg
slaxemulator@5 160 cat >> 1.0/$flavor-common.cfg <<EOT
slaxemulator@5 161 label $cfg
slaxemulator@5 162 config 1.0/$flavor-$cfg.cfg
slaxemulator@5 163 EOT
slaxemulator@5 164 done <<EOT
slaxemulator@5 165 be be fr
slaxemulator@5 166 ca ca fr
slaxemulator@5 167 de_CH fr_CH fr_CH
slaxemulator@5 168 en en en
slaxemulator@5 169 es es en
slaxemulator@5 170 fr fr fr
slaxemulator@5 171 fr_CH fr_CH fr_CH
slaxemulator@5 172 it it en
slaxemulator@5 173 us us en
slaxemulator@5 174 EOT
slaxemulator@5 175 done
slaxemulator@5 176 status