slitaz-dev-tools rev 308
mkpkgiso: fix broken hg repos
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Fri May 18 15:57:37 2018 +0200 (2018-05-18) |
parents | e4ec52b6fa11 |
children | a6b28f1e53eb |
files | mirror-tools/rootfs/usr/bin/mkpkgiso |
line diff
1.1 --- a/mirror-tools/rootfs/usr/bin/mkpkgiso Sun Dec 03 21:16:53 2017 +0100 1.2 +++ b/mirror-tools/rootfs/usr/bin/mkpkgiso Fri May 18 15:57:37 2018 +0200 1.3 @@ -55,8 +55,15 @@ 1.4 for i in $repos/* ; do 1.5 grep -qs '\[paths]' $i/.hg/hgrc || continue 1.6 cd $i 1.7 - hg pull 1.8 - hg update 1.9 + if hg pull -u 2>&1 | grep -q abort ; then 1.10 + cd - > /dev/null 1.11 + cd $repos 1.12 + mv $(basename $i) $(basename $i)-DEAD 1.13 + hg clone http://hg.slitaz.org/$(basename $i) 1.14 + cp $(basename $i)-DEAD/.hg/hgrc \ 1.15 + $(basename $i)/.hg/hgrc 1.16 + rm -rf $(basename $i)-DEAD 1.17 + fi 1.18 cd - > /dev/null 1.19 case "$i" in 1.20 */get-scripts) 1.21 @@ -68,7 +75,7 @@ 1.22 echo "|$(head -n 6 $j | sed \ 1.23 "/^$k=/!d;s/$k=//;s/\"\\([^\"]*\\).*/\\1/")" 1.24 done 1.25 - } | sed "s/'/\\\\'/" | xargs echo 1.26 + } | sed "s/'/\\\\'/" | sed "s|\$PACKAGE|$(basename $j)|" | xargs echo 1.27 done | sed 's/ |/|/g' > /var/www/slitaz/mirror/packages/get.list 1.28 chmod a+r /var/www/slitaz/mirror/packages/get.list 1.29 esac 1.30 @@ -315,6 +322,28 @@ 1.31 return 0 1.32 } 1.33 1.34 +# Build hybdrid shell/mbr boot 1.35 +shhybrid() 1.36 +{ 1.37 +blkuuid="$(blkid $1 | sed 's/UUID=/!d;/.* UUID="\([^"]*\).*/\1/')" 1.38 +[ "$blkuuid" ] || blkuuid="$(blkid $1 | sed 's/.* \(LABEL="[^"]*"\).*/\1/')" 1.39 +echo -e "#\xE4\x73\x1C\nexec sed 1,/^#@/d/^#%/q \$0" | dd of=$1 conv=notrunc 2>/dev/null 1.40 +dd bs=512 seek=1 conv=notrunc of=$1 2>/dev/null <<EOT 1.41 + 1.42 +#@ 1.43 +#!/bin/sh 1.44 + 1.45 +dev=\$({ blkid $(basename $1); blkid; } | sed '/$blkuuid/!d;s/:.*//;q') 1.46 + 1.47 +if [ -n "\$dev" ]; then 1.48 + mkdir -p /mnt/packages 1.49 + mount -t iso9660 -o loop,ro \$dev /mnt/packages 1.50 + /mnt/packages/install.sh 1.51 +fi 1.52 +#% 1.53 +EOT 1.54 +} 1.55 + 1.56 # Gen boot part 1.57 BOOT_OPT="" 1.58 iso=$ISO_DIR/slitaz-$PKG_VER.iso 1.59 @@ -443,6 +472,10 @@ 1.60 which $ISOHYBRID > /dev/null && $ISOHYBRID $IMAGE 2> /dev/null 1.61 status 1.62 1.63 +echo -n "Creating hybrid shell/mbr" 1.64 +shhybrid $IMAGE 1.65 +status 1.66 + 1.67 echo -n "Calculating md5sum" 1.68 md5sum $IMAGE > $(basename $IMAGE .iso).md5 1.69 status