Magellan Linux

Diff of /trunk/mlivecdbuild/mlivecdbuild2.sh

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

revision 1820 by niro, Fri Nov 4 11:34:30 2011 UTC revision 1821 by niro, Tue May 29 11:08:26 2012 UTC
# Line 72  custom_services() Line 72  custom_services()
72   for i in ${services}   for i in ${services}
73   do   do
74   # systemd   # systemd
75   if [[ -x ${CDCHROOTDIR}/sbin/systemctl ]]   if [[ -x ${CDCHROOTDIR}/bin/systemctl ]] || [[ -x ${CDCHROOTDIR}/usr/bin/systemctl ]]
76   then   then
77   case ${cmd} in   case ${cmd} in
78   add) chroot ${CDCHROOTDIR} systemctl enable ${i} ;;   add) chroot ${CDCHROOTDIR} systemctl enable ${i} ;;
# Line 80  custom_services() Line 80  custom_services()
80   default)   default)
81   # convert targets   # convert targets
82   case ${i} in   case ${i} in
83   2|3) service="multi-user.target" ;;   2|3|multi-user) service="multi-user.target" ;;
84   5) service="graphical.target" ;;   5|graphical) service="graphical.target" ;;
85   esac   esac
86   chroot ${CDCHROOTDIR} systemctl enable ${i} ;;   chroot ${CDCHROOTDIR} systemctl enable ${i} ;;
87   esac   esac
88   fi   fi
89   # busybox and sysvinit   # busybox and sysvinit
90   if [[ -x ${CDCHROOTDIR}/sbin/rc-config ]]   if [[ -x ${CDCHROOTDIR}/sbin/rc-config ]] && [[ ! -x ${CDCHROOTDIR}/bin/systemctl ]]  && [[ ! -x ${CDCHROOTDIR}/usr/bin/systemctl ]]
91   then   then
92   MROOT="${CDCHROOTDIR}" rc-config ${cmd} ${i} || die "rc ${cmd} ${i}"   MROOT="${CDCHROOTDIR}" rc-config ${cmd} ${i} || die "rc ${cmd} ${i}"
93   fi   fi
# Line 168  prepare_iso() Line 168  prepare_iso()
168   echo Preparing LiveCD ISO Image ...   echo Preparing LiveCD ISO Image ...
169    
170   # fixes some issues with xfree/xorg xkb   # fixes some issues with xfree/xorg xkb
171   if [[ -L ${CDCHROOTDIR}/etc/X11/xkb ]] && [[ -d /usr/X11R6/lib/X11/xkb ]]   if [[ -L ${CDCHROOTDIR}/etc/X11/xkb ]] &&
172     [[ -d ${CDCHROOTDIR}/usr/X11R6/lib/X11/xkb ]]
173   then   then
174   rm ${CDCHROOTDIR}/etc/X11/xkb || die   rm ${CDCHROOTDIR}/etc/X11/xkb || die
175   mv ${CDCHROOTDIR}/usr/X11R6/lib/X11/xkb ${CDCHROOTDIR}/etc/X11 || die   mv ${CDCHROOTDIR}/usr/X11R6/lib/X11/xkb ${CDCHROOTDIR}/etc/X11 || die
176   ln -s ../../../../etc/X11/xkb ${CDCHROOTDIR}/usr/X11R6/lib/X11/xkb || die   ln -s ../../../../etc/X11/xkb ${CDCHROOTDIR}/usr/X11R6/lib/X11/xkb || die
177   fi   fi
178    
179     # fix issues with >=dracut-014 which drops some default modules like livecd
180     if [[ -x ${CDCHROOTDIR}/sbin/dracut ]] ||
181     [[ -x ${CDCHROOTDIR}/usr/sbin/dracut ]] ||
182     [[ -x ${CDCHROOTDIR}/usr/bin/dracut ]]
183     then
184     install -d ${CDCHROOTDIR}/etc/dracut.conf.d || die
185     echo 'add_dracutmodules+=" dmsquash-live "' \
186     > ${CDCHROOTDIR}/etc/dracut.conf.d/02-livecd.conf || die
187     fi
188    
189   # only on sysvinit or busybox systems   # only on sysvinit or busybox systems
190   if [[ -x ${CDCHROOTDIR}/sbin/rc-config ]]   if [[ -x ${CDCHROOTDIR}/sbin/rc-config ]]
191   then   then
192   install -m 0644 $(get_profile inittab) ${CDCHROOTDIR}/etc/inittab || die   install -m 0644 $(get_profile inittab) ${CDCHROOTDIR}/etc/inittab || die
193   fi   fi
194   if [[ -x ${CDCHROOTDIR}/bin/systemctl ]]   if [[ -x ${CDCHROOTDIR}/bin/systemctl ]] || [[ -x ${CDCHROOTDIR}/usr/bin/systemctl ]]
195   then   then
196   # check lock group on systemd systems   # check lock group on systemd systems
197   if [[ -z $(chroot ${CDCHROOTDIR} getent group lock) ]]   if [[ -z $(chroot ${CDCHROOTDIR} getent group lock) ]]
# Line 212  prepare_iso() Line 223  prepare_iso()
223   install -m 0644 $(get_profile issue) ${CDCHROOTDIR}/etc/issue || die   install -m 0644 $(get_profile issue) ${CDCHROOTDIR}/etc/issue || die
224   install -m 0644 $(get_profile net.eth0) ${CDCHROOTDIR}/etc/conf.d/net.eth0 || die   install -m 0644 $(get_profile net.eth0) ${CDCHROOTDIR}/etc/conf.d/net.eth0 || die
225   echo "${CDHOSTNAME}" > ${CDCHROOTDIR}/etc/hostname || die   echo "${CDHOSTNAME}" > ${CDCHROOTDIR}/etc/hostname || die
226     install -d ${CDCHROOTDIR}/mnt/magellan || die
227    
228   echo Setting up services ...   echo Setting up services ...
229    
# Line 224  prepare_iso() Line 236  prepare_iso()
236   # enable them   # enable them
237   ln -snf ../tmp.mount ${CDCHROOTDIR}/lib/systemd/system/local-fs.target.wants/tmp.mount || die   ln -snf ../tmp.mount ${CDCHROOTDIR}/lib/systemd/system/local-fs.target.wants/tmp.mount || die
238   ln -snf ../var-tmp.mount ${CDCHROOTDIR}/lib/systemd/system/local-fs.target.wants/var-tmp.mount || die   ln -snf ../var-tmp.mount ${CDCHROOTDIR}/lib/systemd/system/local-fs.target.wants/var-tmp.mount || die
239     fi
240     # newer systemd goes to /usr/lib
241     if [[ -x ${CDCHROOTDIR}/usr/bin/systemctl ]]
242     then
243     # install tmpfs /tmp and /var/tmp
244     install -m 0644 $(get_profile tmp.mount) ${CDCHROOTDIR}/usr/lib/systemd/system/ || die
245     install -m 0644 $(get_profile var-tmp.mount) ${CDCHROOTDIR}/usr/lib/systemd/system/ || die
246     # enable them
247     ln -snf ../tmp.mount ${CDCHROOTDIR}/usr/lib/systemd/system/local-fs.target.wants/tmp.mount || die
248     ln -snf ../var-tmp.mount ${CDCHROOTDIR}/usr/lib/systemd/system/local-fs.target.wants/var-tmp.mount || die
249     fi
250    
251     if [[ -x ${CDCHROOTDIR}/bin/systemctl ]] || [[ -x ${CDCHROOTDIR}/usr/bin/systemctl ]]
252     then
253   install -m 0644 $(get_profile getty) ${CDCHROOTDIR}/etc/conf.d/getty || die   install -m 0644 $(get_profile getty) ${CDCHROOTDIR}/etc/conf.d/getty || die
254    
255   custom_services add getty@.service   custom_services add getty@.service
# Line 299  generate_rootfs() Line 324  generate_rootfs()
324   fi   fi
325    
326   echo Generating squashfs compressed rootfs loopfile ...   echo Generating squashfs compressed rootfs loopfile ...
327   if [[ -x ${CDCHROOTDIR}/sbin/dracut ]]   if [[ -x ${CDCHROOTDIR}/sbin/dracut ]] ||
328     [[ -x ${CDCHROOTDIR}/usr/sbin/dracut ]] ||
329     [[ -x ${CDCHROOTDIR}/usr/bin/dracut ]]
330   then   then
331   install -d ${LIVECDROOT}/loop/{LiveOS,mnt} || die   install -d ${LIVECDROOT}/loop/{LiveOS,mnt} || die
332    
# Line 347  generate_rootfs() Line 374  generate_rootfs()
374    
375   echo Moving rootfs loopfile to isoroot ...   echo Moving rootfs loopfile to isoroot ...
376   install -d ${CDISOROOT}   install -d ${CDISOROOT}
377   if [[ -x ${CDCHROOTDIR}/sbin/dracut ]]   if [[ -x ${CDCHROOTDIR}/sbin/dracut ]] ||
378     [[ -x ${CDCHROOTDIR}/usr/sbin/dracut ]] ||
379     [[ -x ${CDCHROOTDIR}/usr/bin/dracut ]]
380   then   then
381   install -d ${CDISOROOT}/LiveOS   install -d ${CDISOROOT}/LiveOS
382   mv ${LIVECDROOT}/livecdrootfs.sqsh ${CDISOROOT}/LiveOS/squashfs.img   mv ${LIVECDROOT}/livecdrootfs.sqsh ${CDISOROOT}/LiveOS/squashfs.img
# Line 399  generate_initrd() Line 428  generate_initrd()
428   echo 'kv="$(readlink /boot/vmlinuz)"' >> ${CHROOTSH} || die   echo 'kv="$(readlink /boot/vmlinuz)"' >> ${CHROOTSH} || die
429   echo 'kv="${kv/kernel-}/"' >> ${CHROOTSH} || die   echo 'kv="${kv/kernel-}/"' >> ${CHROOTSH} || die
430   # prefer dracut   # prefer dracut
431   echo 'if [[ -x /sbin/dracut ]]' >> ${CHROOTSH} || die   echo 'if [[ -x /sbin/dracut ]] || [[ -x /usr/sbin/dracut ]] || [[ -x /usr/bin/dracut ]]' >> ${CHROOTSH} || die
432   echo 'then' >> ${CHROOTSH} || die   echo 'then' >> ${CHROOTSH} || die
433   echo ' dracut -v -f /initrd.gz ${kv}' >> ${CHROOTSH} || die   echo ' dracut -v -f /initrd.gz ${kv}' >> ${CHROOTSH} || die
434   echo 'else' >> ${CHROOTSH} || die   echo 'else' >> ${CHROOTSH} || die

Legend:
Removed from v.1820  
changed lines
  Added in v.1821