slitaz-dev-tools rev 82
tazdev: small clean and fixes
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sat May 07 00:34:28 2011 +0200 (2011-05-07) |
parents | 03279ff7b32b |
children | 6b85c3d783b5 |
files | tazdev/tazdev tazdev/tazdev.conf |
line diff
1.1 --- a/tazdev/tazdev Sat May 07 00:10:02 2011 +0200 1.2 +++ b/tazdev/tazdev Sat May 07 00:34:28 2011 +0200 1.3 @@ -40,25 +40,24 @@ 1.4 reliso|-ri Create all main flavors (not loram)\n" 1.5 } 1.6 1.7 -# Exit if user is not root. 1.8 -check_root() 1.9 -{ 1.10 - if test $(id -u) != 0 ; then 1.11 - echo -e "\nThis program requires being run as root.\n" 1.12 - exit 0 1.13 - fi 1.14 +# Be sure we root. 1.15 +check_root() { 1.16 + [ $(id -u) != 0 ] && \ 1.17 + echo -e "\nYou must be root to use: $(basename $0) $@\n" && exit 0 1.18 } 1.19 1.20 -status() 1.21 -{ 1.22 - local check=$? 1.23 - echo -en "\033[70G" 1.24 - if [ $check = 0 ]; then 1.25 - echo "Done" 1.26 +separator() { 1.27 + echo "================================================================================" 1.28 +} 1.29 + 1.30 +status() { 1.31 + echo -en "\\033[70G[ " 1.32 + if [ $? = 0 ]; then 1.33 + echo -en "\\033[1;32mOK" 1.34 else 1.35 - echo "Failed" 1.36 + echo -en "\\033[1;31mFailed" 1.37 fi 1.38 - return $check 1.39 + echo -e "\\033[0;39m ]" 1.40 } 1.41 1.42 get_version() 1.43 @@ -69,7 +68,7 @@ 1.44 elif [ -n "$2" ]; then 1.45 # Undigest - custom ? 1.46 version=$2 1.47 - slitaz=/home/slitaz/$2 1.48 + slitaz=$SLITAZ/$2 1.49 else 1.50 version=cooking 1.51 slitaz=$COOKING 1.52 @@ -86,14 +85,14 @@ 1.53 user=$user 1.54 fi 1.55 if [ "$2" = "stable" ] || [ "$3" = "stable" ]; then 1.56 - REMOTE_DIR=$MIRROR_PKGS/stable/ 1.57 - LOCAL_DIR=$STABLE/packages/ 1.58 + remote=$MIRROR_PKGS/stable/ 1.59 + local=$STABLE/packages/ 1.60 elif [ "$2" = "undigest" ] || [ "$3" = "undigest" ]; then 1.61 - REMOTE_DIR=$MIRROR_PKGS/undigest/ 1.62 - LOCAL_DIR=$UNDIGEST/packages/ 1.63 + remote=$MIRROR_PKGS/undigest/ 1.64 + local=$UNDIGEST/packages/ 1.65 else 1.66 - REMOTE_DIR=$MIRROR_PKGS/cooking/ 1.67 - LOCAL_DIR=$COOKING/packages/ 1.68 + remote=$MIRROR_PKGS/cooking/ 1.69 + local=$COOKING/packages/ 1.70 fi 1.71 } 1.72 1.73 @@ -102,7 +101,7 @@ 1.74 mount_chroot() 1.75 { 1.76 if [ ! -d $rootfs/proc/1 ]; then 1.77 - echo -en "\nMounting virtual filesystems..." 1.78 + echo -ne "\nMounting virtual filesystems..." 1.79 mount -t proc proc $rootfs/proc 1.80 mount -t sysfs sysfs $rootfs/sys 1.81 mount -t devpts devpts $rootfs/dev/pts 1.82 @@ -129,15 +128,14 @@ 1.83 { 1.84 [ "$1" ] && ROOTF=$1 1.85 fs=$rootfs/home/slitaz 1.86 - echo -e "\nChroot: $rootfs" 1.87 - echo -n "Unmounting virtual filesystems..." 1.88 + echo -ne "\nUnmounting virtual filesystems..." 1.89 umount $rootfs/dev/shm 1.90 umount $rootfs/dev/pts 1.91 umount $rootfs/sys 1.92 umount $rootfs/proc 1.93 umount $fs/src 1.94 umount $fs/packages 1.95 - echo -e "Done\n" 1.96 + status && echo "" 1.97 #echo -e "\nProcess: $ps\n" 1.98 #ps | grep `basename $0` | grep -v grep 1.99 #echo -e "\nLeaving virtual filesystems unmounted (`pidof tazdev`)...\n" 1.100 @@ -147,7 +145,7 @@ 1.101 gen_new_chroot() 1.102 { 1.103 echo -e "\nGenerating new chroot in : $rootfs" 1.104 - echo "================================================================================" 1.105 + separator 1.106 mkdir -p $rootfs 1.107 for pkg in busybox libtaz tazwok tazchroot \ 1.108 tazpkg slitaz-base-files 1.109 @@ -157,7 +155,7 @@ 1.110 echo -n "Creating resolv.conf..." 1.111 cat /etc/resolv.conf > $rootfs/etc/resolv.conf 1.112 status 1.113 - echo "================================================================================" 1.114 + separator 1.115 echo -e "Ready to chroot. Use 'tazdev chroot [version|path]'" 1.116 echo -e "Example: tazdev chroot $rootfs\n" 1.117 } 1.118 @@ -216,7 +214,7 @@ 1.119 echo -e "\nStatistics for: $PROJECTS\n" 1.120 echo -n "Project" && echo -ne "\033[24G Size" && echo -ne "\033[38G Revision" 1.121 echo -ne "\033[48G Version" && echo -e "\033[64G Files" 1.122 - echo "================================================================================" 1.123 + separator 1.124 cd $PROJECTS 1.125 for proj in * 1.126 do 1.127 @@ -234,16 +232,15 @@ 1.128 files=`find $proj -type f | wc -l` 1.129 echo -e "\033[64G $files" 1.130 done 1.131 - echo "================================================================================" 1.132 + separator 1.133 echo "" ;; 1.134 chroot) 1.135 - # Chroot into a build env. Default to cooking configured in 1.136 - # tazdev.conf 1.137 + # Chroot into a build env. Default to cooking configured in tazdev.conf 1.138 check_root 1.139 get_version $@ 1.140 [ -d "$2" ] && rootfs=$2 1.141 mount_chroot 1.142 - echo -e "Chrooting in $rootfs...\n" 1.143 + echo -e "Chrooting to: $rootfs\n" 1.144 chroot $rootfs /bin/sh --login 1.145 umount_chroot ;; 1.146 umount-chroot|-uc) 1.147 @@ -280,37 +277,37 @@ 1.148 fi 1.149 cd $rootfs || exit 1 1.150 echo -e "\nCleaning chroot in: $rootfs" 1.151 - echo "================================================================================" 1.152 + separator 1.153 for i in bin dev etc init lib media mnt proc sbin sys tmp usr var 1.154 do 1.155 echo -n "Removing: $i (`du -sh $i | awk '{ print $1 }'`)... " 1.156 rm -rf $i 1.157 status 1.158 done 1.159 - echo "================================================================================" 1.160 - echo "" ;; 1.161 + separator && echo "" ;; 1.162 push|-p) 1.163 check_mirror $@ 1.164 rsync -r -t -l -v -z --delete \ 1.165 - $LOCAL_DIR -e ssh $user@$MIRROR:$REMOTE_DIR ;; 1.166 + $local -e ssh $user@$MIRROR:$remote ;; 1.167 dry-push|-dp) 1.168 check_mirror $@ 1.169 rsync -r -t -l -v -z --delete --dry-run \ 1.170 - $LOCAL_DIR -e ssh $user@$MIRROR:$REMOTE_DIR ;; 1.171 + $local -e ssh $user@$MIRROR:$remote ;; 1.172 pull) 1.173 check_mirror $@ 1.174 rsync -r -t -l -v -z --delete \ 1.175 - -e ssh $user@$MIRROR:$REMOTE_DIR $LOCAL_DIR ;; 1.176 + -e ssh $user@$MIRROR:$remote $local ;; 1.177 dry-pull) 1.178 check_mirror $@ 1.179 rsync -r -t -l -v -z --delete --dry-run \ 1.180 - -e ssh $user@$MIRROR:$REMOTE_DIR $LOCAL_DIR ;; 1.181 + -e ssh $user@$MIRROR:$remote $local ;; 1.182 purge|dry-purge) 1.183 check_root 1.184 get_version $@ 1.185 purge_packages $1 1.186 purge_sources $1 ;; 1.187 relpkg|-rp) 1.188 + # Release a slitaz sub-project and upload tarball to mirror 1.189 [ -z "$MIRROR_SOURCES" ] && MIRROR_SOURCES="/var/www/slitaz/mirror/sources" 1.190 if [ -z $2 ] || [ -z $3 ]; then 1.191 echo -e "\nUsage: $0 relpkg package version\n" 1.192 @@ -342,12 +339,13 @@ 1.193 $user@$MIRROR:$MIRROR_SOURCES/${pkg#slitaz-} 1.194 fi ;; 1.195 reliso|-ri) 1.196 - # Generate all official images iso at once. 1.197 - version=$2 1.198 - mkdir -p $ISO 1.199 + # Generate all official images iso at once for a specific version. 1.200 + get_version $@ 1.201 + iso=$slitaz/iso 1.202 + mkdir -p $iso 1.203 for flavor in base core justx firefox 1.204 do 1.205 - cd /home/slitaz/$version 1.206 + cd $slitaz 1.207 tazlito pack-flavor $flavor 1.208 tazlito get-flavor $flavor 1.209 tazlito gen-distro 1.210 @@ -358,7 +356,9 @@ 1.211 cp distro/slitaz-$flavor.iso $ISO/slitaz-$version-$flavor.iso 1.212 cd $ISO && md5sum slitaz-$version-$flavor.iso slitaz-$version-$flavor.md5 1.213 fi 1.214 - done ;; 1.215 + done 1.216 + # Clean up slitaz working directory. 1.217 + rm *.flavor tazlito.conf ;; 1.218 usage|*) 1.219 usage ;; 1.220 esac
2.1 --- a/tazdev/tazdev.conf Sat May 07 00:10:02 2011 +0200 2.2 +++ b/tazdev/tazdev.conf Sat May 07 00:34:28 2011 +0200 2.3 @@ -10,9 +10,6 @@ 2.4 # Path to all own and copy projects. 2.5 PROJECTS="$HOME/Projects" 2.6 2.7 -# Destination for generated images ISO 2.8 -ISO=$SLITAZ/iso 2.9 - 2.10 # Main mirror to push and download (ISO, rootfs. etc). 2.11 MIRROR="mirror.slitaz.org" 2.12 DL_URL="http://mirror.switch.ch/ftp/mirror/slitaz"