tiny-slitaz annotate helper @ rev 26
Take care of busybox config
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Sep 07 11:54:26 2019 +0200 (2019-09-07) |
parents | 293348721e35 |
children | cb1743f12df8 |
rev | line source |
---|---|
pascal@0 | 1 #!/bin/sh |
pascal@0 | 2 # $0 kernel size [initrd] |
pascal@0 | 3 |
pascal@1 | 4 init() |
pascal@1 | 5 { |
pascal@23 | 6 [ "$(ls -t pkgs | sed q)" = "files.list.lzma" ] || |
pascal@2 | 7 for i in pkgs/*/receipt ; do |
pascal@2 | 8 . $i |
pascal@2 | 9 sed "s/^/$PACKAGE: /" $(dirname $i)/files.list |
pascal@2 | 10 done | lzma e pkgs/files.list.lzma -si |
pascal@1 | 11 } |
pascal@1 | 12 |
pascal@6 | 13 |
pascal@6 | 14 |
pascal@6 | 15 |
pascal@0 | 16 list_pkgs() |
pascal@0 | 17 { |
pascal@0 | 18 TMPDIR=$2 |
pascal@0 | 19 shift 2 |
pascal@0 | 20 cat <<EOT |
pascal@6 | 21 <div class="large"> |
pascal@0 | 22 <table> |
pascal@6 | 23 <thead> |
pascal@6 | 24 <tr> |
pascal@6 | 25 <th> </th> |
pascal@6 | 26 <th>Package</th> |
pascal@6 | 27 <th>Version</th> |
pascal@6 | 28 <th>Description</th> |
pascal@6 | 29 <th>Disk</th> |
pascal@6 | 30 <th>Memory</th> |
pascal@6 | 31 <th> </th> |
pascal@6 | 32 </tr> |
pascal@6 | 33 </thead> |
pascal@6 | 34 <tbody> |
pascal@0 | 35 EOT |
pascal@26 | 36 unlzma < $TMPDIR/pkgs/linux-[2-9]*/fs.cpio.lzma | \ |
pascal@26 | 37 ( cd $TMPDIR/fs ; cpio -idmu boot/config-busybox ) |
pascal@6 | 38 for i in $TMPDIR/pkgs/*/receipt pkgs/*/receipt; do |
pascal@0 | 39 [ -s $i ] || continue |
pascal@0 | 40 case "$i" in |
pascal@6 | 41 pkgs/kernel-*/receipt) continue;; |
pascal@6 | 42 pkgs/module-*/receipt) continue;; |
pascal@0 | 43 esac |
pascal@6 | 44 AUTO_SELECTION='' |
pascal@6 | 45 UNPACKED_SIZE='-' |
pascal@6 | 46 PACKED_SIZE='-' |
pascal@6 | 47 checked=''; hidden_var='' |
pascal@0 | 48 . $i |
pascal@0 | 49 case " $@ " in |
pascal@6 | 50 *\ $PACKAGE\ *) checked='checked="checked"';; |
pascal@6 | 51 *) [ -n "$2" ] && checked="";; |
pascal@0 | 52 esac |
pascal@0 | 53 grep -qs "^$PACKAGE " $TMPDIR/uploadconf && |
pascal@0 | 54 checked='checked="checked"' |
pascal@5 | 55 case "$AUTO_SELECTION" in |
pascal@26 | 56 never) |
pascal@26 | 57 continue;; |
pascal@26 | 58 always) |
pascal@26 | 59 checked='checked="checked" disabled' |
pascal@26 | 60 hidden_var="<input type=\"hidden\" name=\"selected[]\" value=\"$PACKAGE\" />";; |
pascal@26 | 61 CONF*) |
pascal@26 | 62 grep -qs "^$AUTO_SELECTION=y$" $TMPDIR/fs/boot/config-busybox || |
pascal@26 | 63 checked='disabled';; |
pascal@5 | 64 esac |
pascal@0 | 65 cat <<EOT |
pascal@6 | 66 <tr> |
pascal@6 | 67 <td>$hidden_var |
pascal@6 | 68 <input type="checkbox" name="selected[]" value="$PACKAGE" $checked /></td> |
pascal@6 | 69 <td><a href="?dl=$PACKAGE-$VERSION&tmp=$TMPDIR">$PACKAGE</a></td> |
pascal@6 | 70 <td>$VERSION</td> |
pascal@6 | 71 <td>$SHORT_DESC</td> |
pascal@6 | 72 <td>$PACKED_SIZE</td> |
pascal@6 | 73 <td>$UNPACKED_SIZE</td> |
pascal@6 | 74 <td>$(grep -qs ^config_form $i && echo '»')</td> |
pascal@6 | 75 </tr> |
pascal@0 | 76 EOT |
pascal@0 | 77 done |
pascal@0 | 78 cat <<EOT |
pascal@6 | 79 </tbody> |
pascal@0 | 80 </table> |
pascal@6 | 81 </div> |
pascal@0 | 82 EOT |
pascal@0 | 83 exit |
pascal@0 | 84 } |
pascal@0 | 85 |
pascal@6 | 86 |
pascal@6 | 87 |
pascal@6 | 88 |
pascal@0 | 89 list_kernels() |
pascal@0 | 90 { |
pascal@0 | 91 TMPDIR=$2 |
pascal@0 | 92 shift 2 |
pascal@0 | 93 cat <<EOT |
pascal@6 | 94 <div class="large"> |
pascal@0 | 95 <table> |
pascal@6 | 96 <thead> |
pascal@6 | 97 <tr> |
pascal@6 | 98 <th> </th> |
pascal@6 | 99 <th>Kernel</th> |
pascal@6 | 100 <th>Version</th> |
pascal@6 | 101 <th>Description</th> |
pascal@6 | 102 <!-- th>Size</th --> |
pascal@6 | 103 </tr> |
pascal@6 | 104 </thead> |
pascal@6 | 105 <tbody> |
pascal@0 | 106 EOT |
pascal@0 | 107 checked='checked="checked"' |
pascal@0 | 108 for i in $TMPDIR/pkgs/*/receipt pkgs/*/receipt ; do |
pascal@0 | 109 [ -s $i ] || continue |
pascal@0 | 110 case "$i" in |
pascal@6 | 111 pkgs/kernel-*/receipt);; |
pascal@6 | 112 *) continue;; |
pascal@0 | 113 esac |
pascal@0 | 114 UNPACKED_SIZE="-" |
pascal@0 | 115 . $i |
pascal@0 | 116 case " $@ " in |
pascal@6 | 117 *\ $PACKAGE\ *) checked='checked="checked"' ;; |
pascal@6 | 118 *) [ -n "$2" ] && checked="";; |
pascal@0 | 119 esac |
pascal@0 | 120 cat <<EOT |
pascal@6 | 121 <tr> |
pascal@6 | 122 <td><input type="radio" name="kernel" value="$PACKAGE" $checked/></td> |
pascal@6 | 123 <td>${PACKAGE#kernel-}</td> |
pascal@6 | 124 <td>$VERSION</td> |
pascal@6 | 125 <td>$SHORT_DESC</td> |
pascal@6 | 126 <!-- td>$UNPACKED_SIZE</td --> |
pascal@6 | 127 </tr> |
pascal@0 | 128 EOT |
pascal@0 | 129 checked="" |
pascal@0 | 130 done |
pascal@0 | 131 cat <<EOT |
pascal@6 | 132 </tbody> |
pascal@0 | 133 </table> |
pascal@6 | 134 </div> |
pascal@0 | 135 EOT |
pascal@0 | 136 exit |
pascal@0 | 137 } |
pascal@0 | 138 |
pascal@6 | 139 |
pascal@6 | 140 |
pascal@6 | 141 |
pascal@0 | 142 list_modules() |
pascal@0 | 143 { |
pascal@0 | 144 TMPDIR=$2 |
pascal@0 | 145 shift 2 |
pascal@0 | 146 cat <<EOT |
pascal@6 | 147 <input type="hidden" name="selected[]" value="" /> |
pascal@6 | 148 <div class="large"> |
pascal@0 | 149 <table> |
pascal@6 | 150 <thead> |
pascal@6 | 151 <tr> |
pascal@6 | 152 <th> </th> |
pascal@6 | 153 <th>Module</th> |
pascal@6 | 154 <th>Version</th> |
pascal@6 | 155 <th>Description</th> |
pascal@13 | 156 <th>Disk</th> |
pascal@13 | 157 <th>Memory</th> |
pascal@6 | 158 <th> </th> |
pascal@6 | 159 </tr> |
pascal@6 | 160 </thead> |
pascal@6 | 161 <tbody> |
pascal@0 | 162 EOT |
pascal@0 | 163 for i in $TMPDIR/pkgs/*/receipt pkgs/*/receipt ; do |
pascal@0 | 164 [ -s $i ] || continue |
pascal@0 | 165 case "$i" in |
pascal@6 | 166 pkgs/module-*/receipt);; |
pascal@6 | 167 *) continue;; |
pascal@0 | 168 esac |
pascal@6 | 169 UNPACKED_SIZE='-' |
pascal@0 | 170 . $i |
pascal@6 | 171 checked='' |
pascal@0 | 172 case " $@ " in |
pascal@6 | 173 *\ $PACKAGE\ *) checked='checked="checked"' ;; |
pascal@0 | 174 esac |
pascal@0 | 175 grep -qs "^$PACKAGE " $TMPDIR/uploadconf && |
pascal@0 | 176 checked='checked="checked"' |
pascal@0 | 177 cat <<EOT |
pascal@6 | 178 <tr> |
pascal@6 | 179 <td><input type="checkbox" name="selected[]" value="$PACKAGE" $checked/></td> |
pascal@6 | 180 <td>${PACKAGE#module-}</td> |
pascal@6 | 181 <td>$VERSION</td> |
pascal@6 | 182 <td>$SHORT_DESC</td> |
pascal@13 | 183 <td>$PACKED_SIZE</td> |
pascal@6 | 184 <td>$UNPACKED_SIZE</td> |
pascal@6 | 185 <td>$(grep -qs ^config_form $i && echo '»')</td> |
pascal@6 | 186 </tr> |
pascal@0 | 187 EOT |
pascal@0 | 188 done |
pascal@0 | 189 cat <<EOT |
pascal@6 | 190 </tbody> |
pascal@0 | 191 </table> |
pascal@6 | 192 </div> |
pascal@0 | 193 EOT |
pascal@0 | 194 exit |
pascal@0 | 195 } |
pascal@0 | 196 |
pascal@6 | 197 |
pascal@6 | 198 |
pascal@6 | 199 |
pascal@0 | 200 get_receipt() |
pascal@0 | 201 { |
pascal@0 | 202 grep -l "PACKAGE=\"$1\"" $2/pkgs/*/receipt pkgs/*/receipt | head -1 |
pascal@0 | 203 } |
pascal@0 | 204 |
pascal@6 | 205 |
pascal@6 | 206 |
pascal@6 | 207 |
pascal@7 | 208 get_suggested() |
pascal@7 | 209 { |
pascal@7 | 210 local pkg |
pascal@7 | 211 pkg=pkgs/$1/receipt |
pascal@7 | 212 [ -s $pkg ] || pkg=$2/pkgs/$1/receipt |
pascal@7 | 213 [ -s $pkg ] || pkg=$(get_receipt $@) |
pascal@7 | 214 . $pkg |
pascal@7 | 215 echo -n $SUGGESTED |
pascal@7 | 216 } |
pascal@7 | 217 |
pascal@7 | 218 |
pascal@7 | 219 |
pascal@7 | 220 |
pascal@0 | 221 get_package() |
pascal@0 | 222 { |
pascal@0 | 223 local pkg |
pascal@0 | 224 pkg=pkgs/$1/receipt |
pascal@0 | 225 [ -s $pkg ] || pkg=$2/pkgs/$1/receipt |
pascal@0 | 226 [ -s $pkg ] || pkg=$(get_receipt $@) |
pascal@0 | 227 . $pkg |
pascal@0 | 228 cd $(dirname $pkg) |
pascal@0 | 229 pkg=$2$PACKAGE-$VERSION.tazpkg |
pascal@0 | 230 find * | cpio -o -H newc > $pkg |
pascal@0 | 231 echo -n $pkg |
pascal@0 | 232 } |
pascal@0 | 233 |
pascal@6 | 234 |
pascal@6 | 235 |
pascal@6 | 236 |
pascal@0 | 237 get_note() |
pascal@0 | 238 { |
pascal@0 | 239 pkg=$(get_receipt $1 $2) |
pascal@0 | 240 [ -n "$pkg" ] || exit |
pascal@0 | 241 grep -qs ^config_note $pkg || exit |
pascal@0 | 242 . $pkg |
pascal@0 | 243 config_note |
pascal@0 | 244 } |
pascal@0 | 245 |
pascal@6 | 246 |
pascal@6 | 247 |
pascal@6 | 248 |
pascal@0 | 249 get_form() |
pascal@0 | 250 { |
pascal@0 | 251 pkg=$(get_receipt $1 $2) |
pascal@0 | 252 [ -n "$pkg" ] || exit |
pascal@0 | 253 grep -qs ^config_form $pkg || exit |
pascal@0 | 254 . $pkg |
pascal@0 | 255 if [ -s $2/uploadconf ]; then |
pascal@0 | 256 awk "{ |
pascal@0 | 257 if (found) { |
pascal@0 | 258 if (/^ /) print; |
pascal@0 | 259 else exit; |
pascal@0 | 260 } |
pascal@0 | 261 if (/^$PACKAGE /) found=1 |
pascal@0 | 262 }" < $2/uploadconf | sed -e 's/ //' -e 's/ \([A-Z_0-9]*=\)/export \1/' > $2/vars |
pascal@0 | 263 . $2/vars |
pascal@0 | 264 fi |
pascal@0 | 265 config_form $2/fs |
pascal@0 | 266 exit |
pascal@0 | 267 } |
pascal@0 | 268 |
pascal@6 | 269 |
pascal@6 | 270 |
pascal@6 | 271 |
pascal@0 | 272 do_pre_install() |
pascal@0 | 273 { |
pascal@0 | 274 pkg=$(get_receipt $1 $2) |
pascal@0 | 275 [ -n "$pkg" ] || exit |
pascal@0 | 276 CONFIG_FILES="" |
pascal@0 | 277 . $pkg |
pascal@0 | 278 grep -qs ^pre_install $pkg && pre_install $2/fs |
pascal@0 | 279 [ -n "$CONFIG_FILES" ] && for i in $CONFIG_FILES; do echo $i >> $2/config_files; done |
pascal@26 | 280 unlzma < $(dirname $pkg)/fs.cpio.lzma | ( cd $2 ; cpio -idmu ) |
pascal@0 | 281 exit |
pascal@0 | 282 } |
pascal@0 | 283 |
pascal@6 | 284 |
pascal@6 | 285 |
pascal@6 | 286 |
pascal@0 | 287 do_post_install() |
pascal@0 | 288 { |
pascal@0 | 289 pkg=$(get_receipt $1 $2) |
pascal@0 | 290 [ -n "$pkg" ] || exit |
pascal@0 | 291 . $pkg |
pascal@0 | 292 echo "$1 $VERSION $(md5sum $(dirname $pkg)/fs.cpio.lzma | awk '{ print $1 }')" >> $2/fs/etc/packages.conf |
pascal@0 | 293 if grep -qs ^post_install $pkg; then |
pascal@5 | 294 [ -s $2/vars ] && . $2/vars |
pascal@0 | 295 echo "=== $pkg: $(date) ===" >> $2/post_install.log 2>&1 |
pascal@0 | 296 post_install $2/fs >> $2/post_install.log 2>&1 |
pascal@14 | 297 sed -e 's/^export/ /' -e 's/^/ /' -e '/^ suggested=/d' \ |
pascal@14 | 298 < $2/vars >> $2/fs/etc/packages.conf |
pascal@0 | 299 fi |
pascal@0 | 300 rm -f $2/vars |
pascal@0 | 301 exit |
pascal@0 | 302 } |
pascal@0 | 303 |
pascal@6 | 304 |
pascal@6 | 305 |
pascal@6 | 306 |
pascal@0 | 307 scan_depends() |
pascal@0 | 308 { |
pascal@0 | 309 local pkg |
pascal@0 | 310 for pkg in $@ ; do |
pascal@0 | 311 case " $OUTPUT " in |
pascal@0 | 312 *\ $pkg\ *) continue ;; |
pascal@0 | 313 esac |
pascal@0 | 314 DEPENDS="" |
pascal@0 | 315 . $(get_receipt $pkg $TMPDIR) |
pascal@0 | 316 scan_depends $DEPENDS |
pascal@0 | 317 case " $OUTPUT " in |
pascal@0 | 318 *\ $pkg\ *) continue ;; |
pascal@0 | 319 esac |
pascal@0 | 320 OUTPUT="$OUTPUT $pkg" |
pascal@0 | 321 done |
pascal@0 | 322 } |
pascal@0 | 323 |
pascal@6 | 324 |
pascal@6 | 325 |
pascal@6 | 326 |
pascal@0 | 327 get_depends() |
pascal@0 | 328 { |
pascal@0 | 329 TMPDIR=$2 |
pascal@0 | 330 shift 2 |
pascal@0 | 331 OUTPUT="" |
pascal@0 | 332 scan_depends $@ |
pascal@0 | 333 echo -n $OUTPUT |
pascal@0 | 334 exit |
pascal@0 | 335 } |
pascal@0 | 336 |
pascal@6 | 337 |
pascal@6 | 338 |
pascal@6 | 339 |
pascal@0 | 340 pkgs_extract() |
pascal@0 | 341 { |
pascal@0 | 342 cd $2 |
pascal@0 | 343 mkdir pkgs |
pascal@0 | 344 if cpio -t < $1 | grep -q receipt; then |
pascal@0 | 345 mv $1 pkgs |
pascal@0 | 346 elif tar tf $1 | grep -q tazpkg; then |
pascal@0 | 347 tar xf $1 -C pkgs |
pascal@0 | 348 elif tar tzf $1 | grep -q tazpkg; then |
pascal@0 | 349 tar xzf $1 -C pkgs |
pascal@0 | 350 elif tar tjf $1 | grep -q tazpkg; then |
pascal@0 | 351 tar xjf $1 -C pkgs |
pascal@0 | 352 else |
pascal@0 | 353 rm -rf $1 pkgs |
pascal@0 | 354 exit |
pascal@0 | 355 fi |
pascal@0 | 356 cd pkgs |
pascal@0 | 357 for i in *; do |
pascal@0 | 358 mkdir tmp |
pascal@0 | 359 cd tmp |
pascal@0 | 360 cpio -i < ../$i |
pascal@0 | 361 . ./receipt |
pascal@0 | 362 cd .. |
pascal@0 | 363 mv tmp $PACKAGE-$VERSION |
pascal@0 | 364 done |
pascal@0 | 365 exit |
pascal@0 | 366 } |
pascal@0 | 367 |
pascal@6 | 368 |
pascal@6 | 369 |
pascal@6 | 370 |
pascal@0 | 371 lzma_set_size() |
pascal@0 | 372 { |
pascal@26 | 373 n=$(unlzma < $1 | wc -c) |
pascal@0 | 374 for i in $(seq 1 8); do |
pascal@0 | 375 printf '\\\\x%02X' $(($n & 255)) |
pascal@0 | 376 n=$(($n >> 8)) |
pascal@0 | 377 done | xargs echo -en | dd of=$1 conv=notrunc bs=1 seek=5 2> /dev/null |
pascal@0 | 378 } |
pascal@0 | 379 |
pascal@6 | 380 |
pascal@6 | 381 |
pascal@6 | 382 |
pascal@0 | 383 case "$1" in |
pascal@6 | 384 --list-modules) list_modules $@ ;; |
pascal@6 | 385 --list-kernels) list_kernels $@ ;; |
pascal@6 | 386 --list-pkgs) list_pkgs $@ ;; |
pascal@6 | 387 --get-form) get_form $2 $3 ;; |
pascal@6 | 388 --get-note) get_note $2 $3 ;; |
pascal@6 | 389 --pre-install) do_pre_install $2 $3 ;; |
pascal@6 | 390 --post-install) do_post_install $2 $3 ;; |
pascal@6 | 391 --depends) get_depends $@ ;; |
pascal@6 | 392 --pkgs-extract) pkgs_extract $2 $3 ;; |
pascal@6 | 393 --remove) rm -rf $2; exit ;; |
pascal@6 | 394 --get-pkg) get_package $2 $3 ;; |
pascal@7 | 395 --get-suggested) get_suggested $2 $3 ;; |
pascal@6 | 396 --init) init ;; |
pascal@0 | 397 esac |
pascal@0 | 398 |
pascal@6 | 399 |
pascal@6 | 400 |
pascal@6 | 401 |
pascal@23 | 402 if [ "x$1" = "x--mkrootfs" ]; then |
pascal@0 | 403 tmp=$2 |
pascal@0 | 404 cd $tmp/fs |
pascal@25 | 405 [ -s boot/mkrootfs.pre_exec ] && sh boot/mkrootfs.pre_exec |
pascal@0 | 406 if [ ! -d boot -a -s ../kernel ]; then # custom kernel |
pascal@0 | 407 mkdir boot |
pascal@0 | 408 cp ../kernel boot/bzImage |
pascal@0 | 409 fi |
pascal@0 | 410 find -user bellard -exec chown root.root {} \; |
pascal@5 | 411 find | grep -v ^./boot | cpio -o -H newc | gzip -9 > ../rootfs.gz |
pascal@5 | 412 which advdef 2> /dev/null && advdef -z4 ../rootfs.gz |
pascal@0 | 413 fi |
pascal@23 | 414 if [ "x$1" = "x--mkiso" ]; then |
pascal@0 | 415 tmp=$2 |
pascal@0 | 416 mkdir -p $tmp/iso/boot/isolinux $tmp/iso/data |
pascal@0 | 417 cat $tmp/fs/boot/System.map | gzip -9 > $tmp/iso/data/sysmap.gz |
pascal@0 | 418 cat $tmp/fs/boot/config | gzip -9 > $tmp/iso/data/linconf.gz |
pascal@0 | 419 cat $tmp/fs/boot/config-busybox | gzip -9 > $tmp/iso/data/bbconf.gz |
pascal@5 | 420 cp $tmp/fs/boot/bundle $tmp/iso/data/bundle.sh |
pascal@4 | 421 cat $tmp/post_install.log | gzip -9 > $tmp/iso/data/log.gz |
pascal@0 | 422 cp $tmp/config_files $tmp/iso/data/files.cnf |
pascal@0 | 423 cp $tmp/fs/etc/packages.conf $tmp/iso/data/packages.cnf |
pascal@7 | 424 [ -s wok/busybox/receipt ] && tar czf $tmp/iso/data/wok.tgz wok/* |
pascal@7 | 425 [ -s www/index.php ] && tar czf $tmp/iso/data/www.tgz www/* |
pascal@0 | 426 cp $tmp/fs/boot/bzImage $tmp/iso/boot/bzImage |
pascal@0 | 427 cp $tmp/rootfs.gz $tmp/iso/boot/rootfs |
pascal@0 | 428 cp /boot/isolinux/isolinux.bin $tmp/iso/boot/isolinux |
pascal@0 | 429 cat > $tmp/iso/boot/isolinux/isolinux.cfg <<EOT |
pascal@0 | 430 label slitaz |
pascal@0 | 431 kernel /boot/bzImage |
pascal@0 | 432 append initrd=/boot/rootfs rw root=/dev/null vga=normal |
pascal@0 | 433 default slitaz |
pascal@0 | 434 implicit 0 |
pascal@0 | 435 prompt 1 |
pascal@0 | 436 timeout 50 |
pascal@0 | 437 EOT |
pascal@0 | 438 genisoimage -o $tmp/slitaz.iso -b boot/isolinux/isolinux.bin \ |
pascal@0 | 439 -c boot/isolinux/boot.cat -no-emul-boot -boot-load-size 4 \ |
pascal@0 | 440 -V "Tiny SliTaz" -p "www.slitaz.org" -input-charset iso8859-1 \ |
pascal@0 | 441 -boot-info-table $tmp/iso > /dev/null 2>&1 |
pascal@0 | 442 [ -x /usr/bin/isohybrid ] && |
pascal@0 | 443 /usr/bin/isohybrid $tmp/slitaz.iso 2> /dev/null |
pascal@6 | 444 [ -x /usr/bin/iso2exe ] && |
pascal@6 | 445 /usr/bin/iso2exe $tmp/slitaz.iso 2> /dev/null |
pascal@0 | 446 fi |
pascal@23 | 447 if [ "x$1" = "x--mkexe" ]; then |
pascal@5 | 448 tmp=$2 |
pascal@5 | 449 cd $tmp |
pascal@5 | 450 cp fs/boot/bzImage slitaz.exe |
pascal@7 | 451 sh fs/boot/bundle slitaz.exe rootfs.gz |
pascal@5 | 452 fi |
pascal@23 | 453 if [ "x$1" = "x--mkimg" ]; then |
pascal@0 | 454 tmp=$2 |
pascal@0 | 455 cd $tmp |
pascal@5 | 456 cp fs/boot/bzImage slitaz.img |
pascal@7 | 457 sh fs/boot/bundle slitaz.img rootfs.gz |
pascal@24 | 458 if [ -s fs/boot/ipxe ] && [ -s fs/boot/memtest ]; then |
pascal@12 | 459 sh fs/boot/bundle out " SliTaz boot menu" slitaz.img \ |
pascal@12 | 460 "Tiny SliTaz" fs/boot/ipxe "SliTaz web boot" \ |
pascal@12 | 461 fs/boot/memtest "Check memory" |
pascal@24 | 462 elif [ -s fs/boot/ipxe ]; then |
pascal@12 | 463 sh fs/boot/bundle out " SliTaz boot menu" slitaz.img \ |
pascal@12 | 464 "Tiny SliTaz" fs/boot/ipxe "SliTaz web boot" |
pascal@24 | 465 elif [ -s fs/boot/memtest ]; then |
pascal@12 | 466 sh fs/boot/bundle out " SliTaz boot menu" slitaz.img \ |
pascal@12 | 467 "Tiny SliTaz" fs/boot/memtest "Check memory" |
pascal@12 | 468 mv -f out slitaz.img |
pascal@24 | 469 else |
pascal@24 | 470 cp slitaz.img out |
pascal@12 | 471 fi |
pascal@24 | 472 [ $(stat -c %s out) -le 1474560 ] && mv -f out slitaz.img || rm -f out |
pascal@11 | 473 [ $(stat -c %s slitaz.img) -lt 1474560 ] && |
pascal@11 | 474 dd of=slitaz.img bs=18k seek=80 count=0 2> /dev/null |
pascal@0 | 475 fi |
pascal@23 | 476 if [ "x$1" = "x--mkcfg" ]; then |
pascal@0 | 477 tmp=$2 |
pascal@0 | 478 cd $tmp/fs |
pascal@0 | 479 for i in $(sed 's#^/##' < ../config_files); do find $i; done | \ |
pascal@0 | 480 sort | uniq | cpio -o -H newc | gzip -9 > ../config_files.cpio.gz |
pascal@0 | 481 fi |
pascal@23 | 482 if [ "x$1" = "x--chkdist" ]; then |
pascal@5 | 483 if [ pkgs/busybox-*/fs.cpio.lzma -nt dist/rootfs.cpio ]; then |
pascal@5 | 484 cat pkgs/busybox-*/fs.cpio.lzma | unlzma | ( cd dist ; cpio -idmu ) |
pascal@5 | 485 mv -f dist/fs/* dist/ |
pascal@5 | 486 rmdir dist/fs |
pascal@5 | 487 touch dist/* |
pascal@5 | 488 fi |
pascal@5 | 489 fi |