Magellan Linux

Diff of /trunk/mlivecdbuild/mlivecdbuild2.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 580 by niro, Fri Oct 12 21:29:13 2007 UTC revision 1402 by niro, Sun Jun 5 02:31:52 2011 UTC
# Line 19  CDID="mlcd-$(date +%F-%k%M)" Line 19  CDID="mlcd-$(date +%F-%k%M)"
19  PROFILES_DIR="/usr/lib/mlivecdbuild/profiles"  PROFILES_DIR="/usr/lib/mlivecdbuild/profiles"
20  GLOBAL_PROFILE="${PROFILES_DIR}/global"  GLOBAL_PROFILE="${PROFILES_DIR}/global"
21    
22    # get full path to isolinux.bin, may vary an multilib systems
23    if [[ -f /usr/lib64/mkinitrd/isolinux.bin ]]
24    then
25     ISOLINUX_BIN=/usr/lib64/mkinitrd/isolinux.bin
26    else
27     ISOLINUX_BIN=/usr/lib/mkinitrd/isolinux.bin
28    fi
29    
30  die() { echo "ERROR: $@"; exit 1; }  die() { echo "ERROR: $@"; exit 1; }
31    
32  # get_profile $filename  # get_profile $filename
# Line 94  custom_packages() Line 102  custom_packages()
102    
103   # do not auto-start any services!   # do not auto-start any services!
104   add_initrc "export MAGE_BOOTSTRAP=true"   add_initrc "export MAGE_BOOTSTRAP=true"
105     add_initrc 'die() { if [ $? -eq 1 ]; then echo "ERROR: $@"; exit 1; fi; }'
106    
107   local i   local i
108   for i in ${packages}   for i in ${packages}
109   do   do
110   add_initrc "mage install ${i}"   add_initrc "mage ${cmd} ${i} || die ${i}"
111   done   done
112   add_initrc "mage clean"   add_initrc "mage clean"
113    
# Line 147  prepare_iso() Line 156  prepare_iso()
156   install -m 0644 $(get_profile fstab) ${CDCHROOTDIR}/etc/fstab || die   install -m 0644 $(get_profile fstab) ${CDCHROOTDIR}/etc/fstab || die
157   install -m 0644 $(get_profile motd) ${CDCHROOTDIR}/etc/motd || die   install -m 0644 $(get_profile motd) ${CDCHROOTDIR}/etc/motd || die
158   install -m 0644 $(get_profile issue) ${CDCHROOTDIR}/etc/issue || die   install -m 0644 $(get_profile issue) ${CDCHROOTDIR}/etc/issue || die
159     install -m 0644 $(get_profile net.eth0) ${CDCHROOTDIR}/etc/conf.d/net.eth0 || die
160   echo "${CDHOSTNAME}" > ${CDCHROOTDIR}/etc/hostname || die   echo "${CDHOSTNAME}" > ${CDCHROOTDIR}/etc/hostname || die
161    
162   echo Setting up services ...   echo Setting up services ...
163    
164   # add hardware detection  # # add hardware detection
165   MROOT="${CDCHROOTDIR}" rc-config add hwdetect || die "rc add hwdetect"  # MROOT="${CDCHROOTDIR}" rc-config add hwdetect || die "rc add hwdetect"
166    
167   # del checkfs   # del checkfs
168   MROOT="${CDCHROOTDIR}" rc-config del checkfs || die "rc del checkfs"   MROOT="${CDCHROOTDIR}" rc-config del checkfs || die "rc del checkfs"
# Line 203  install_bootloader() Line 213  install_bootloader()
213    
214   # iso linux binary   # iso linux binary
215   install -d ${CDISOROOT}/isolinux   install -d ${CDISOROOT}/isolinux
216   install /usr/lib/mkinitrd/isolinux.bin ${CDISOROOT}/isolinux || die   install ${ISOLINUX_BIN} ${CDISOROOT}/isolinux || die
217    
218   # kernel   # kernel
219   local kimg="$(basename $(readlink ${CDCHROOTDIR}/boot/vmlinuz))"   local kimg="$(basename $(readlink ${CDCHROOTDIR}/boot/vmlinuz))"
# Line 255  generate_iso() Line 265  generate_iso()
265   popd   popd
266  }  }
267    
 generate_dvd()  
 {  
  echo Generating DVD Image ...  
  install -d ${CDISOROOT}  
  pushd ${CDISOROOT} &&  
  growisofs -dvd-compat \  
  -rock \  
  -full-iso9660-filenames \  
  -allow-leading-dots \  
  -disable-deep-relocation \  
  -output ${LIVECDROOT}/${CDISONAME} \  
  -eltorito-boot isolinux/isolinux.bin \  
  -eltorito-catalog isolinux/boot.cat \  
  -no-emul-boot \  
  -boot-load-size 4 \  
  -boot-info-table \  
  -volid "${CDID}" \  
  ${CDISOROOT} #&> /dev/null  
  popd  
 }  
   
268  enter_livecd()  enter_livecd()
269  {  {
270   mount -t sysfs sysfs ${CDCHROOTDIR}/proc   mount -t sysfs sysfs ${CDCHROOTDIR}/sys
271   mount -t proc proc ${CDCHROOTDIR}/proc   mount -t proc proc ${CDCHROOTDIR}/proc
272   mount -o bind /dev ${CDCHROOTDIR}/dev   mount -o bind /dev ${CDCHROOTDIR}/dev
273    
# Line 291  enter_livecd() Line 280  enter_livecd()
280   ftp_proxy=${ftp_proxy} \   ftp_proxy=${ftp_proxy} \
281   no_proxy=${no_proxy} \   no_proxy=${no_proxy} \
282   /bin/bash -i   /bin/bash -i
283    
284     umount ${CDCHROOTDIR}/dev
285     umount ${CDCHROOTDIR}/proc
286     umount ${CDCHROOTDIR}/sys
287  }  }
288    
289  usage()  usage()
# Line 304  usage() Line 297  usage()
297   echo "    initrd     - generates a livecd suitable initrd"   echo "    initrd     - generates a livecd suitable initrd"
298   echo "    bootloader - installs the bootloader"   echo "    bootloader - installs the bootloader"
299   echo "    isogen     - generate the final livecd iso image"   echo "    isogen     - generate the final livecd iso image"
  echo "    dvdgen     - same as isogen but creates a dvd-image"  
300   echo "    all        - runs all tasks to get a livecd from zero"   echo "    all        - runs all tasks to get a livecd from zero"
301   echo "    enter      - enters the rootfs of a livecd"   echo "    enter      - enters the rootfs of a livecd"
302   echo   echo
# Line 323  case $1 in Line 315  case $1 in
315   initrd) generate_initrd;;   initrd) generate_initrd;;
316   bootloader) install_bootloader;;   bootloader) install_bootloader;;
317   isogen) generate_iso;;   isogen) generate_iso;;
  dvdgen) generate_dvd;;  
318   all)   all)
319   bootstrap_system   bootstrap_system
320   prepare_iso   prepare_iso
321   generate_rootfs   generate_rootfs
322   generate_initrd   generate_initrd
323   install_bootloader   install_bootloader
324   if [[ ${DEFINE_DVD} = 1 ]]   generate_iso
  then  
  generate_dvd  
  else  
  generate_iso  
  fi  
325   ;;   ;;
326   enter) enter_livecd ;;   enter) enter_livecd ;;
327   *|'') usage;;   *|'') usage;;

Legend:
Removed from v.580  
changed lines
  Added in v.1402