slitaz-modular annotate mkiso.sh @ rev 21
Changed HG_DIR folder path to /home/slitaz/hg. Added PROFILE name to iso name now. (Ex. slitaz-core-DATE.iso)
author | Christopher Rogers <slaxemulator@gmail.com> |
---|---|
date | Sun Dec 26 23:31:03 2010 +0000 (2010-12-26) |
parents | 50388b0d5b22 |
children | 8f8af6b88207 |
rev | line source |
---|---|
slaxemulator@0 | 1 #!/bin/sh |
slaxemulator@0 | 2 |
slaxemulator@0 | 3 if [ -f "./tazwok.conf" ]; then |
slaxemulator@0 | 4 . ./tazwok.conf |
slaxemulator@0 | 5 elif [ -f "/etc/tazwok.conf" ]; then |
slaxemulator@0 | 6 . /etc/tazwok.conf |
slaxemulator@0 | 7 else |
slaxemulator@0 | 8 echo -e "\nUnable to find tazwok configuration file : /etc/tazwok.conf" |
slaxemulator@0 | 9 exit 1 |
slaxemulator@0 | 10 fi |
slaxemulator@0 | 11 |
slaxemulator@0 | 12 QUIET="y" |
slaxemulator@0 | 13 FORCE="y" |
slaxemulator@0 | 14 export LABEL="slitaz_$(date +%Y%m)" |
slaxemulator@0 | 15 PUBLISHER="Slitaz" |
slaxemulator@0 | 16 APPLICATION="Slitaz" |
slaxemulator@0 | 17 CREATE_DEFAULT="n" |
slaxemulator@17 | 18 BASEDIR="$(pwd)" |
slaxemulator@17 | 19 PROFILE="$BASEDIR/$1" |
slaxemulator@0 | 20 ver="" |
slaxemulator@0 | 21 CDNAME="slitaz" |
slaxemulator@0 | 22 RMSTUFF=n |
slaxemulator@0 | 23 MVSTUFF=n |
slaxemulator@0 | 24 UNGZIP=n |
slaxemulator@15 | 25 EXT="xz" |
slaxemulator@15 | 26 COMPRESSION="xz -Xbcj x86" |
slaxemulator@0 | 27 MKOPTION="-b 256k" |
slaxemulator@0 | 28 MODULES="" |
slaxemulator@0 | 29 WORKING="$PROFILE/working" |
slaxemulator@0 | 30 INITRAMFS="$WORKING/initramfs" |
slaxemulator@0 | 31 UNION="$WORKING/union" |
slaxemulator@0 | 32 LOG="$WORKING/log" |
slaxemulator@0 | 33 ISODIR="$WORKING/iso" |
slaxemulator@21 | 34 IMGNAME="$PROFILE/$CDNAME-$1-$(date +%F).iso" |
slaxemulator@0 | 35 IMGMD5NAME="$IMGNAME.md5" |
slaxemulator@15 | 36 LASTBR="$INITRAMFS" |
slaxemulator@0 | 37 SGNFILE="$ISODIR/$CDNAME/livecd.sgn" |
slaxemulator@0 | 38 MODULES_DIR="$WORKING/modules" |
slaxemulator@21 | 39 HG_DIR="/home/slitaz/hg" |
slaxemulator@0 | 40 COPY_HG="no" |
slaxemulator@0 | 41 UPDATE_HG="no" |
slaxemulator@0 | 42 BACKUP_SOURCES="no" |
slaxemulator@0 | 43 BACKUP_PACKAGES="no" |
slaxemulator@0 | 44 CLEAN_MODULES_DIR="no" |
slaxemulator@2 | 45 CLEAN_INITRAMFS="no" |
slaxemulator@0 | 46 HG_LIST="flavors flavors-stable slitaz-base-files slitaz-boot-scripts slitaz-configs slitaz-doc slitaz-pizza slitaz-tools tank tazlito tazpkg tazusb tazwok website wok" |
slaxemulator@0 | 47 |
slaxemulator@0 | 48 error () { echo -e "\033[1;31;40m!!! \033[1;37;40m$@\033[1;0m"; } |
slaxemulator@0 | 49 warn () { echo -e "\033[1;33;40m*** \033[1;37;40m$@\033[1;0m"; } |
slaxemulator@0 | 50 info () { echo -e "\033[1;32;40m>>> \033[1;37;40m$@\033[1;0m"; } |
slaxemulator@0 | 51 |
slaxemulator@0 | 52 # do UID checking here so someone can at least get usage instructions |
slaxemulator@0 | 53 #if [ "$EUID" != "0" ]; then |
slaxemulator@0 | 54 # error "error: This script must be run as root." |
slaxemulator@0 | 55 # exit 1 |
slaxemulator@0 | 56 #fi |
slaxemulator@19 | 57 if [ ! -d $PROFILE -o "$1" = "" ]; then |
slaxemulator@17 | 58 echo "$0 profile-name" |
slaxemulator@17 | 59 echo "ex $0 core" |
slaxemulator@17 | 60 exit 1 |
slaxemulator@17 | 61 fi |
slaxemulator@0 | 62 |
slaxemulator@19 | 63 ROOT_MOD="$(ls -1 ${PROFILE}/list | head -1)" |
slaxemulator@19 | 64 INST_ROOT="${MODULES_DIR}/$(basename ${ROOT_MOD} .list)" |
slaxemulator@19 | 65 |
slaxemulator@0 | 66 if [ -f ${PROFILE}/config ]; then |
slaxemulator@0 | 67 source ${PROFILE}/config |
slaxemulator@0 | 68 fi |
slaxemulator@0 | 69 |
slaxemulator@0 | 70 _overlay() |
slaxemulator@0 | 71 { |
slaxemulator@0 | 72 if [ -d ${MODULES_DIR}/overlay ]; then |
slaxemulator@0 | 73 rm -rf ${MODULES_DIR}/overlay |
slaxemulator@0 | 74 cp -rf ${PROFILE}/overlay ${MODULES_DIR} |
slaxemulator@0 | 75 else |
slaxemulator@0 | 76 cp -rf ${PROFILE}/overlay ${MODULES_DIR} |
slaxemulator@0 | 77 fi |
slaxemulator@0 | 78 |
slaxemulator@0 | 79 if [ "${QUIET}" = "y" ]; then |
slaxemulator@0 | 80 mksquashfs "${MODULES_DIR}/overlay" "${ISODIR}/${CDNAME}/modules/zzz.overlay.${EXT}" -comp ${COMPRESSION} -noappend ${MKOPTION} >/dev/null |
slaxemulator@0 | 81 else |
slaxemulator@0 | 82 mksquashfs "${MODULES_DIR}/overlay" "${ISODIR}/${CDNAME}/modules/zzz.overlay.${EXT}" -comp ${COMPRESSION} -noappend ${MKOPTION} |
slaxemulator@0 | 83 fi |
slaxemulator@0 | 84 } |
slaxemulator@0 | 85 |
slaxemulator@0 | 86 lzma_switches() |
slaxemulator@0 | 87 { |
slaxemulator@0 | 88 echo "-d$(echo 24) -mt$(grep ^processor < /proc/cpuinfo | wc -l)" |
slaxemulator@0 | 89 } |
slaxemulator@0 | 90 |
slaxemulator@0 | 91 # Pack rootfs |
slaxemulator@0 | 92 pack_rootfs() |
slaxemulator@0 | 93 { |
slaxemulator@0 | 94 ( cd $1 ; find . -print | cpio -o -H newc ) | \ |
slaxemulator@0 | 95 if [ -x /usr/bin/lzma ]; then |
slaxemulator@0 | 96 info "Generating lzma'ed initramfs... " |
slaxemulator@0 | 97 lzma e -si -so $(lzma_switches $1) > $2 |
slaxemulator@0 | 98 else |
slaxemulator@0 | 99 info "Generating gziped initramfs... " |
slaxemulator@0 | 100 gzip -9 > $2 |
slaxemulator@0 | 101 fi |
slaxemulator@0 | 102 echo 1 > /tmp/rootfs |
slaxemulator@0 | 103 } |
slaxemulator@0 | 104 |
slaxemulator@0 | 105 initramfs () { |
slaxemulator@0 | 106 |
slaxemulator@17 | 107 if [ ! -e "$BASEDIR/initramfs/initramfs.list" ]; then |
slaxemulator@19 | 108 error "error: $BASEDIR/initramfs/initramfs.list doesn't exist, aborting." |
slaxemulator@0 | 109 exit 1 |
slaxemulator@0 | 110 fi |
slaxemulator@0 | 111 |
slaxemulator@2 | 112 if [ "$CLEAN_INITRAMFS" = "yes" ]; then |
slaxemulator@2 | 113 if [ -d ${INITRAMFS} ]; then |
slaxemulator@2 | 114 rm -Rf ${INITRAMFS} |
slaxemulator@2 | 115 fi |
slaxemulator@2 | 116 fi |
slaxemulator@4 | 117 |
slaxemulator@4 | 118 if [ ! -d ${INITRAMFS} ]; then |
slaxemulator@4 | 119 mkdir -p $INITRAMFS |
slaxemulator@4 | 120 fi |
slaxemulator@4 | 121 |
slaxemulator@0 | 122 info "Making bootable image" |
slaxemulator@17 | 123 cat "$BASEDIR/initramfs/initramfs.list" | grep -v "^#" | while read pkgname; do |
slaxemulator@5 | 124 if [ ! -f ${INITRAMFS}/var/lib/tazpkg/installed/${pkgname}/files.list ]; then |
slaxemulator@0 | 125 tazpkg get-install $pkgname --root=$INITRAMFS | tee -a $LOG/initramfs.log |
slaxemulator@0 | 126 sleep 1 |
slaxemulator@0 | 127 else |
slaxemulator@0 | 128 info "${pkgname} installed" |
slaxemulator@0 | 129 fi |
slaxemulator@0 | 130 done |
slaxemulator@0 | 131 |
slaxemulator@0 | 132 if [ ! -d $ISODIR/boot ]; then |
slaxemulator@0 | 133 mkdir -p $ISODIR/boot |
slaxemulator@0 | 134 fi |
slaxemulator@0 | 135 |
slaxemulator@15 | 136 #if [ ! -f $ISODIR/boot/bzImage ]; then |
slaxemulator@0 | 137 cp -f $INITRAMFS/boot/vmlinuz* $ISODIR/boot/bzImage |
slaxemulator@0 | 138 rm -f $INITRAMFS/boot/vmlinuz* |
slaxemulator@15 | 139 #fi |
slaxemulator@0 | 140 |
slaxemulator@17 | 141 if [ -d $BASEDIR/initramfs ]; then |
slaxemulator@17 | 142 cp -af $BASEDIR/initramfs/* $INITRAMFS |
slaxemulator@0 | 143 fi |
slaxemulator@0 | 144 } |
slaxemulator@0 | 145 |
slaxemulator@0 | 146 copy_hg() { |
slaxemulator@21 | 147 if [ ! -d ${HG_DIR}/${1}/home/slitaz/hg/$1 ]; then |
slaxemulator@0 | 148 info "Cloning $1 repo ..." |
slaxemulator@21 | 149 hg clone http://hg.slitaz.org/$1 ${HG_DIR}/${1}/home/slitaz/hg/$1 |
slaxemulator@21 | 150 elif [ -d ${HG_DIR}/${1}/home/slitaz/hg/$1 -a ${UPDATE_HG} = "yes" ]; then |
slaxemulator@0 | 151 info "Updating $1 repo ..." |
slaxemulator@21 | 152 cd ${HG_DIR}/${1}/home/slitaz/hg/$1 && |
slaxemulator@2 | 153 hg pull -u |
slaxemulator@0 | 154 cd $PROFILE |
slaxemulator@0 | 155 fi |
slaxemulator@0 | 156 } |
slaxemulator@0 | 157 |
slaxemulator@0 | 158 squashfs_hg() { |
slaxemulator@0 | 159 if [ ! -d "$ISODIR/$CDNAME/modules/hg" ]; then |
slaxemulator@0 | 160 mkdir -p "$ISODIR/$CDNAME/modules/hg" |
slaxemulator@0 | 161 fi |
slaxemulator@21 | 162 if [ -d ${HG_DIR}/${1}/home/slitaz/hg/$1 ]; then |
slaxemulator@21 | 163 _mksquash ${HG_DIR}/${1} "$ISODIR/$CDNAME/modules/hg" /home/slitaz/hg/$1 |
slaxemulator@0 | 164 fi |
slaxemulator@0 | 165 } |
slaxemulator@0 | 166 |
slaxemulator@0 | 167 slitaz_union () { |
slaxemulator@0 | 168 |
slaxemulator@0 | 169 if [ -d ${MODULES_DIR}/${mod}/var/lib/tazpkg/installed ]; then |
slaxemulator@0 | 170 echo "${mod} module exist. Moving on." |
slaxemulator@0 | 171 elif [ ! -d ${MODULES_DIR}/${mod}/var/lib/tazpkg/installed ]; then |
slaxemulator@0 | 172 if [ -f "$PROFILE/list/${mod}.list" ]; then |
slaxemulator@0 | 173 cat "$PROFILE/list/${mod}.list" | grep -v "^#" | while read pkgname; do |
slaxemulator@5 | 174 if [ ! -f ${UNION}/var/lib/tazpkg/installed/${pkgname}/files.list ]; then |
slaxemulator@0 | 175 tazpkg get-install $pkgname --root=${UNION} | tee -a ${LOG}/${mod}-current.log |
slaxemulator@0 | 176 sleep 1 |
slaxemulator@0 | 177 else |
slaxemulator@0 | 178 info "${pkgname} installed" |
slaxemulator@0 | 179 fi |
slaxemulator@0 | 180 done |
slaxemulator@0 | 181 fi |
slaxemulator@0 | 182 |
slaxemulator@0 | 183 if [ -f $PROFILE/list/${mod}.removelist ]; then |
slaxemulator@0 | 184 cat "$PROFILE/list/${mod}.removelist" | grep -v "^#" | while read pkgname; do |
slaxemulator@5 | 185 if [ -f ${UNION}/var/lib/tazpkg/installed/${pkgname}/files.list ]; then |
slaxemulator@0 | 186 echo "y" | tazpkg remove ${pkgname} --root=${UNION} | tee -a ${LOG}/${mod}-current.log |
slaxemulator@0 | 187 sleep 1 |
slaxemulator@0 | 188 else |
slaxemulator@0 | 189 info "${pkgname} removed" |
slaxemulator@0 | 190 fi |
slaxemulator@0 | 191 done |
slaxemulator@0 | 192 fi |
slaxemulator@0 | 193 fi |
slaxemulator@0 | 194 } |
slaxemulator@0 | 195 |
slaxemulator@0 | 196 union () { |
slaxemulator@0 | 197 mkdir -p $WORKING |
slaxemulator@0 | 198 mkdir -p $UNION |
slaxemulator@0 | 199 mkdir -p $LOG |
slaxemulator@0 | 200 mkdir -p $ISODIR/${CDNAME}/base |
slaxemulator@0 | 201 mkdir -p $ISODIR/${CDNAME}/modules |
slaxemulator@0 | 202 mkdir -p $ISODIR/${CDNAME}/optional |
slaxemulator@0 | 203 mkdir -p $ISODIR/${CDNAME}/rootcopy |
slaxemulator@0 | 204 mkdir -p $ISODIR/${CDNAME}/tmp |
slaxemulator@0 | 205 mkdir -p $LASTBR |
slaxemulator@0 | 206 touch $SGNFILE |
slaxemulator@0 | 207 |
slaxemulator@0 | 208 modprobe aufs |
slaxemulator@0 | 209 if [ $? -ne 0 ]; then |
slaxemulator@0 | 210 error "Error loading Union filesystem module. (aufs)" |
slaxemulator@0 | 211 exit 1 |
slaxemulator@0 | 212 fi |
slaxemulator@15 | 213 |
slaxemulator@15 | 214 # $INITRAMFS is now $LASTBR |
slaxemulator@15 | 215 # This will be copyed to /mnt/memory/changes on boot |
slaxemulator@15 | 216 initramfs |
slaxemulator@0 | 217 |
slaxemulator@0 | 218 mount -t aufs -o br:${LASTBR}=rw aufs ${UNION} |
slaxemulator@0 | 219 if [ $? -ne 0 ]; then |
slaxemulator@0 | 220 error "Error mounting $union." |
slaxemulator@0 | 221 exit 1 |
slaxemulator@0 | 222 fi |
slaxemulator@15 | 223 |
slaxemulator@0 | 224 info "====> Installing packages to '$UNION'" |
slaxemulator@0 | 225 for mod in $MODULES; do |
slaxemulator@0 | 226 |
slaxemulator@0 | 227 if [ "$CLEAN_MODULES_DIR" = "yes" ]; then |
slaxemulator@0 | 228 if [ -d $MODULES_DIR/$mod ]; then |
slaxemulator@0 | 229 rm -Rf $MODULES_DIR/$mod |
slaxemulator@0 | 230 fi |
slaxemulator@0 | 231 fi |
slaxemulator@0 | 232 |
slaxemulator@0 | 233 if [ ! -d $MODULES_DIR/$mod ]; then |
slaxemulator@0 | 234 mkdir -p $MODULES_DIR/$mod |
slaxemulator@0 | 235 fi |
slaxemulator@0 | 236 info "Adding $MODULES_DIR/$mod as top branch of union." |
slaxemulator@0 | 237 mount -t aufs -o remount,add:0:${MODULES_DIR}/${mod}=rw aufs $UNION |
slaxemulator@0 | 238 info "Adding $LASTBR as lower branch of union." |
slaxemulator@0 | 239 mount -t aufs -o remount,mod:${LASTBR}=rr+wh aufs $UNION |
slaxemulator@0 | 240 LASTBR="$MODULES_DIR/${mod}" |
slaxemulator@0 | 241 |
slaxemulator@0 | 242 slitaz_union |
slaxemulator@0 | 243 done |
slaxemulator@0 | 244 |
slaxemulator@0 | 245 info "Unmounting union" |
slaxemulator@0 | 246 umount -l "${UNION}" |
slaxemulator@0 | 247 |
slaxemulator@0 | 248 info "Removing unionfs .wh. files." |
slaxemulator@0 | 249 find ${MODULES_DIR} -type f -name ".wh.*" -exec rm {} \; |
slaxemulator@0 | 250 find ${MODULES_DIR} -type d -name ".wh.*" -exec rm -rf {} \; |
slaxemulator@0 | 251 } |
slaxemulator@0 | 252 |
slaxemulator@0 | 253 |
slaxemulator@0 | 254 # _mksquash dirname |
slaxemulator@0 | 255 _mksquash () { |
slaxemulator@0 | 256 if [ ! -d "$1" ]; then |
slaxemulator@0 | 257 error "Error: '$1' is not a directory" |
slaxemulator@0 | 258 return 1 |
slaxemulator@0 | 259 fi |
slaxemulator@0 | 260 |
slaxemulator@0 | 261 if [ ! -d "$2" ]; then |
slaxemulator@0 | 262 error "Error: '$2' is not a directory" |
slaxemulator@0 | 263 return 1 |
slaxemulator@0 | 264 fi |
slaxemulator@0 | 265 |
slaxemulator@0 | 266 if [ ! -d "${1}${3}" ]; then |
slaxemulator@0 | 267 error "Error: '${1}${3}' is not a directory" |
slaxemulator@0 | 268 return 1 |
slaxemulator@0 | 269 fi |
slaxemulator@0 | 270 |
slaxemulator@0 | 271 time_dir="${3}" |
slaxemulator@0 | 272 sqimg="${2}/$(basename ${1}).${EXT}" |
slaxemulator@0 | 273 info "====> Generating SquashFS image for '${1}'" |
slaxemulator@0 | 274 if [ -e "${sqimg}" ]; then |
slaxemulator@0 | 275 dirhaschanged=$(find ${1}${time_dir} -newer ${sqimg}) |
slaxemulator@0 | 276 if [ "${dirhaschanged}" != "" ]; then |
slaxemulator@0 | 277 info "SquashFS image '${sqimg}' is not up to date, rebuilding..." |
slaxemulator@0 | 278 rm "${sqimg}" |
slaxemulator@0 | 279 else |
slaxemulator@0 | 280 info "SquashFS image '${sqimg}' is up to date, skipping." |
slaxemulator@0 | 281 return |
slaxemulator@0 | 282 fi |
slaxemulator@0 | 283 fi |
slaxemulator@0 | 284 |
slaxemulator@0 | 285 info "Creating SquashFS image. This may take some time..." |
slaxemulator@0 | 286 start=$(date +%s) |
slaxemulator@0 | 287 if [ "${QUIET}" = "y" ]; then |
slaxemulator@0 | 288 mksquashfs "${1}" "${sqimg}" -noappend ${MKOPTION} -comp ${COMPRESSION} >/dev/null |
slaxemulator@0 | 289 else |
slaxemulator@0 | 290 mksquashfs "${1}" "${sqimg}" -noappend ${MKOPTION} -comp ${COMPRESSION} |
slaxemulator@0 | 291 fi |
slaxemulator@0 | 292 minutes=$(echo $start $(date +%s) | awk '{ printf "%0.2f",($2-$1)/60 }') |
slaxemulator@0 | 293 info "Image creation done in $minutes minutes." |
slaxemulator@0 | 294 } |
slaxemulator@0 | 295 |
slaxemulator@0 | 296 imgcommon () { |
slaxemulator@0 | 297 if [ "${MODULES}" != "" ]; then |
slaxemulator@0 | 298 for MOD in ${MODULES}; do |
slaxemulator@0 | 299 if [ -d "${MODULES_DIR}/${MOD}" ]; then |
slaxemulator@0 | 300 _mksquash "${MODULES_DIR}/${MOD}" "$ISODIR/$CDNAME/base" /var/lib/tazpkg/installed |
slaxemulator@0 | 301 fi |
slaxemulator@0 | 302 done |
slaxemulator@0 | 303 fi |
slaxemulator@0 | 304 |
slaxemulator@0 | 305 if [ "$HG_LIST" != "" ]; then |
slaxemulator@0 | 306 if [ "$COPY_HG" = "yes" ]; then |
slaxemulator@0 | 307 for hg in $HG_LIST; do |
slaxemulator@0 | 308 copy_hg $hg |
slaxemulator@0 | 309 squashfs_hg $hg |
slaxemulator@0 | 310 done |
slaxemulator@0 | 311 fi |
slaxemulator@0 | 312 fi |
slaxemulator@0 | 313 |
slaxemulator@0 | 314 if [ "${HG_LIST}" != "" ]; then |
slaxemulator@0 | 315 for hg in ${HG_LIST}; do |
slaxemulator@21 | 316 if [ -d "${MODULES_DIR}/${hg}" ]; then |
slaxemulator@0 | 317 squashfs_hg $hg |
slaxemulator@0 | 318 fi |
slaxemulator@0 | 319 done |
slaxemulator@0 | 320 fi |
slaxemulator@0 | 321 |
slaxemulator@0 | 322 info "====> Making bootable image" |
slaxemulator@0 | 323 |
slaxemulator@0 | 324 # Sanity checks |
slaxemulator@0 | 325 if [ ! -d "${ISODIR}" ]; then |
slaxemulator@0 | 326 error "Error: '${ISODIR}' doesn't exist. What did you do?!" |
slaxemulator@0 | 327 exit 1 |
slaxemulator@0 | 328 fi |
slaxemulator@0 | 329 |
slaxemulator@0 | 330 if [ ! -f "${SGNFILE}" ]; then |
slaxemulator@0 | 331 error "Error: the ${SGNFILE} file doesn't exist. This image won't do anything" |
slaxemulator@0 | 332 error " Protecting you from yourself and erroring out here..." |
slaxemulator@0 | 333 exit 1 |
slaxemulator@0 | 334 fi |
slaxemulator@0 | 335 |
slaxemulator@0 | 336 |
slaxemulator@0 | 337 if [ -e "${IMGNAME}" ]; then |
slaxemulator@0 | 338 if [ "${FORCE}" = "y" ]; then |
slaxemulator@0 | 339 info "Removing existing bootable image..." |
slaxemulator@0 | 340 rm -rf "${IMGNAME}" |
slaxemulator@0 | 341 else |
slaxemulator@0 | 342 error "Error: Image '${IMGNAME}' already exists, aborting." |
slaxemulator@0 | 343 exit 1 |
slaxemulator@0 | 344 fi |
slaxemulator@0 | 345 fi |
slaxemulator@0 | 346 |
slaxemulator@0 | 347 } |
slaxemulator@0 | 348 |
slaxemulator@0 | 349 make_iso () { |
slaxemulator@0 | 350 imgcommon |
slaxemulator@15 | 351 |
slaxemulator@15 | 352 info "Creating rootfs.gz" |
slaxemulator@15 | 353 pack_rootfs $INITRAMFS $ISODIR/boot/rootfs.gz |
slaxemulator@0 | 354 |
slaxemulator@19 | 355 if [ -d $PROFILE/rootcd ]; then |
slaxemulator@19 | 356 cp -af $PROFILE/rootcd/* $ISODIR/ |
slaxemulator@19 | 357 fi |
slaxemulator@19 | 358 |
slaxemulator@19 | 359 info "Copying isolinux files..." |
slaxemulator@19 | 360 if [ -d $INITRAMFS/boot/isolinux ]; then |
slaxemulator@19 | 361 cp -a $INITRAMFS/boot/isolinux $ISODIR/boot |
slaxemulator@19 | 362 fi |
slaxemulator@19 | 363 |
slaxemulator@0 | 364 if [ -d ${PROFILE}/overlay ]; then |
slaxemulator@0 | 365 _overlay |
slaxemulator@0 | 366 fi |
slaxemulator@0 | 367 |
slaxemulator@0 | 368 info "Creating ISO image..." |
slaxemulator@17 | 369 genisoimage -R -o $IMGNAME -b boot/isolinux/isolinux.bin \ |
slaxemulator@17 | 370 -c boot/isolinux/boot.cat -no-emul-boot -boot-load-size 4 \ |
slaxemulator@17 | 371 -V "SliTaz" -input-charset iso8859-1 -boot-info-table $ISODIR |
slaxemulator@0 | 372 if [ -x /usr/bin/isohybrid ]; then |
slaxemulator@0 | 373 info "Creating hybrid ISO..." |
slaxemulator@0 | 374 isohybrid "${IMGNAME}" |
slaxemulator@0 | 375 fi |
slaxemulator@17 | 376 md5sum "${IMGNAME}" > $IMGMD5NAME |
slaxemulator@0 | 377 } |
slaxemulator@0 | 378 |
slaxemulator@2 | 379 if [ "$MODULES" != "" ]; then |
slaxemulator@2 | 380 union |
slaxemulator@2 | 381 else |
slaxemulator@2 | 382 error "MODULES was empty. exiting." |
slaxemulator@2 | 383 exit 1 |
slaxemulator@2 | 384 fi |
slaxemulator@0 | 385 |
slaxemulator@0 | 386 make_iso |