From: Michael Prokop Date: Mon, 26 Nov 2007 14:11:21 +0000 (+0100) Subject: Merged X-Git-Tag: 0.0.11~16^2~1 X-Git-Url: https://git.grml.org/?p=grml-live.git;a=commitdiff_plain;h=ff079cd77f0e36d5d754b800a75f1e011769e8ec;hp=c194b5178a55f199146d670b86508ce6a92da18a Merged --- diff --git a/debian/changelog b/debian/changelog index f6eff5c..1f30d4c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,16 +9,47 @@ grml-live (0.0.11) unstable; urgency=low grml-live (0.0.10) unstable; urgency=low + * Drop patches which are part of FAI 3.2.3 now. Depend on + FAI version 3.2.3 therefor. + * FAI 3.2.3 has a new log schema, adjusted grml-live accordingly. + Quoting the NEWS file of FAI: + - LOGDIR is now /var/log/fai/$HOSTNAME/$FAI_ACTION_date+time + - LOGDIR is /tmp/fai during an installation (not dirinstall), and + will be copied to the path above at the end of an installation + * Log the executed FAI, squashfs and mkisofs command lines to + /var/log/grml-live.log. + * New option '-C ' for specifying a configuration + file. Needs heavy testing though, because the files are updated + during runtime it isn't as easy as expected to be. :-/ + * Support $ZERO_FAI_LOGFILE inside grml-live configuration for removing + old FAI logs. * Do not enable apt-listbugs if the binary is not available. [Testing: issue340] - * Add keychain package to GRML_MEDIUM. * Add keychain package to GRML_SMALL. + * Add new packages to GRML_MEDIUM: + - grml-live + - keychain + - lzma-modules-2.6.23-grml + - squashfs-modules-2.6.23-grml (we build the module external now) + * Add new packages to GRML_FULL: + - aosd-cat + - grml-live + - lzma-modules-2.6.23-grml + - squashfs-modules-2.6.23-grml (we build the module external now) + * Support loading of squashfs module via + /etc/grml/fai/live-initramfs/grml-script.init-top + * Make sure we have pinning for grml-stable and grml-testing + repositories via /etc/grml/fai/apt/preferences, not matter where + the packages come from (web vs. local mirror/cache for example). + * Remove base.tgz from chroot directory. * Do not create /etc/sysconfig/network-scripts and /etc/sysconfig/provider any longer in cleanup script. * Fix typo in bootsplash f3 (thanks, jimmy). * Switch order of 'lang=us apm=power-off' to 'apm=poweroff' in isolinyx/syslinux/grub configuration because getbootparam of grml-autoconfig requires a whitespace inside /proc/cmdline. + * Support grml2ram bootoption inside isolinyx/syslinux/grub + configuration. -- Michael Prokop Mon, 19 Nov 2007 12:49:37 +0100 diff --git a/debian/control b/debian/control index e5e1844..b3714a6 100644 --- a/debian/control +++ b/debian/control @@ -10,7 +10,7 @@ XS-Vcs-Browser: http://hg.grml.org/grml-live/ Package: grml-live Architecture: all -Depends: fai-client (>= 3.2), fai-server (>= 3.2), memtest86+ [i386 amd64], mkisofs, squashfs-tools, syslinux [i386 amd64], wget +Depends: fai-client (>= 3.2.3), fai-server (>= 3.2.3), memtest86+ [i386 amd64], mkisofs, squashfs-tools, syslinux [i386 amd64], wget Suggests: fai-doc Description: build system for creating a grml (based) live-cd This package provides the build system for creating diff --git a/debian/rules b/debian/rules index b6f13d9..971a44a 100755 --- a/debian/rules +++ b/debian/rules @@ -38,7 +38,6 @@ install: build cp -a examples debian/grml-live/usr/share/doc/grml-live/ cp -a templates debian/grml-live/usr/share/grml-live/ cp -a scripts debian/grml-live/usr/share/grml-live/ - cp -a patches debian/grml-live/usr/share/grml-live/ cp -a buildd/*.sh debian/grml-live/usr/share/grml-live/buildd/ install -o root -m 640 buildd/grml-buildd.conf debian/grml-live/etc/grml/grml-buildd.conf install -o root -m 755 grml-live debian/grml-live/usr/sbin/grml-live diff --git a/docs/grml-live.txt b/docs/grml-live.txt index f3274bc..c4749fe 100644 --- a/docs/grml-live.txt +++ b/docs/grml-live.txt @@ -17,7 +17,7 @@ grml-live [-a ] [-c ] [-g ] [-i ] ******************************************************************************* Important! This document is growing as requested. If you have questions which aren't answered by this document yet please let me know: ! -This document currently applies to grml-live version 0.0.6. +This document currently applies to grml-live version 0.0.10. ******************************************************************************* Description @@ -72,6 +72,22 @@ can specify a class providing a grml-kernel (see /etc/grml/fai/config/package_config/ for a full list). So instead of GRML_SMALL you can also use GRML_MEDIUM and GRML_FULL instead. + -C **CONFIGURATION_FILE**:: + +The specified file is used as configuration file for grml-live. By default +/etc/grml/grml-live.conf is used for main configuration. If a file named +/etc/grml/grml-live.local exists it is used as well (sourced after reading +/etc/grml/grml-live.conf to allow overriding settings). As a last option the +specified configuration file is sourced so it is possible to override settings +of /etc/grml/grml-live.conf as well as of /etc/grml/grml-live.local. Please +notice that all configuration files have to be adjusted during execution of +grml-live, so please make sure you use /etc/grml/grml-live.conf as a base for +your own configuration file. Please also notice that the configuration file +specified via this option is **not** (yet) supported inside the +scripts/hooks/classes at /etc/grml/fai/config. Instead use +/etc/grml/grml-live.conf and/or /etc/grml/grml-live.local for configuration +stuff used inside /etc/grml/fai/config. + -F:: Force execution and do not prompt for acknowledgment of configuration. @@ -107,7 +123,7 @@ Specify the Debian suite you want to use for your live-system. Defaults to -t **TEMPLATE_DIRECTORY**:: -Specify place of the templates used for building the ISO. By default +Specify place of the templates used for building the ISO. By default (and if not manually specified) this is /usr/share/grml-live/templates/. -u:: @@ -304,14 +320,11 @@ Available log files grml-live itself logs to /var/log/grml-live.log. Unless you set ZERO_LOGFILE in /etc/grml/grml-live.conf the output is appended to the file. If you set the -ZERO_LOGFILE configuration option the logfile will be truncated on a new +ZERO_LOGFILE configuration option the logfile will be truncated on each new invocation of grml-live. -The FAI part of grml-live logs to /var/log/fai/dirinstall/$HOSTNAME - so the -default being /var/log/fai/dirinstall/grml. - -If you are using the update option of grml-live (option -u) the logs are -available at /var/log/fai/current. +The FAI part of grml-live logs to /var/log/fai/$HOSTNAME/ - so the +default being /var/log/fai/grml/. If you are using the grml-live buildd you will find the logs of the grml-live run at /var/log/grml-buildd.stdout and /var/log/grml-buildd.stderr. @@ -339,9 +352,10 @@ FAQ Help, I'm using Debian etch and I don't have FAI version >3.2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - wget http://www.informatik.uni-koeln.de/fai/download/etch/fai-client_3.2.1_all.deb \ - http://www.informatik.uni-koeln.de/fai/download/etch/fai-server_3.2.1_all.deb - dpkg -i fai-client_3.2.1_all.deb fai-server_3.2.1_all.deb + wget http://www.informatik.uni-koeln.de/fai/download/etch/fai-client_3.2.3_all.deb \ + http://www.informatik.uni-koeln.de/fai/download/etch/fai-server_3.2.3_all.deb \ + http://www.informatik.uni-koeln.de/fai/download/etch/fai-doc_3.2.3_all.deb + dpkg -i fai-client_3.2.3_all.deb fai-server_3.2.3_all.deb fai-doc_3.2.3_all.deb or check out the link:http://www.informatik.uni-koeln.de/fai/[FAI-homepage] for further details. @@ -349,14 +363,14 @@ further details. I've problems with the build process. How to start debugging? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Check out the logs inside /var/log/fai/dirinstall/... If you don't have the time -to debug the problem in further detail or don't know how to proceed just send a -copy of your config, logs and the commandline with a short problem description -to : +Check out the logs inside /var/log/fai/... If you don't have the time to debug +the problem in further detail or don't know how to proceed just send a copy of +your config, logs and the commandline with a short problem description to +: # history | grep grml-live > /etc/grml/grml_live.cmdline # tar zcf grml_live_problem.tar.gz /etc/grml/grml-live.conf \ - /var/log/fai/dirinstall /etc/grml/fai + /etc/grml/grml-buildd.conf /var/log/fai /etc/grml/fai Can I use my own (local) Debian mirror? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/etc/grml/fai/apt/preferences b/etc/grml/fai/apt/preferences index c7b2098..2004ece 100644 --- a/etc/grml/fai/apt/preferences +++ b/etc/grml/fai/apt/preferences @@ -5,10 +5,19 @@ Pin-Priority: 997 // main grml-repository: Package: * -Pin: origin deb.grml.org +Pin: release o=The grml project,a=grml-testing,l=grml,c=main Pin-Priority: 996 +Package: * +Pin: release o=The grml project,a=grml-stable,l=grml,c=main +Pin-Priority: 995 + +Package: * +Pin: origin deb.grml.org +Pin-Priority: 994 + // debian unstable pool (default): Package: * Pin: release a=unstable,o=Debian Pin-Priority: 991 + diff --git a/etc/grml/fai/config/hooks/instsoft.GRMLBASE b/etc/grml/fai/config/hooks/instsoft.GRMLBASE index 7222028..0503311 100755 --- a/etc/grml/fai/config/hooks/instsoft.GRMLBASE +++ b/etc/grml/fai/config/hooks/instsoft.GRMLBASE @@ -4,7 +4,7 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2 or any later version. -# Latest change: Mon Nov 12 11:14:32 CET 2007 [mika] +# Latest change: Sun Nov 25 18:28:54 CET 2007 [mika] ################################################################################ set -u @@ -14,7 +14,8 @@ set -e echo grml_chroot > $target/etc/debian_chroot HOSTNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$HOSTNAME" ] || HOSTNAME=grml echo "$HOSTNAME" > $target/etc/hostname @@ -22,11 +23,11 @@ if [ "$FAI_ACTION" = "softupdate" ] ; then echo "Softupdate of FAI via grml-live running" if [ -r /etc/resolv.conf ] ; then - if [ -r $target/etc/resolvconf/run/resolv.conf ] ; then - cat /etc/resolv.conf >> $target/etc/resolvconf/run/resolv.conf - else - cat /etc/resolv.conf >> $target/etc/resolv.conf - fi + if [ -r $target/etc/resolvconf/run/resolv.conf ] ; then + cat /etc/resolv.conf >> $target/etc/resolvconf/run/resolv.conf + else + cat /etc/resolv.conf >> $target/etc/resolv.conf + fi fi if [ -r $target/etc/policy-rc.d.conf ] ; then @@ -56,6 +57,8 @@ EOF fi fi + # FAI softupdate executes upgrade only with the sources.list being + # present in the chroot :-/ - so let's do it on our own: if [ -r /etc/grml/fai/apt/sources.list ] ; then if [ -L $target/etc/apt/sources.list ] ; then rm $target/etc/apt/sources.list @@ -63,10 +66,9 @@ EOF cp /etc/grml/fai/apt/sources.list $target/etc/apt/sources.list fi - # FAI softupdate does not execute upgrade, so let's do it on our own: $ROOTCMD apt-get update if [ -x $target/usr/bin/aptitude ] ; then - if strings $target/usr/bin/aptitude | grep safe-upgrade 1>/dev/null ; then + if $ROOTCMD aptitude --help | grep -q safe-upgrade ; then $ROOTCMD aptitude -y safe-upgrade else $ROOTCMD aptitude -y upgrade diff --git a/etc/grml/fai/config/package_config/GRML_FULL b/etc/grml/fai/config/package_config/GRML_FULL index 9941477..1680884 100644 --- a/etc/grml/fai/config/package_config/GRML_FULL +++ b/etc/grml/fai/config/package_config/GRML_FULL @@ -70,6 +70,7 @@ grml-files grml-firefox grml-hwinfo grml-laptop +grml-live grml-mercurial-utils grml-network grml-policyrcd @@ -165,9 +166,9 @@ ace-of-penguins ack-grep acl acpi -acpi-support acpid acpidump +acpi-support acpitail acpitool adduser @@ -181,20 +182,21 @@ ajaxterm alien alsa-base alsa-oss -alsa-utils alsaplayer-alsa alsaplayer-common alsaplayer-gtk alsaplayer-jack alsaplayer-oss +alsa-utils amanda-client amanda-common anacron antiword aoetools +aosd-cat +apache2.2-common apache2-mpm-prefork apache2-utils -apache2.2-common apcupsd apcupsd-cgi apel @@ -205,8 +207,10 @@ apmd apt apt-dpkg-ref apt-file +aptitude apt-listbugs apt-listchanges +aptsh apt-show-source apt-show-versions apt-spy @@ -214,21 +218,19 @@ apt-src apt-transport-https apt-utils apt-zip -aptitude -aptsh apwal ara archivemail argus-client aria2 arj -arp-scan arping +arp-scan arptables arpwatch array-info -array-util arrayprobe +array-util ascii ascii2binary asciidoc @@ -266,8 +268,8 @@ awesfx awesome axel axp -backup-manager backup2l +backup-manager backuppc bacula-common bacula-console @@ -297,8 +299,8 @@ bin86 binclock bind9 bind9-host -binfmt-support binfmtc +binfmt-support bing binstats binutils @@ -335,10 +337,10 @@ bwm-ng bzip2 bzr c3270 -ca-certificates cabber cabextract caca-utils +ca-certificates cadaver calcurse calife @@ -353,12 +355,12 @@ ccal ccontrol ccrypt ccze -cd-discid cdbackup cdbs cdck cdda2wav cddb +cd-discid cdebootstrap cdecl cdparanoia @@ -375,7 +377,6 @@ cfengine2 cfv cgdb check -check cheops chkrootkit chrootuid @@ -421,8 +422,8 @@ cpuid cpulimit crack crack-common -cracklib-runtime cracklib2 +cracklib-runtime cramfsprogs cron crosshurd @@ -446,8 +447,8 @@ cupsys-common curl curlftpfs cvs -cvs-buildpackage cvs2cl +cvs-buildpackage cvsconnect cvsdelta cw @@ -500,14 +501,14 @@ detox devio devscripts devtodo -dh-kpatches -dh-make -dh-make-perl dhcp3-client dhcp3-common dhcp3-server dhcpdump dhcping +dh-kpatches +dh-make +dh-make-perl di diakonos dialog @@ -538,9 +539,9 @@ dnsproxy dnstracer dnsutils docbook +docbook2odf docbook-dsssl docbook-to-man -docbook2odf dog doscan dosfstools @@ -572,9 +573,9 @@ duplicity dupload durep dvb-utils -dvd+rw-tools dvdbackup dvdisaster +dvd+rw-tools dvi2tty dvipng dviutils @@ -644,8 +645,8 @@ faad facter fai-client fai-doc -fai-server fail2ban +fai-server fake fakechroot fakeroot @@ -664,8 +665,8 @@ feh fetchmail fgetty file -file-rc filepp +file-rc filetraq fileutils findimagedupes @@ -673,9 +674,9 @@ findutils finger firehol fish -fl-cow flashrom flawfinder +fl-cow flex flexbackup flite @@ -701,17 +702,17 @@ freeradius freeradius-ldap freesweep ftp -ftp-upload ftpcopy +ftp-upload ftpwatch fttools funionfs funny-manpages -fuse-utils fusedav fuseiso fuseiso9660 fusesmb +fuse-utils fvwm fwlogwatch fxload @@ -750,12 +751,12 @@ gitpkg gitweb gkermit gkrellm -gkrellm-reminder -gkrellm-volume -gkrellm-x86info gkrellmd gkrellmitime +gkrellm-reminder +gkrellm-volume gkrellmwireless +gkrellm-x86info gkrellshoot gkrellweather glark @@ -811,11 +812,11 @@ hibernate hicolor-icon-theme hnb honeyd -hostap-utils hostapd +hostap-utils hostname -hotkey-setup hotkeys +hotkey-setup hotswap-text hoz hpijs @@ -859,14 +860,14 @@ ihu ii iisemulator ike-scan -im-switch imagemagick imapcopy imapfilter imediff2 -imlib-base imlib11 +imlib-base imsniff +im-switch imwheel inadyn indent @@ -966,17 +967,17 @@ lanmap laptop-detect laptop-mode-tools latex-beamer +latexmk latex-mk latex-xcolor -latexmk lbdb lcap -ld.so.preload-manager -ldap-utils ldapscripts +ldap-utils ldapvi lde ldnsutils +ld.so.preload-manager leave less lft @@ -1000,10 +1001,10 @@ links links2 linneighborhood lintian -linux-sound-base -linux-wlan-ng linuxdoc-tools linuxlogo +linux-sound-base +linux-wlan-ng listadmin live-initramfs lkl @@ -1131,15 +1132,15 @@ mr mrb mrxvt mrxvt-common -ms-sys msmtp msort -mt-st +ms-sys mtd-tools mtools -mtp-tools mtpaint +mtp-tools mtr-tiny +mt-st multi-aterm multipath-tools multitail @@ -1172,10 +1173,9 @@ ndiswrapper-utils-1.9 ne nedit nemesis -nessus-plugins nessusclient nessusd -net-tools +nessus-plugins netbase netcat netcat6 @@ -1186,14 +1186,15 @@ nethack-console nethogs netmask netpbm -netpipe-tcp netpipes +netpipe-tcp netrik netris netrw netsed netstat-nat netsurf +net-tools netwag netwox newsbeuter @@ -1233,12 +1234,12 @@ olsrd olsrd-plugins op opalmod -open-iscsi openafs-client openafs-krb5 openbox openbsd-inetd openipmi +open-iscsi openjade opensc openssh-client @@ -1249,9 +1250,9 @@ ophcrack opie-client orange orpheus -os-prober osdsh osiris +os-prober oss-compat p0f p3nfs @@ -1276,8 +1277,8 @@ patcher patchutils pavuk pax -pax-utils paxctl +pax-utils pbuilder pbzip2 pciutils @@ -1304,10 +1305,10 @@ perforate perl perl-base perl-doc +perlmagick perl-modules perl-suid perl-tk -perlmagick pfqueue pgf pia @@ -1347,8 +1348,8 @@ potion powermgmt-base powernowd powertop -powertweak-gtk powertweakd +powertweak-gtk pperl ppmd ppp @@ -1356,8 +1357,8 @@ pppconfig pppoe pppoeconf pppstatus -pptp-linux pptpd +pptp-linux preload preview-latex-style prismstumbler @@ -1391,6 +1392,10 @@ pxfw pydb pymacs python +python2.4 +python2.4-minimal +python2.5 +python2.5-minimal python-apt python-cddb python-celementtree @@ -1418,10 +1423,6 @@ python-subversion python-support python-twisted-bin python-urwid -python2.4 -python2.4-minimal -python2.5 -python2.5-minimal pytris qc-usb-utils qjackctl @@ -1491,9 +1492,9 @@ rsync rtorrent rubilicious ruby -ruby-prof ruby1.8 ruby1.8-examples +ruby-prof rungetty runit rutilt @@ -1521,8 +1522,8 @@ scponly screen screenie scrot -scsi-idle scsiadd +scsi-idle scsitools sdate sdd @@ -1553,8 +1554,8 @@ shtool sic sigit sing -sip-tester sipsak +sip-tester sitecopy sjog sl @@ -1573,11 +1574,11 @@ slurm sm smake smartmontools -smb-nat smbc smbclient smbfs smbldap-tools +smb-nat smbnetfs sn snarf @@ -1591,8 +1592,8 @@ socat sound-recorder sox sp -speech-dispatcher speechd-el +speech-dispatcher speedometer speex spell @@ -1650,7 +1651,6 @@ sysstat systune sysvinit sysvinit-utils -t-prot tagtool tailor taktuk @@ -1676,8 +1676,8 @@ tcsh tct tdl telak -telnet-ssl telnetd-ssl +telnet-ssl testdisk tetradraw tetrinet-client @@ -1715,6 +1715,7 @@ toshset toshutils tpconfig tpp +t-prot tra traceproto traceroute @@ -1771,8 +1772,8 @@ urlview uruk usbutils usbview -user-setup userinfo +user-setup uswsusp util-linux util-linux-locales @@ -1806,8 +1807,8 @@ vnc-common vncommand vnstat vobcopy -vorbis-tools vorbisgain +vorbis-tools vpnc vrfy vrms @@ -1828,8 +1829,8 @@ wavemon wcalc wdiff webcam -webcam-server webcamd +webcam-server webcheck webcpp weblint-perl @@ -1861,10 +1862,9 @@ workbone wpasupplicant wprint wput -wwwconfig-common wvdial +wwwconfig-common wyrd -x-ttcidfont-conf x11-common x11vnc x2x @@ -1995,6 +1995,7 @@ xtermcontrol xtermset xtrace xtrlock +x-ttcidfont-conf xtv xutils xutils-dev @@ -2079,6 +2080,7 @@ linux-image-2.6.23-grml #linux-source-2.6.23-grml linux-wlan-ng-modules-2.6.23-grml loop-aes-modules-2.6.23-grml +lzma-modules-2.6.23-grml madwifi-modules-2.6.23-grml ndiswrapper-modules-2.6.23-grml nozomi-modules-2.6.23-grml @@ -2090,6 +2092,7 @@ rt2400-modules-2.6.23-grml rt2500-modules-2.6.23-grml rt73-module-2.6.23-grml sl-modem-modules-2.6.23-grml +squashfs-modules-2.6.23-grml sysprof-module-2.6.23-grml tp-smapi-modules-2.6.23-grml truecrypt-2.6.23-grml diff --git a/etc/grml/fai/config/package_config/GRML_MEDIUM b/etc/grml/fai/config/package_config/GRML_MEDIUM index cf95af3..8fc659d 100644 --- a/etc/grml/fai/config/package_config/GRML_MEDIUM +++ b/etc/grml/fai/config/package_config/GRML_MEDIUM @@ -74,6 +74,7 @@ grml-docs grml-etc grml-etc-core grml-hwinfo +grml-live grml-network grml-policyrcd grml-rebuildfstab @@ -266,8 +267,7 @@ zip zsh PACKAGES aptitude I386 -linux-image-2.6.23-grml aufs-modules-2.6.23-grml grml-kerneladdons-2.6.23 -# linux-image-2.6.22-grml aufs-modules-2.6.22-grml grml-kerneladdons-2.6.22 +linux-image-2.6.23-grml squashfs-modules-2.6.23-grml lzma-modules-2.6.23-grml aufs-modules-2.6.23-grml grml-kerneladdons-2.6.23 PACKAGES aptitude AMD64 linux-image-2.6.23-grml64 aufs-modules-2.6.23-grml64 diff --git a/etc/grml/fai/config/scripts/GRMLBASE/05-hostname b/etc/grml/fai/config/scripts/GRMLBASE/05-hostname index 63b9b8e..ee5ba49 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/05-hostname +++ b/etc/grml/fai/config/scripts/GRMLBASE/05-hostname @@ -11,7 +11,8 @@ set -u set -e HOSTNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$HOSTNAME" ] || HOSTNAME=grml echo "$HOSTNAME" > $target/etc/hostname diff --git a/etc/grml/fai/config/scripts/GRMLBASE/20-sudo b/etc/grml/fai/config/scripts/GRMLBASE/20-sudo index c550c5f..eb70e40 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/20-sudo +++ b/etc/grml/fai/config/scripts/GRMLBASE/20-sudo @@ -11,7 +11,8 @@ set -u set -e USERNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$USERNAME" ] || USERNAME=grml if [ -r /etc/grml/fai/files/etc/sudoers ] ; then diff --git a/etc/grml/fai/config/scripts/GRMLBASE/21-usersetup b/etc/grml/fai/config/scripts/GRMLBASE/21-usersetup index a94fc7b..3214511 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/21-usersetup +++ b/etc/grml/fai/config/scripts/GRMLBASE/21-usersetup @@ -11,7 +11,8 @@ set -u set -e USERNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$USERNAME" ] || USERNAME=grml if grep -q "$USERNAME:x:1000" $target/etc/group ; then diff --git a/etc/grml/fai/config/scripts/GRMLBASE/30-fstab b/etc/grml/fai/config/scripts/GRMLBASE/30-fstab index eb3f192..80f58d9 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/30-fstab +++ b/etc/grml/fai/config/scripts/GRMLBASE/30-fstab @@ -11,7 +11,8 @@ set -u set -e USERNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$USERNAME" ] || USERNAME=grml if [ -r /etc/grml/fai/files/etc/fstab ] ; then diff --git a/etc/grml/fai/config/scripts/GRMLBASE/34-hosts b/etc/grml/fai/config/scripts/GRMLBASE/34-hosts index 1363b95..5ee9c76 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/34-hosts +++ b/etc/grml/fai/config/scripts/GRMLBASE/34-hosts @@ -11,7 +11,8 @@ set -u set -e HOSTNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$HOSTNAME" ] || HOSTNAME=grml if [ -r /etc/grml/fai/files/etc/hosts ] ; then diff --git a/etc/grml/fai/config/scripts/GRMLBASE/95-package-information b/etc/grml/fai/config/scripts/GRMLBASE/95-package-information index 2cce18e..9a9fd84 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/95-package-information +++ b/etc/grml/fai/config/scripts/GRMLBASE/95-package-information @@ -8,15 +8,21 @@ ################################################################################ HOSTNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf +[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$HOSTNAME" ] || HOSTNAME=grml +if ! [ -d /var/log/fai/"$HOSTNAME"/last/ ] ; then + echo "Error: /var/log/fai/"$HOSTNAME"/last/ not available. Exiting.">&2 + exit 1 +fi + if [ -x $target/usr/bin/dpkg-query ] ; then $ROOTCMD dpkg-query -W --showformat='${Package}\t${Installed-Size;10}\n' > \ - /var/log/fai/dirinstall/$HOSTNAME/packages.size + /var/log/fai/$HOSTNAME/last/packages.size fi -COLUMNS=200 $ROOTCMD dpkg --list > /var/log/fai/dirinstall/$HOSTNAME/dpkg.list -COLUMNS=200 $ROOTCMD dpkg --get-selections > /var/log/fai/dirinstall/$HOSTNAME/dpkg.selections +COLUMNS=200 $ROOTCMD dpkg --list > /var/log/fai/$HOSTNAME/last/dpkg.list +COLUMNS=200 $ROOTCMD dpkg --get-selections > /var/log/fai/$HOSTNAME/last/dpkg.selections ## END OF FILE ################################################################# diff --git a/etc/grml/fai/config/scripts/GRMLBASE/96-apt-listbugs b/etc/grml/fai/config/scripts/GRMLBASE/96-apt-listbugs index a6ed5a9..a8b4a38 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/96-apt-listbugs +++ b/etc/grml/fai/config/scripts/GRMLBASE/96-apt-listbugs @@ -29,7 +29,8 @@ fi if ifclass RELEASE ; then HOSTNAME='' - [ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf + [ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf + [ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local [ -n "$HOSTNAME" ] || HOSTNAME=grml if [ -r /etc/resolv.conf ] ; then diff --git a/etc/grml/fai/live-initramfs/grml-script.init-top b/etc/grml/fai/live-initramfs/grml-script.init-top index 4b62c70..5ed49b0 100755 --- a/etc/grml/fai/live-initramfs/grml-script.init-top +++ b/etc/grml/fai/live-initramfs/grml-script.init-top @@ -127,6 +127,11 @@ if ! grep -qe debug -qe verbose /proc/cmdline 2>/dev/null ; then [ -r /proc/sys/kernel/printk ] && echo "0" > /proc/sys/kernel/printk fi +# Make sure we support squashfs: +if ! grep -q squashfs /proc/filesystems ; then + modprobe -q squashfs || log_grml_failure_msg "Warning: look like you do not have support for squashfs" +fi + if grep -q 'boot=live' /proc/cmdline 2>/dev/null ; then log_grml_begin_msg "Finished early booting sequence." ; echo "$SUCCESS" log_grml_begin_msg "Searching for GRML file, this might take a few seconds..." diff --git a/etc/grml/grml-live.conf b/etc/grml/grml-live.conf index d48f39a..4555cb7 100644 --- a/etc/grml/grml-live.conf +++ b/etc/grml/grml-live.conf @@ -3,7 +3,7 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2 or any later version. -# Latest change: Sun Oct 28 16:26:36 CET 2007 [mika] +# Latest change: Sun Nov 25 18:39:34 CET 2007 [mika] ################################################################################ # Main output directory @@ -25,6 +25,12 @@ ISO_OUTPUT="$OUTPUT/grml_isos" # Default: unset (so do not zero the logfile) #ZERO_LOGFILE='1' +# Do you want to zero / clean up / remove the previous logfiles of FAI +# before executing grml-live? Otherwise keep all the logfiles inside +# /var/log/fai/$HOSTNAME/... +# Default: unset (so do not remove the logfile(s)) +#ZERO_FAI_LOGFILE='1' + # Which Debian suite to you want to use? Unless it is set it defaults to "etch" # Supported values are: etch, lenny, sid # SUITE="sid" diff --git a/grml-live b/grml-live index 9c55ab6..0c3b5fe 100755 --- a/grml-live +++ b/grml-live @@ -4,7 +4,7 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2 or any later version. -# Latest change: Mon Nov 05 09:24:45 CET 2007 [mika] +# Latest change: Sun Nov 25 20:08:06 CET 2007 [mika] ################################################################################ # read configuration files, set some misc variables {{{ @@ -15,7 +15,7 @@ export LC_ALL=C # exit on any error: set -e -GRML_LIVE_VERSION='0.0.7' +GRML_LIVE_VERSION='0.0.10' CMDLINE="$0 $@" ISO_DATE="$(date +%Y-%m-%d)" @@ -31,6 +31,7 @@ if [ -r /var/run/fai/FAI_INSTALLATION_IN_PROGRESS ] ; then exit 1 fi +# see #449236 if [ -r /var/run/fai/fai_softupdate_is_running ] ; then echo "/usr/sbin/fai softupdate already running or was aborted before.">&2 echo "You may remove /var/run/fai/fai_softupdate_is_running and try again.">&2 @@ -67,6 +68,7 @@ bailout() { log "------------------------------------------------------------------------------" exit "$EXIT" } +# trap bailout 1 2 3 6 9 14 15 trap bailout 1 2 3 15 # }}} @@ -89,11 +91,18 @@ fi touch $LOGFILE chown root:adm $LOGFILE chmod 640 $LOGFILE -# clean/zero logfile: +# clean/zero grml-live logfile: if [ -n "$ZERO_LOGFILE" ] ; then echo -n > $LOGFILE fi +# clean/zero/remove old FAI directory: +if [ -n "$ZERO_FAI_LOGFILE" ] ; then + if [ -d /var/log/fai/"$HOSTNAME" ] ; then + rm -rf /var/log/fai/"$HOSTNAME"/"$(readlink /var/log/fai/"$HOSTNAME"/last)" + fi +fi + NFSROOT_CONF=/etc/grml/fai/make-fai-nfsroot.conf # }}} @@ -178,10 +187,11 @@ http://grml.org/bugs/ # command line parsing {{{ -while getopts "a:c:g:i:o:r:s:t:v:FhuV" opt; do +while getopts "a:C:c:g:i:o:r:s:t:v:FhuV" opt; do case "$opt" in a) ARCH="$OPTARG" ;; c) CLASSES="$OPTARG" ;; + C) CONFIG="$OPTARG" ;; g) GRML_NAME="$OPTARG" ;; i) ISO_NAME="$OPTARG" ;; o) OUTPUT="$OPTARG" @@ -217,6 +227,7 @@ if [ -z "$FORCE" ] ; then echo echo " FAI classes: $CLASSES" echo " main directory: $OUTPUT" + [ -n "$CONFIG" ] && echo " configuration: $CONFIG" [ -n "$CHROOT_OUTPUT" ] && echo " chroot target: $CHROOT_OUTPUT" [ -n "$BUILD_OUTPUT" ] && echo " build target: $BUILD_OUTPUT" [ -n "$ISO_OUTPUT" ] && echo " ISO target: $ISO_OUTPUT" @@ -240,10 +251,31 @@ if [ -z "$FORCE" ] ; then echo fi +# read local (non-packaged) configuration: +LOCAL_CONFIG=/etc/grml/grml-live.local +if [ -r "$LOCAL_CONFIG" ] ; then + log "Sourcing $LOCAL_CONFIG" + . $LOCAL_CONFIG +else + LOCAL_CONFIG='' +fi + +if [ -n "$CONFIG" ] ; then + if ! [ -f "$CONFIG" ] ; then + log "Sorry, $CONFIG could not be read. Exiting. [$(date)]" + eerror "Sorry, $CONFIG could not be read. Exiting." + bailout 1 + else + log "Sourcing $CONFIG" + . $CONFIG + fi +fi + start_seconds=$(cut -d . -f 1 /proc/uptime) log "------------------------------------------------------------------------------" log "Starting grml-live [${GRML_LIVE_VERSION}] run on $(date)" -log "Executed command line: $CMDLINE" +log "Executed grml-live command line:" +log "$CMDLINE" einfo "Logging actions to logfile $LOGFILE" # }}} @@ -269,10 +301,15 @@ fi # does this suck? YES! if [ -n "$SUITE" ] ; then - sed -i "s/SUITE=.*/SUITE=\"$SUITE\"/" $LIVE_CONF - DIST="\|\ etch\ \|\ stable\ \|\ lenny\ \|\ testing\ \|\ sid\ \|\ unstable\ " - sed -i "s/\(deb .\+\)\([ \t]+\)$DIST\([ \t]+\)\(main \)/\1\2 $SUITE \3\4/" $LIVE_CONF + for file in "$LIVE_CONF" "$CONFIG" "$LOCAL_CONFIG" ; do + if [ -n "$file" ] ; then + sed -i "s/SUITE=.*/SUITE=\"$SUITE\"/" $LIVE_CONF + DIST="\|\ etch\ \|\ stable\ \|\ lenny\ \|\ testing\ \|\ sid\ \|\ unstable\ " + sed -i "s/\(deb .\+\)\([ \t]+\)$DIST\([ \t]+\)\(main \)/\1\2 $SUITE \3\4/" $file + fi + done + sed -i "s/\(deb .\+\)\([ \t]+\)$DIST\([ \t]+\)\(main \)/\1\2 $SUITE \3\4/" /etc/grml/fai/apt/sources.list # notice: activate grml-live pool only if we are building against unstable: if grep -qe unstable -qe sid /etc/grml/fai/apt/sources.list ; then @@ -284,7 +321,11 @@ if [ -n "$SUITE" ] ; then sed -i 's/.*grml-live.*/# removed grml-live repository/' /etc/grml/fai/apt/sources.list fi - sed -i "s|FAI_DEBOOTSTRAP=\"[a-z]* |FAI_DEBOOTSTRAP=\"$SUITE |" $LIVE_CONF + for file in "$LIVE_CONF" "$CONFIG" "$LOCAL_CONFIG" ; do + if [ -n "$file" ] ; then + sed -i "s|FAI_DEBOOTSTRAP=\"[a-z]* |FAI_DEBOOTSTRAP=\"$SUITE |" "$file" + fi + done sed -i "s|FAI_DEBOOTSTRAP=\"[a-z]* |FAI_DEBOOTSTRAP=\"$SUITE |" $NFSROOT_CONF fi @@ -320,10 +361,14 @@ if [ -d "$CHROOT_OUTPUT/bin" -a -z "$UPDATE" ] ; then ewarn "$CHROOT_OUTPUT exists already, skipping stage 'fai dirinstall'" ; eend 0 else mkdir -p "$CHROOT_OUTPUT" || bailout 5 "Problem with creating $CHROOT_OUTPUT for FAI" + if [ -n "${MIRROR_DIRECTORY}" ] ; then mkdir -p "${CHROOT_OUTPUT}/${MIRROR_DIRECTORY}" mount --bind "${MIRROR_DIRECTORY}" "${CHROOT_OUTPUT}/${MIRROR_DIRECTORY}" fi + + log "Executed FAI command line:" + log "fai $VERBOSE -C $GRML_FAI_CONFIG -c$CLASSES -u $HOSTNAME $FAI_ACTION $CHROOT_OUTPUT $FAI_ARGS" fai $VERBOSE -C "$GRML_FAI_CONFIG" -c"$CLASSES" -u "$HOSTNAME" $FAI_ACTION "$CHROOT_OUTPUT" $FAI_ARGS | tee -a $LOGFILE log "Setting /etc/grml_version to $GRML_NAME $VERSION Release Codename $RELEASENAME [$ISO_DATE]" @@ -341,11 +386,7 @@ else # notice: 'fai dirinstall' does not seem to exit appropriate, so: ERROR='' - if [ -n "$UPDATE" ] ; then - CHECKLOG=/var/log/fai/current/ - else - CHECKLOG=/var/log/fai/dirinstall/$HOSTNAME/ - fi + CHECKLOG=/var/log/fai/$HOSTNAME/last if [ -r "$CHECKLOG/software.log" ] ; then # 1 errors during executing of commands # Unable to write mmap - msync (28 No space left on device) @@ -490,6 +531,11 @@ if [ -f "$BUILD_OUTPUT"/live/grml.squashfs -a -z "$UPDATE" ] ; then ewarn "$BUILD_OUTPUT/live exists already, skipping stage 'squashfs'" ; eend 0 else [ -d "$BUILD_OUTPUT"/live ] || mkdir "$BUILD_OUTPUT"/live + # make sure we don't leave (even an empty) base.tgz: + [ -f "$CHROOT_OUTPUT/base.tgz" ] && rm -f "$CHROOT_OUTPUT/base.tgz" + + # execute squashfs: + log "mksquashfs $CHROOT_OUTPUT/* $BUILD_OUTPUT/live/grml.squashfs -noappend" mksquashfs $CHROOT_OUTPUT/* $BUILD_OUTPUT/live/grml.squashfs -noappend log "Finished execution of stage 'squashfs' [$(date)]" einfo "Finished execution of stage 'squashfs'" ; eend 0 @@ -517,6 +563,7 @@ else mkdir -p "$ISO_OUTPUT" || bailout 6 "Problem with creating $ISO_OUTPUT for stage 'iso build'" CURRENT_DIR=$(pwd) cd "$BUILD_OUTPUT" && + log "mkisofs -V grml $VERSION -publisher 'grml-live | grml.org' -l -r -J -no-emul-boot -boot-load-size 4 -boot-info-table -b $BOOT_FILE -o ${ISO_OUTPUT}/${ISO_NAME} ." mkisofs -V "grml $VERSION" -publisher 'grml-live | grml.org' \ -l -r -J -no-emul-boot -boot-load-size 4 -boot-info-table \ -b $BOOT_FILE \ diff --git a/patches/fai_fix_debopts_vs_debopt.patch b/patches/fai_fix_debopts_vs_debopt.patch deleted file mode 100644 index aab6cc0..0000000 --- a/patches/fai_fix_debopts_vs_debopt.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- /usr/sbin/fai 2007-10-17 21:20:47.000000000 +0000 -+++ /usr/sbin/fai 2007-10-17 21:20:50.000000000 +0000 -@@ -223,7 +223,7 @@ - - export NFSROOT=$(source $FAI_ETC_DIR/make-fai-nfsroot.conf; echo $NFSROOT) - export FAI_DEBOOTSTRAP=$(source $FAI_ETC_DIR/make-fai-nfsroot.conf; echo $FAI_DEBOOTSTRAP) -- export FAI_DEBOOTSTRAP_OPT=$(source $FAI_ETC_DIR/make-fai-nfsroot.conf; echo $FAI_DEBOOTSTRAP_OPT) -+ export FAI_DEBOOTSTRAP_OPTS=$(source $FAI_ETC_DIR/make-fai-nfsroot.conf; echo $FAI_DEBOOTSTRAP_OPTS) - - fi - diff --git a/patches/fai_mention_debopts.patch b/patches/fai_mention_debopts.patch deleted file mode 100644 index 1b99543..0000000 --- a/patches/fai_mention_debopts.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- /usr/lib/fai/subroutines-linux 2007-10-17 21:21:11.000000000 +0000 -+++ /usr/lib/fai/subroutines-linux 2007-10-17 21:21:03.000000000 +0000 -@@ -124,7 +124,7 @@ - - local dversion=$(dpkg -l debootstrap | grep debootstrap | cut -f7 -d' ') - echo "Creating base system using debootstrap version $dversion" -- echo "Calling debootstrap $1 $FAI_ROOT $2" -+ echo "Calling debootstrap $1 $FAI_DEBOOTSTRAP_OPTS $FAI_ROOT $2" - yes '' | LC_ALL=C debootstrap $FAI_DEBOOTSTRAP_OPTS $1 $FAI_ROOT $2 - } - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/patches/fai_support_aptitude_in_updatebase b/patches/fai_support_aptitude_in_updatebase deleted file mode 100644 index 173c4cf..0000000 --- a/patches/fai_support_aptitude_in_updatebase +++ /dev/null @@ -1,14 +0,0 @@ ---- /usr/lib/fai/updatebase.orig 2007-10-29 00:12:49.000000000 +0100 -+++ /usr/lib/fai/updatebase 2007-10-29 00:13:27.000000000 +0100 -@@ -31,7 +31,11 @@ - [ $? -ne 0 ] && yes '' | $ROOTCMD dpkg --configure -a - # using the above value, causes an error: "dpkg need action" - export aptopt= -+if [ -x /usr/bin/aptitude ] ; then -+$ROOTCMD aptitude $aptopt -f -y dist-upgrade $FAI_ROOT/$tmp diff --git a/templates/boot/grub/menu.lst b/templates/boot/grub/menu.lst index 3fee5d6..7cd38df 100644 --- a/templates/boot/grub/menu.lst +++ b/templates/boot/grub/menu.lst @@ -36,6 +36,14 @@ title %GRML_NAME% %VERSION% - debug mode kernel /boot/isolinux/linux26 apm=power-off lang=us vga=791 verbose debug=vc debug initrd=initrd.gz boot=live initcall_debug nomce initrd /boot/isolinux/initrd.gz +title %GRML_NAME% %VERSION% - copy grml squashfs file to RAM +kernel /boot/isolinux/linux26 toram=grml.squashfs apm=power-off lang=us vga=791 quiet boot=live nomce +initrd /boot/isolinux/initrd.gz + +title %GRML_NAME% %VERSION% - copy medium to RAM +kernel /boot/isolinux/linux26 toram apm=power-off lang=us vga=791 quiet boot=live nomce +initrd /boot/isolinux/initrd.gz + title %GRML_NAME% %VERSION% - forensic mode kernel /boot/isolinux/linux26 vga=791 lang=us nofstab noraid nolvm noautoconfig noswap raid=noautodetect quiet initrd=initrd.gz boot=live initrd /boot/isolinux/initrd.gz diff --git a/templates/boot/isolinux/isolinux.cfg b/templates/boot/isolinux/isolinux.cfg index b3597a2..f6948d7 100644 --- a/templates/boot/isolinux/isolinux.cfg +++ b/templates/boot/isolinux/isolinux.cfg @@ -29,8 +29,14 @@ MENU LABEL grml - Standard Bootup MENU DEFAULT KERNEL linux26 APPEND apm=power-off lang=us vga=791 quiet initrd=initrd.gz boot=live nomce -# APPEND apm=power-off lang=us vga=791 live-media-path=/GRML quiet initrd=initrd.gz boot=live nomce +LABEL grml2ram +MENU LABEL grml2ram - Copy Squashfs file to RAM +MENU DEFAULT +KERNEL linux26 +APPEND apm=power-off toram=grml.squashfs lang=us vga=791 quiet initrd=initrd.gz boot=live nomce + +# deprecated: LABEL old MENU LABEL old KERNEL linux26 diff --git a/templates/boot/isolinux/syslinux.cfg b/templates/boot/isolinux/syslinux.cfg index 6c3e0ab..976365d 100644 --- a/templates/boot/isolinux/syslinux.cfg +++ b/templates/boot/isolinux/syslinux.cfg @@ -29,8 +29,14 @@ MENU LABEL grml - Standard Bootup MENU DEFAULT KERNEL linux26 APPEND apm=power-off lang=us vga=791 quiet initrd=initrd.gz boot=live nomce -# APPEND apm=power-off lang=us vga=791 live-media-path=/GRML quiet initrd=initrd.gz boot=live nomce +LABEL grml2ram +MENU LABEL grml2ram - Copy Squashfs file to RAM +MENU DEFAULT +KERNEL linux26 +APPEND apm=power-off toram=grml.squashfs lang=us vga=791 quiet initrd=initrd.gz boot=live nomce + +# deprecated: LABEL old MENU LABEL old KERNEL linux26