Magellan Linux

Diff of /trunk/mlivecdbuild/mlivecdbuild.sh

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

revision 26 by niro, Wed Jan 5 05:29:26 2005 UTC revision 154 by niro, Mon Jul 4 00:42:48 2005 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2    # $Header: /home/cvsd/magellan-cvs/magellan-src/mlivecdbuild/mlivecdbuild.sh,v 1.6 2005-07-04 00:42:48 niro Exp $
3    
4  #  #
5  # Builds Magellan Livecd's 0.3.6-r7  # Builds Magellan Livecd's 0.3.6-r7
# Line 8  source /etc/sysconfig/rc Line 9  source /etc/sysconfig/rc
9  source $rc_functions  source $rc_functions
10    
11  ### setup ###  ### setup ###
12  export LIVECDROOT=/mnt/mlivecdbuild-0.3.6-r7  export LIVECDROOT=/mnt/mlivecdbuild
13  export CDCHROOTDIR=${LIVECDROOT}/chroot  export CDCHROOTDIR=${LIVECDROOT}/chroot
14  export CDISOROOT=${LIVECDROOT}/isoroot  export CDISOROOT=${LIVECDROOT}/isoroot
15  export CDMAGEDIR=${LIVECDROOT}/files/mage-src  export CDMAGEDIR=${LIVECDROOT}/files/mage-src
16  export CDMAGERC=${CDMAGEDIR}/mage.rc  export CDMAGERC=${CDMAGEDIR}/mage.rc
17  export CDISONAME=magellan-livecd-i486.iso  export CDISONAME=magellan-livecd.iso
18  export CDHOSTNAME=magellan-i486  export CDHOSTNAME=magellan-live
19  export CDTOOLCHAIN=${LIVECDROOT}/files/magellan-toolchain-0.3-i486.tar.bz2  export CDTOOLCHAIN=${LIVECDROOT}/files/magellan-toolchain-0.3-i486.tar.bz2
20  export CDLAYOUTDIR=${LIVECDROOT}/files/  export CDLAYOUTDIR=${LIVECDROOT}/files/
21    
 ###export CDLAYOUTFILE=magellan_layout-i486  
22  export CDLAYOUTFILE=magellan_layout-i686-mage-0.3.99-r1-kernel26  export CDLAYOUTFILE=magellan_layout-i686-mage-0.3.99-r1-kernel26
23    
24    
25  #usbstick: vfat doesn't like CAPS and strings longer than 8 chars  # usbstick: vfat doesn't like CAPS and strings longer than 8 chars
26  export CDID=cdid  export CDID=cdid
27  export VERSION=0.3.6-r7  export VERSION=0.3.6-r7
28  export CDINITRD=${LIVECDROOT}/mntinitrd  export CDINITRD=${LIVECDROOT}/mntinitrd
29  export CDISOLOOP=${LIVECDROOT}/isoloop  export CDISOLOOP=${LIVECDROOT}/isoloop
30  #export CDISOLOOPSIZE=400000  
31  #autodeterminate loopsize + 20MB will be used later in script  # kernel 2.4.22 needs cloop-1.02, smaller or above will not work >:/ *grrr*
 #export CDISOLOOPSIZE="$(expr 20000 + $(du -Ds ${CDCHROOTDIR}|cut -d 'c' -f1))"  
 #kernel 2.4.22 needs cloop-1.02, smaller or above will not work >:/ *grrr*  
32  export CLOOPFILE=cloop-1.02-precompiled.tar.bz2  export CLOOPFILE=cloop-1.02-precompiled.tar.bz2
33  export CLOOPDIR=cloop-1.02  export CLOOPDIR=cloop-1.02
34    
35  #busybox-0.60.3 is official stable  # busybox-0.60.3 is official stable
 #export BUSYBOXFILE=busybox-0.60.3-precompiled.tar.bz2  
 #export BUSYBOXDIR=busybox-0.60.3  
36  export BUSYBOXFILE=busybox-1.00-precompiled.tar.bz2  export BUSYBOXFILE=busybox-1.00-precompiled.tar.bz2
37  export BUSYBOXDIR=busybox-1.00  export BUSYBOXDIR=busybox-1.00
38    
# Line 87  showversion() { Line 83  showversion() {
83  }  }
84    
85  create_chrootdirs() {  create_chrootdirs() {
86   #creating directories   # creating directories
87   mkdir -p ${CDCHROOTDIR}/{bin,boot,dev/shm,etc,home,lib/dev-state,mnt,proc} \   mkdir -p ${CDCHROOTDIR}/{bin,boot,dev/shm,etc,home,lib/dev-state,mnt,proc} \
88   &>/dev/null || die   &>/dev/null || die
89   mkdir -p ${CDCHROOTDIR}/etc/{opt,env.d} &>/dev/null || die   mkdir -p ${CDCHROOTDIR}/etc/{opt,env.d} &>/dev/null || die
# Line 136  create_chrootdirs() { Line 132  create_chrootdirs() {
132    
133   ##Creating the bash and sh symlinks   ##Creating the bash and sh symlinks
134   ln -s /tools/bin/{bash,cat,pwd,stty} ${CDCHROOTDIR}/bin &>/dev/null || die   ln -s /tools/bin/{bash,cat,pwd,stty} ${CDCHROOTDIR}/bin &>/dev/null || die
135   ln -s /tools/bin/perl ${CDCHROOTDIR}/usr/bin &>/dev/null || die   #ln -s /tools/bin/perl ${CDCHROOTDIR}/usr/bin &>/dev/null || die
136   ln -s /tools/lib/libgcc_s.so.1 ${CDCHROOTDIR}/usr/lib &>/dev/null || die   ln -s /tools/lib/libgcc_s.so.1 ${CDCHROOTDIR}/usr/lib &>/dev/null || die
137   ln -s bash ${CDCHROOTDIR}/bin/sh &>/dev/null || die   ln -s bash ${CDCHROOTDIR}/bin/sh &>/dev/null || die
  #needed by >=mage-0.3.4-r2  
138   ln -s /tools/bin/{basename,cut,fgrep,grep} ${CDCHROOTDIR}/bin &>/dev/null || die   ln -s /tools/bin/{basename,cut,fgrep,grep} ${CDCHROOTDIR}/bin &>/dev/null || die
139   ln -s /tools/bin/whoami ${CDCHROOTDIR}/usr/bin &>/dev/null || die   ln -s /tools/bin/whoami ${CDCHROOTDIR}/usr/bin &>/dev/null || die
  #needed by >=mage-0.3.6-r2  
140   ln -s /tools/bin/{date,ls,egrep,wc} ${CDCHROOTDIR}/bin &>/dev/null || die   ln -s /tools/bin/{date,ls,egrep,wc} ${CDCHROOTDIR}/bin &>/dev/null || die
141   ln -s /tools/sbin/ldconfig ${CDCHROOTDIR}/sbin/ldconfig &>/dev/null || die   ln -s /tools/sbin/ldconfig ${CDCHROOTDIR}/sbin/ldconfig &>/dev/null || die
   
  #needed by >=mage-0.3.6-r6  
  touch ${CDCHROOTDIR}/etc/env.d/dummy || die  
  touch ${CDCHROOTDIR}/etc/profile || die  
142   ln -s /tools/bin/sed ${CDCHROOTDIR}/bin || die   ln -s /tools/bin/sed ${CDCHROOTDIR}/bin || die
143   ln -s /tools/bin/dirname ${CDCHROOTDIR}/usr/bin || die   ln -s /tools/bin/dirname ${CDCHROOTDIR}/usr/bin || die
144    
145     ## needed empty files (to prevent warnings only)
146     touch ${CDCHROOTDIR}/etc/env.d/dummy || die
147     touch ${CDCHROOTDIR}/etc/profile || die
148     mkdir -p ${CDCHROOTDIR}/etc/rc.d/init.d || die
149     touch ${CDCHROOTDIR}/etc/rc.d/init.d/functions || die
150     ln -snf /etc/rc.d/init.d ${CDCHROOTDIR}/etc/init.d || die
151    
152   if [ -n "${DIE}" ]   if [ -n "${DIE}" ]
153   then   then
154   return 1   return 1
# Line 188  chroot_generate() { Line 185  chroot_generate() {
185   create_chrootdirs   create_chrootdirs
186   evaluate_retval   evaluate_retval
187    
188   mecho Creating needed devices for devfs ...   mecho Creating needed devices for devfs/udev ...
189   ( mknod -m 611 ${CDCHROOTDIR}/dev/console c 5 1 &>/dev/null && \   ( mknod -m 611 ${CDCHROOTDIR}/dev/console c 5 1 &>/dev/null && \
190   chgrp 4 ${CDCHROOTDIR}/dev/console &>/dev/null &&   chgrp 4 ${CDCHROOTDIR}/dev/console &>/dev/null &&
191   mknod -m 666 ${CDCHROOTDIR}/dev/null c 1 3 &>/dev/null )   mknod -m 666 ${CDCHROOTDIR}/dev/null c 1 3 &>/dev/null )
# Line 216  dialout:x:10: Line 213  dialout:x:10:
213  audio:x:11:  audio:x:11:
214  EOF  EOF
215   evaluate_retval   evaluate_retval
   
  #touch ${LIVECDROOT}/.chrootok  
216  }  }
217    
218  enter_chroot() {  enter_chroot() {
219   secho Entering Chroot ...   secho Entering Chroot ...
220   mount proc ${CDCHROOTDIR}/proc -t proc   mount proc ${CDCHROOTDIR}/proc -t proc
221   mount devfs ${CDCHROOTDIR}/dev -t devfs   # devfs is deprecated with kernel-2.6
222     #mount devfs ${CDCHROOTDIR}/dev -t devfs
223     mount -o bind /dev ${CDCHROOTDIR}/dev
224    
225   getstate   getstate
226   if [ "${CDSTATE}" != "null" ]   if [ "${CDSTATE}" != "null" ]
# Line 247  enter_chroot() { Line 244  enter_chroot() {
244    
245  install_mage_bashrc() {  install_mage_bashrc() {
246   cat >> ${CDCHROOTDIR}/root/.bashrc << "EOF"   cat >> ${CDCHROOTDIR}/root/.bashrc << "EOF"
  #secho Installing MAGE ...  
   
  #not needed anymore  
  #mecho Creating MAGE directories ...  
  #( source /bootstrap/mage.rc && \  
  #  install -d ${PKGDIR} && \  
  #  install -d ${BUILDDIR} && \  
  #  install -d ${INSTALLDB} && \  
  #  install -d ${MAGEDIR} && \  
  #  install -d /etc && \  
  #  install -d /sbin && \  
  #  install -d /usr/lib/mage )  
  #evaluate_retval  
   
  #not needed anymore  
  #mecho Installing MAGE files ...  
  #( install -m0755 --owner root --group root \  
  # /bootstrap/{depwanderer.sh,mage3.sh,mage3.functions.sh} \  
  # /usr/lib/mage && \  
  #  ln -s /usr/lib/mage/mage3.sh /sbin/mage && \  
  #  install -m0644 /bootstrap/mage.rc /etc )  
  #evaluate_retval  
   
247   mecho Updating MAGE tree ...   mecho Updating MAGE tree ...
248   mage update &> /dev/null   mage update &> /dev/null
249   evaluate_retval   evaluate_retval
# Line 291  install_cdlayout_bashrc() { Line 265  install_cdlayout_bashrc() {
265   evaluate_retval   evaluate_retval
266   fi   fi
267   done   done
268    
269   #needed for >=mage-0.3.6   #needed for >=mage-0.3.6
270   mecho Running etc-update ...   mecho Running etc-update ...
271   etc-update   etc-update
# Line 330  EOF Line 304  EOF
304    
305  cleanup_chrootdir() {  cleanup_chrootdir() {
306   secho Cleaning up Chroot directory ...   secho Cleaning up Chroot directory ...
307    
308   mecho Deleting bootstrap files ...   mecho Deleting bootstrap files ...
309   rm -rf ${CDCHROOTDIR}/bootstrap   rm -rf ${CDCHROOTDIR}/bootstrap
310   evaluate_retval   evaluate_retval
# Line 350  cleanup_chrootdir() { Line 324  cleanup_chrootdir() {
324  build_bootstrap() {  build_bootstrap() {
325   secho Preparing Chroot ...   secho Preparing Chroot ...
326   mecho Copy MAGE files to Chroot ...   mecho Copy MAGE files to Chroot ...
  #( mkdir ${CDCHROOTDIR}/bootstrap && \  
  #  cp ${CDMAGEDIR}/{depwanderer.sh,mage3.sh,mage3.functions.sh} \  
  # ${CDCHROOTDIR}/bootstrap && \  
  #  cp ${CDMAGERC} ${CDCHROOTDIR}/bootstrap )  
327   ( install -d ${CDCHROOTDIR}/bootstrap && \   ( install -d ${CDCHROOTDIR}/bootstrap && \
328    cp -R ${CDMAGEDIR}/* ${CDCHROOTDIR}/bootstrap )    cp -R ${CDMAGEDIR}/* ${CDCHROOTDIR}/bootstrap )
329   evaluate_retval   evaluate_retval
330    
331   #installing mage to CDCHROOTDIR   # installing mage to CDCHROOTDIR
332   mecho Installing Mage ...   mecho Installing Mage ...
333   ( chmod 0755 ${CDCHROOTDIR}/bootstrap/setup_mage.sh && \   ( chmod 0755 ${CDCHROOTDIR}/bootstrap/setup_mage.sh && \
334    ${CDCHROOTDIR}/bootstrap/setup_mage.sh \    ${CDCHROOTDIR}/bootstrap/setup_mage.sh \
# Line 378  build_bootstrap() { Line 348  build_bootstrap() {
348    
349   mecho Mounting Chroot filesystems ...   mecho Mounting Chroot filesystems ...
350   ( mount proc ${CDCHROOTDIR}/proc -t proc && \   ( mount proc ${CDCHROOTDIR}/proc -t proc && \
351    mount devfs ${CDCHROOTDIR}/dev -t devfs )    mount -o bind /dev ${CDCHROOTDIR}/dev )
352   evaluate_retval   evaluate_retval
353    
354   secho Starting bootstrap ...   secho Starting bootstrap ...
# Line 391  build_bootstrap() { Line 361  build_bootstrap() {
361   ( umount ${CDCHROOTDIR}/proc && \   ( umount ${CDCHROOTDIR}/proc && \
362   umount ${CDCHROOTDIR}/dev )   umount ${CDCHROOTDIR}/dev )
363   evaluate_retval   evaluate_retval
364    
365   touch ${LIVECDROOT}/.bootstrapok   touch ${LIVECDROOT}/.bootstrapok
366  }  }
367    
368    
 ############# new initrd style with busybox and cloop support ######################  
369  build_initrd() {  build_initrd() {
370   secho Building initrd ...   secho Building initrd ...
371    
# Line 411  build_initrd() { Line 380  build_initrd() {
380   mecho Removing old initrd.gz   mecho Removing old initrd.gz
381   rm -f ${LIVECDROOT}/initrd.gz   rm -f ${LIVECDROOT}/initrd.gz
382   fi   fi
383    
384   if [ -d ${LIVECDROOT}/tmp/${CLOOPDIR} ]   if [ -d ${LIVECDROOT}/tmp/${CLOOPDIR} ]
385   then   then
386   mecho Removing old cloop files   mecho Removing old cloop files
387   rm -rf ${LIVECDROOT}/tmp/${CLOOPDIR}   rm -rf ${LIVECDROOT}/tmp/${CLOOPDIR}
388   fi   fi
389    
390   if [ -d ${LIVECDROOT}/tmp/${BUSYBOXDIR} ]   if [ -d ${LIVECDROOT}/tmp/${BUSYBOXDIR} ]
391   then   then
392   mecho Removing old busybox files   mecho Removing old busybox files
393   rm -rf ${LIVECDROOT}/tmp/${BUSYBOXDIR}   rm -rf ${LIVECDROOT}/tmp/${BUSYBOXDIR}
394   fi   fi
395    
396   mecho Unpacking needed files ...   mecho Unpacking needed files ...
397   ( mkdir -p ${LIVECDROOT}/tmp && \   ( mkdir -p ${LIVECDROOT}/tmp && \
398    tar xjf ${CDLAYOUTDIR}/${CLOOPFILE} -C ${LIVECDROOT}/tmp && \    tar xjf ${CDLAYOUTDIR}/${CLOOPFILE} -C ${LIVECDROOT}/tmp && \
399    tar xjf ${CDLAYOUTDIR}/${BUSYBOXFILE} -C ${LIVECDROOT}/tmp )    tar xjf ${CDLAYOUTDIR}/${BUSYBOXFILE} -C ${LIVECDROOT}/tmp )
400   evaluate_retval   evaluate_retval
401    
402   mecho Creating Image file ...   mecho Creating Image file ...
403   dd if=/dev/zero of=${LIVECDROOT}/initrd bs=1024 count=6144 \   dd if=/dev/zero of=${LIVECDROOT}/initrd bs=1024 count=6144 \
404   &> /dev/null   &> /dev/null
# Line 452  proc            /proc         proc   def Line 421  proc            /proc         proc   def
421  EOF  EOF
422   #installing cloop   #installing cloop
423    cp ${LIVECDROOT}/tmp/${CLOOPDIR}/cloop.o ${CDINITRD}/lib/modules/misc && \    cp ${LIVECDROOT}/tmp/${CLOOPDIR}/cloop.o ${CDINITRD}/lib/modules/misc && \
424      
425   #installing busybox   #installing busybox
426    cp ${LIVECDROOT}/tmp/${BUSYBOXDIR}/busybox ${CDINITRD}/bin && \    cp ${LIVECDROOT}/tmp/${BUSYBOXDIR}/busybox ${CDINITRD}/bin && \
427    chmod 0755 ${CDINITRD}/bin/busybox && \    chmod 0755 ${CDINITRD}/bin/busybox && \
# Line 464  EOF Line 433  EOF
433                  rm -f ${CDINITRD}/bin/$i                  rm -f ${CDINITRD}/bin/$i
434                  ln ${CDINITRD}/bin/busybox ${CDINITRD}/bin/$i                  ln ${CDINITRD}/bin/busybox ${CDINITRD}/bin/$i
435            done && \            done && \
436    #symlink bin to sbin -> init inmod resist normally in sbin    #symlink bin to sbin -> init & insmod resist normally in sbin
437    ln -s bin ${CDINITRD}/sbin && \    ln -s bin ${CDINITRD}/sbin && \
438    ln -s ../bin ${CDINITRD}/usr/bin && \    ln -s ../bin ${CDINITRD}/usr/bin && \
439    ln -s ../bin ${CDINITRD}/usr/sbin && \    ln -s ../bin ${CDINITRD}/usr/sbin && \
# Line 475  EOF Line 444  EOF
444    ./MAKEDEV -v generic-nopty &> /dev/null && \    ./MAKEDEV -v generic-nopty &> /dev/null && \
445    cd ${LIVECDROOT} && \    cd ${LIVECDROOT} && \
446    mknod -m 600 ${CDINITRD}/dev/console c 5 1 && \    mknod -m 600 ${CDINITRD}/dev/console c 5 1 && \
447    mknod -m 666 ${CDINITRD}/dev/null c 1 3    mknod -m 666 ${CDINITRD}/dev/null c 1 3
448    cp ${CDCHROOTDIR}/etc/conf.d/kernel ${CDINITRD}/etc/conf.d/kernel )    cp ${CDCHROOTDIR}/etc/conf.d/kernel ${CDINITRD}/etc/conf.d/kernel )
449   evaluate_retval   evaluate_retval
450    
# Line 498  EOF Line 467  EOF
467   evaluate_retval   evaluate_retval
468   fi   fi
469    
470   #install modules   # install modules
471   install -d ${CDINITRD}/modules   install -d ${CDINITRD}/modules
472   source ${CDISOROOT}/isolinux/kernelversion   source ${CDCHROOTDIR}/boot/kernelversion
473   CDMODDIR=${CDCHROOTDIR}/lib/modules/${KRNLIB}/kernel   CDMODDIR=${CDCHROOTDIR}/lib/modules/${KRNLIB}/kernel
474    
475   if [ -e ${CDLAYOUTDIR}/mods_scsi ]   if [ -e ${CDLAYOUTDIR}/mods_scsi ]
# Line 509  EOF Line 478  EOF
478   install -d ${CDINITRD}/modules/scsi   install -d ${CDINITRD}/modules/scsi
479   for i in $(< ${CDLAYOUTDIR}/mods_scsi)   for i in $(< ${CDLAYOUTDIR}/mods_scsi)
480   do   do
  #cp -a ${CDMODDIR}/scsi/${i}.* ${CDINITRD}/modules/scsi  
481   find ${CDMODDIR} -type f -name ${i}* -exec cp -a '{}' ${CDINITRD}/modules/scsi ';'   find ${CDMODDIR} -type f -name ${i}* -exec cp -a '{}' ${CDINITRD}/modules/scsi ';'
482   done   done
483   cat ${CDLAYOUTDIR}/mods_scsi > ${CDINITRD}/mods_scsi   cat ${CDLAYOUTDIR}/mods_scsi > ${CDINITRD}/mods_scsi
# Line 521  EOF Line 489  EOF
489   install -d ${CDINITRD}/modules/usb   install -d ${CDINITRD}/modules/usb
490   for i in $(< ${CDLAYOUTDIR}/mods_usb)   for i in $(< ${CDLAYOUTDIR}/mods_usb)
491   do   do
  #cp -a ${CDMODDIR}/usb/${i}.* ${CDINITRD}/modules/usb  
492   find ${CDMODDIR} -type f -name ${i}* -exec cp -a '{}' ${CDINITRD}/modules/usb ';'   find ${CDMODDIR} -type f -name ${i}* -exec cp -a '{}' ${CDINITRD}/modules/usb ';'
493   done   done
494   cat ${CDLAYOUTDIR}/mods_usb > ${CDINITRD}/mods_usb   cat ${CDLAYOUTDIR}/mods_usb > ${CDINITRD}/mods_usb
495   fi   fi
496    
497   #install insmod   #install insmod
  #[ -L ${CDINITRD}/bin/insmod ] && rm ${CDINITRD}/bin/insmod  
498   cp -a ${CDCHROOTDIR}/sbin/insmod.static ${CDINITRD}/bin/insmod.static   cp -a ${CDCHROOTDIR}/sbin/insmod.static ${CDINITRD}/bin/insmod.static
499   cp -a ${CDCHROOTDIR}/sbin/insmod.static.old ${CDINITRD}/bin/insmod.static.old   cp -a ${CDCHROOTDIR}/sbin/insmod.static.old ${CDINITRD}/bin/insmod.static.old
500    
# Line 537  EOF Line 503  EOF
503   cat ${CDCHROOTDIR}/etc/passwd > ${CDINITRD}/etc/passwd   cat ${CDCHROOTDIR}/etc/passwd > ${CDINITRD}/etc/passwd
504   cat ${CDCHROOTDIR}/etc/group > ${CDINITRD}/etc/group   cat ${CDCHROOTDIR}/etc/group > ${CDINITRD}/etc/group
505    
   
506   #install static sed   #install static sed
507   install -d ${CDINITRD}/bin   install -d ${CDINITRD}/bin
508   tar xjf ${CDLAYOUTDIR}/${SEDFILE} -C ${LIVECDROOT}/tmp   tar xjf ${CDLAYOUTDIR}/${SEDFILE} -C ${LIVECDROOT}/tmp
# Line 558  EOF Line 523  EOF
523    
524   touch ${LIVECDROOT}/.initrdok   touch ${LIVECDROOT}/.initrdok
525  }  }
 #########################################################################################  
526    
527    
528  prepare_iso() {  prepare_iso() {
# Line 570  prepare_iso() { Line 534  prepare_iso() {
534   rm -f ${LIVECDROOT}/${CDISONAME}   rm -f ${LIVECDROOT}/${CDISONAME}
535   fi   fi
536    
537  # mecho Preparing Chroot ...   # fixes some issues with xfree/xorg xkb
 # ( mkdir -p ${CDCHROOTDIR}/fake/{needwrite,ramdisk} && \  
 #  touch ${CDCHROOTDIR}/fake/{needwrite,ramdisk}/.keep && \  
 # for i in dev etc var tmp root home  
 # do  
 # mv ${CDCHROOTDIR}/${i} \  
 # ${CDCHROOTDIR}/fake/needwrite/  
 # ln -s fake/needwrite/${i} ${CDCHROOTDIR}/${i}  
 # done )  
 # evaluate_retval  
   
  #fixes some issues with xfree/xorg xkb  
538   if [ -L "${CDCHROOTDIR}/etc/X11/xkb" -a -d "/usr/X11R6/lib/X11/xkb" ]   if [ -L "${CDCHROOTDIR}/etc/X11/xkb" -a -d "/usr/X11R6/lib/X11/xkb" ]
539   then   then
540   mecho fixing xkb symlink   mecho fixing xkb symlink
# Line 612  prepare_iso() { Line 565  prepare_iso() {
565    cat ${CDLAYOUTDIR}/issue > \    cat ${CDLAYOUTDIR}/issue > \
566   ${CDCHROOTDIR}/etc/issue && \   ${CDCHROOTDIR}/etc/issue && \
567    chmod 0644 ${CDCHROOTDIR}/etc/issue && \    chmod 0644 ${CDCHROOTDIR}/etc/issue && \
568  #  mv ${CDCHROOTDIR}/etc/login.defs \    echo "${CDHOSTNAME}" > ${CDCHROOTDIR}/etc/hostname )
 # ${CDCHROOTDIR}/etc/login.defs-orig &&  
 #  sed \  
 # -e 's%#MOTD_FILE%MOTD_FILE%' \  
 #     ${CDCHROOTDIR}/etc/login.defs-orig > ${CDCROOTDIR}/etc/login.defs &&  
 #  rm -f ${CDCHROOTDIR}/etc/login.defs-orig &&  
 #  cat ${CDLAYOUTDIR}/create_ramdisk > \  
 # ${CDCHROOTDIR}/etc/rc.d/init.d/create_ramdisk && \  
 #  chmod 0755 ${CDCHROOTDIR}/etc/rc.d/init.d/create_ramdisk && \  
 #  ln -s ../init.d/create_ramdisk \  
 #   ${CDCHROOTDIR}/etc/rc.d/rcsysinit.d/S00create_ramdisk && \  
 #  
 #  cat ${CDLAYOUTDIR}/network_detect > \  
 # ${CDCHROOTDIR}/etc/rc.d/init.d/network_detect && \  
 #  chmod 0755 ${CDCHROOTDIR}/etc/rc.d/init.d/network_detect && \  
 #  ln -s ../init.d/network_detect \  
 #   ${CDCHROOTDIR}/etc/rc.d/rcsysinit.d/S20network_detect && \  
 #  ln -s ../init.d/hwdetect \  
 #   ${CDCHROOTDIR}/etc/rc.d/rc3.d/S18hwdetect && \  
 #  ln -s ../init.d/hwdetect \  
 #   ${CDCHROOTDIR}/etc/rc.d/rc4.d/S18hwdetect && \  
 #  ln -s ../init.d/hwdetect \  
 #   ${CDCHROOTDIR}/etc/rc.d/rc5.d/S18hwdetect && \  
   echo "HOSTNAME=\"${CDHOSTNAME}\"" > ${CDCHROOTDIR}/etc/hostname )  
569   evaluate_retval   evaluate_retval
570    
571   mecho Setting up services ...   mecho Setting up services ...
572   ( cat >> ${CDCHROOTDIR}/root/.bashrc << "EOF"   ( cat >> ${CDCHROOTDIR}/root/.bashrc << "EOF"
573      
574    #add createramdisk ## not needed anymore -> mountfslivecd does the job    # change mountfs with mountfslivecd
   #rc-config add createramdisk  
   
   #change mountfs with mountfslivecd  
575    rc-config del mountfs    rc-config del mountfs
576    rc-config add mountfslivecd    rc-config add mountfslivecd
577    
578    #add hardware detection    # add hardware detection
579    rc-config add hwdetect    rc-config add hwdetect
580    
581    #del checkfs    # del checkfs
582    rc-config del checkfs    rc-config del checkfs
583    
584    #exit    #exit
585    exit    exit
586  EOF  EOF
587    #run it    # run it
588    enter_chroot    enter_chroot
589    
590    #clean up    # clean up
591    if [ -e ${CDCHROOTDIR}/root/.bashrc ]    if [ -e ${CDCHROOTDIR}/root/.bashrc ]
592    then    then
593   rm ${CDCHROOTDIR}/root/.bashrc   rm ${CDCHROOTDIR}/root/.bashrc
# Line 670  EOF Line 597  EOF
597   rm  ${CDCHROOTDIR}/root/.bash_history   rm  ${CDCHROOTDIR}/root/.bash_history
598    fi )    fi )
599   evaluate_retval   evaluate_retval
600    
601   mecho Cleaning unwanted files ...   mecho Cleaning unwanted files ...
602   ( if [ -e ${CDCHROOTDIR}/etc/mtab ]   ( if [ -e ${CDCHROOTDIR}/etc/mtab ]
603    then    then
604     rm ${CDCHROOTDIR}/etc/mtab     rm ${CDCHROOTDIR}/etc/mtab
605    fi && \    fi && \
606    touch ${CDCHROOTDIR}/etc/mtab #&& \    touch ${CDCHROOTDIR}/etc/mtab
 #  rm ${CDCHROOTDIR}/etc/rc.d/rc3.d/S20network && \  
 #  rm ${CDCHROOTDIR}/etc/rc.d/rc0.d/K80network && \  
 #  rm ${CDCHROOTDIR}/etc/rc.d/rc6.d/K80network && \  
 #  rm ${CDCHROOTDIR}/etc/rc.d/rcsysinit.d/S40mountfs && \  
 #  rm ${CDCHROOTDIR}/etc/rc.d/rcsysinit.d/S30checkfs && \  
 #  rm ${CDCHROOTDIR}/bin/pidof && \  
 #  ln -s /sbin/killall5 ${CDCHROOTDIR}/bin/pidof )  
607   )   )
608   evaluate_retval   evaluate_retval
609    
 # ###########################################  
 # # bad fix cause mingetty is not installed #  
 # #echo "Please enter 'foobar' as root password:"  
 # cat > ${CDCHROOTDIR}/root/.bashrc << "EOF"  
 # echo "Please enter 'foobar' as root password:"  
 # passwd root  
 # exit  
 #EOF  
 # enter_chroot  
 # rm ${CDCHROOTDIR}/root/.bashrc  
 # cat >> ${CDCHROOTDIR}/etc/issue << "EOF"  
 #Login with user:root password:foobar  
 #  
 #EOF  
 # ###########################################  
   
610   # mingetty needs a passwordless user for autologin   # mingetty needs a passwordless user for autologin
611   # so we unset the password for 'root'   # so we unset the password for 'root'
612   cat > ${CDCHROOTDIR}/root/.bashrc << "EOF"   cat > ${CDCHROOTDIR}/root/.bashrc << "EOF"
# Line 710  EOF Line 614  EOF
614   exit   exit
615  EOF  EOF
616    
617   #run it   # run it
618   enter_chroot   enter_chroot
619   if [ -e ${CDCHROOTDIR}/root/.bashrc ]   if [ -e ${CDCHROOTDIR}/root/.bashrc ]
620   then   then
# Line 744  generate_iso() { Line 648  generate_iso() {
648   rm -f ${CDISOROOT}/$CDID   rm -f ${CDISOROOT}/$CDID
649   evaluate_retval   evaluate_retval
650   fi   fi
651    
652   #for loopback only   #for loopback only
653   if [ -f ${CDISOROOT}/livecdrootfs ]   if [ -f ${CDISOROOT}/livecdrootfs ]
654   then   then
# Line 755  generate_iso() { Line 659  generate_iso() {
659   evaluate_retval   evaluate_retval
660   fi   fi
661   fi   fi
662    
663   #for cloop loopback only   #for cloop loopback only
664   if [ -f ${CDISOROOT}/livecdrootfs.cloop ]   if [ -f ${CDISOROOT}/livecdrootfs.cloop ]
665   then   then
# Line 766  generate_iso() { Line 670  generate_iso() {
670   evaluate_retval   evaluate_retval
671   fi   fi
672   fi   fi
673    
674   #for squashfs loopback only   #for squashfs loopback only
675   if [ -f ${CDISOROOT}/livecdrootfs.sqsh ]   if [ -f ${CDISOROOT}/livecdrootfs.sqsh ]
676   then   then
# Line 784  generate_iso() { Line 688  generate_iso() {
688   rm -rf ${CDISOROOT}/isolinux   rm -rf ${CDISOROOT}/isolinux
689   evaluate_retval   evaluate_retval
690   fi   fi
691    
692   mecho Creating CD ID ...   mecho Creating CD ID ...
693   ( mkdir -p ${CDISOROOT} && \   ( mkdir -p ${CDISOROOT} && \
694    touch ${CDISOROOT}/$CDID )    touch ${CDISOROOT}/$CDID )
# Line 798  generate_iso() { Line 702  generate_iso() {
702   ${CDISOROOT}/isolinux && \   ${CDISOROOT}/isolinux && \
703    rm -rf ${CDCHROOTDIR}/usr/src/* && \    rm -rf ${CDCHROOTDIR}/usr/src/* && \
704    cp -R ${CDCHROOTDIR}/boot/* ${CDISOROOT}/isolinux && \    cp -R ${CDCHROOTDIR}/boot/* ${CDISOROOT}/isolinux && \
   #mv ${CDCHROOTDIR}/boot/* ${CDCHROOTDIR}/isolinux && \  
   #rm -rf ${CDCHROOTDIR}/boot && \  
   #ln -s isolinux ${CDCHROOTDIR}/boot && \  
705    cp ${CDLAYOUTDIR}/isolinux.cfg ${CDISOROOT}/isolinux && \    cp ${CDLAYOUTDIR}/isolinux.cfg ${CDISOROOT}/isolinux && \
706    cp ${CDLAYOUTDIR}/boot.lss ${CDISOROOT}/isolinux && \    cp ${CDLAYOUTDIR}/boot.lss ${CDISOROOT}/isolinux && \
707    cp ${CDLAYOUTDIR}/boot.msg ${CDISOROOT}/isolinux && \    cp ${CDLAYOUTDIR}/boot.msg ${CDISOROOT}/isolinux && \
708    cp ${CDLAYOUTDIR}/help.msg ${CDISOROOT}/isolinux && \    cp ${CDLAYOUTDIR}/help.msg ${CDISOROOT}/isolinux && \
709    cp ${LIVECDROOT}/initrd.gz ${CDISOROOT}/isolinux && \    cp ${LIVECDROOT}/initrd.gz ${CDISOROOT}/isolinux && \
710    source ${CDISOROOT}/isolinux/kernelversion && \    source ${CDISOROOT}/isolinux/kernelversion && \
   #mv ${CDCHROOTDIR}/isolinux/${KRNIMG} \  
   # ${CDCHROOTDIR}/isolinux/livecdkernel )  
711    cp ${CDISOROOT}/isolinux/${KRNIMG} \    cp ${CDISOROOT}/isolinux/${KRNIMG} \
712     ${CDISOROOT}/isolinux/${CDKERNELNAME} )     ${CDISOROOT}/isolinux/${CDKERNELNAME} )
713   evaluate_retval   evaluate_retval
# Line 822  generate_iso() { Line 721  generate_iso() {
721    export CDISOLOOPSIZE="$(expr 20000 + $(du -Ds chroot|cut -d 'c' -f1))" && \    export CDISOLOOPSIZE="$(expr 20000 + $(du -Ds chroot|cut -d 'c' -f1))" && \
722    dd if=/dev/zero of=${LIVECDROOT}/livecdrootfs bs=1024 count=${CDISOLOOPSIZE} &> /dev/null )    dd if=/dev/zero of=${LIVECDROOT}/livecdrootfs bs=1024 count=${CDISOLOOPSIZE} &> /dev/null )
723   evaluate_retval   evaluate_retval
724    
725   mecho Formating rootfs loopfile ...   mecho Formating rootfs loopfile ...
726   mke2fs -m 0 -i 1024 -F ${LIVECDROOT}/livecdrootfs &> /dev/null   mke2fs -m 0 -i 1024 -F ${LIVECDROOT}/livecdrootfs &> /dev/null
727   evaluate_retval   evaluate_retval
728    
729   mecho Mounting Image file ...   mecho Mounting Image file ...
730   ( mkdir -p ${CDISOLOOP} && \   ( mkdir -p ${CDISOLOOP} && \
731   mount -o loop ${LIVECDROOT}/livecdrootfs ${CDISOLOOP} )   mount -o loop ${LIVECDROOT}/livecdrootfs ${CDISOLOOP} )
732   evaluate_retval   evaluate_retval
733    
734   mecho Copying rootfs to loopfile ...   mecho Copying rootfs to loopfile ...
735   cp -a ${CDCHROOTDIR}/* ${CDISOLOOP}   cp -a ${CDCHROOTDIR}/* ${CDISOLOOP}
736   evaluate_retval   evaluate_retval
737    
738   mecho Unmounting Image file ...   mecho Unmounting Image file ...
739   umount ${CDISOLOOP}   umount ${CDISOLOOP}
740   evaluate_retval   evaluate_retval
741    
742   mecho Compressing rootfs loopfile ...   mecho Compressing rootfs loopfile ...
743   ( cat ${LIVECDROOT}/livecdrootfs | ${LIVECDROOT}/tmp/${CLOOPDIR}/create_compressed_fs - 131072 > livecdrootfs.cloop ) >/dev/null 2>&1   ( cat ${LIVECDROOT}/livecdrootfs | ${LIVECDROOT}/tmp/${CLOOPDIR}/create_compressed_fs - 131072 > livecdrootfs.cloop ) >/dev/null 2>&1
744   evaluate_retval   evaluate_retval
745    
746   mecho Moving rootfs loopfile to isoroot ...   mecho Moving rootfs loopfile to isoroot ...
747   ( rm -f ${LIVECDROOT}/livecdrootfs && \   ( rm -f ${LIVECDROOT}/livecdrootfs && \
748     mv ${LIVECDROOT}/livecdrootfs.cloop ${CDISOROOT} )     mv ${LIVECDROOT}/livecdrootfs.cloop ${CDISOROOT} )
749   evaluate_retval   evaluate_retval
750   ;;   ;;
751    
752   squashfs)   squashfs)
753   mecho Generating squashfs compressed rootfs loopfile ...   mecho Generating squashfs compressed rootfs loopfile ...
754   mksquashfs ${CDCHROOTDIR} ${LIVECDROOT}/livecdrootfs.sqsh >/dev/null 2>&1   mksquashfs ${CDCHROOTDIR} ${LIVECDROOT}/livecdrootfs.sqsh >/dev/null 2>&1
755   evaluate_retval   evaluate_retval
756    
757   mecho Moving rootfs loopfile to isoroot ...   mecho Moving rootfs loopfile to isoroot ...
758   mv ${LIVECDROOT}/livecdrootfs.sqsh ${CDISOROOT}   mv ${LIVECDROOT}/livecdrootfs.sqsh ${CDISOROOT}
759   evaluate_retval   evaluate_retval
760   ;;   ;;
761   esac   esac
762   fi   fi
763    
764   mecho Generating ISO Image ...   mecho Generating ISO Image ...
765   ( cd ${CDISOROOT} && \   ( cd ${CDISOROOT} && \
766    mkisofs -R -l -L -D -o ${LIVECDROOT}/${CDISONAME} \    mkisofs -R -l -L -D -o ${LIVECDROOT}/${CDISONAME} \
# Line 1096  case "$1" in Line 995  case "$1" in
995   echo -e "    makeall      -    builds stright ahead the livecd\n"   echo -e "    makeall      -    builds stright ahead the livecd\n"
996   ;;   ;;
997  esac  esac
   

Legend:
Removed from v.26  
changed lines
  Added in v.154