Commit Graph

447 Commits

Author SHA1 Message Date
Daniel Baumann e0e766e38f Adding netboot tarballs and plain squashfs images to images build script. 2011-03-09 19:03:33 +01:00
Tiago Bortoletto Vaz cd97e1bbb1 Support list of items for conditionals in package lists
This patch allows giving a list of items for the conditionals in package
lists. For example, it's possible to specify some packages for more than one
architecture in the same conditional block:

 package01
 #if ARCHITECTURE i386 amd64
 package02
 package03
 #endif
 package04

where package01 and package04 are available for all architectures, but
package02 and package03 are available only for i386 and amd64 architectures.
2011-03-09 19:03:33 +01:00
Chris Lamb 9f07c8fe6d Only install pstack on i386 (Closes: #477815) 2011-03-09 19:03:33 +01:00
Chris Lamb 9ae7a00544 Support simple conditionals in package lists
This patch adds support for simple conditionals in package lists. For
example, to limit a package to i386 only:

 foo
 #if ARCHITECTURE i386
 package-only-in-i386
 #endif
 bar

Any variable that beings in LH_ can be expanded:

 #if MODE ubuntu
 package-only-in-ubuntu
 #endif

Nesting of conditionals is not supported. If the variable to be expanded
does not exist, the conditional is false.
2011-03-09 19:03:33 +01:00
Chris Lamb c742448209 Use APT::Install-Recommends to disable installation of recommends for Etch 2011-03-09 19:03:33 +01:00
Daniel Baumann 9ad7466cf1 Adding powerpc64 to default kernel flavours (in addition to the normal 32 bit one). 2011-03-09 19:03:33 +01:00
Daniel Baumann ca342d0243 Adjusting obtaining of the date string in snapshots.sh to new git log date format. 2011-03-09 19:03:33 +01:00
Tiago Bortoletto Vaz 7ec94de645 Fixed minor typographical error in rescue flavor file. 2011-03-09 19:03:33 +01:00
Tiago Bortoletto Vaz c0e2a8d6f5 Improving rescue flavor: added a set of missing tools, mainly for file system
recover - most based on System Rescue Cd Project; Also, sorted some unsorted
tools in the rescue file.
2011-03-09 19:03:33 +01:00
Daniel Baumann 08f2d41866 Updating Richards email address. 2011-03-09 19:03:33 +01:00
Daniel Baumann ae58d0f7af Producing rsyncable tarballs where possible. 2011-03-09 19:03:33 +01:00
Daniel Baumann 917c2c094f Also taking mirrors from environment in image.sh. 2011-03-09 19:03:33 +01:00
Daniel Baumann bdd7b9754f Taking config variables for images.sh from environment. 2011-03-09 19:03:33 +01:00
Daniel Baumann eff5887e92 Handling sourceless builds in images.sh. 2011-03-09 19:03:33 +01:00
Daniel Baumann 2670fe71d1 Removing old cron example scripts for image building, they are obsoleted by images.sh. 2011-03-09 19:03:33 +01:00
Daniel Baumann 25760740b5 Updating live-magic git location. 2011-03-09 19:03:33 +01:00
Daniel Baumann 4d2d56cf8e Getting architecture dynamically in images cron script. 2011-03-09 19:03:33 +01:00
Daniel Baumann fb6e50b18b Correcting permissions in snapshot script. 2011-03-09 19:03:33 +01:00
Daniel Baumann a6a95bd632 Releasing live-helper 1.0~a45-1. 2011-03-09 19:03:33 +01:00
Daniel Baumann 76c8a9bbbf Updating snapshots url. 2011-03-09 19:03:33 +01:00
Daniel Baumann 9e55761286 Adding live-magic to snapshots. 2011-03-09 19:03:33 +01:00
Daniel Baumann 87a3a037f1 Adding debian-unofficial-archive-keyring to snapshots. 2011-03-09 19:03:33 +01:00
Daniel Baumann 2b52e06bf3 Updating live-snapshots example sources. 2011-03-09 19:03:33 +01:00
Daniel Baumann 55bc586fe6 Removing non anymore existing live-backports example sources. 2011-03-09 19:03:33 +01:00
Daniel Baumann 16c50b9803 Renaming image build script. 2011-03-09 19:03:33 +01:00
Daniel Baumann 7be45011f7 Adjusting Save_cache(); to skip already cached .deb files and only copying new packages to it. 2011-03-09 19:03:32 +01:00
Chris Lamb ac27ecc2e0 Allow fallback to chroot_package-lists inside binary lists
Without this, a modified version of the (say) "gnome" list inside
chroot_package-lists would be completely ignored when installing binary
packagelists.
2011-03-09 19:03:32 +01:00
Chris Lamb efa7c76589 Remove temporary binary package list files 2011-03-09 19:03:32 +01:00
Chris Lamb ffa20df082 Tidy calls to new Expand_packagelist 2011-03-09 19:03:32 +01:00
Chris Lamb 3cd834e69c Rewrite Expand_packagelist to not be recursive 2011-03-09 19:03:32 +01:00
Daniel Baumann 3d1f73e4da Updating snapshot build script. 2011-03-09 19:03:32 +01:00
Daniel Baumann 062840c5d4 When building snapshot images, also storing source.list away. 2011-03-09 19:03:32 +01:00
Daniel Baumann c5eea87b9c Building snapshot images with --apt-recommends disabled. 2011-03-09 19:03:32 +01:00
Daniel Baumann 5d970f5436 Adding example script to build a row of images. 2011-03-09 19:03:32 +01:00
Daniel Baumann 002c79ef51 Some formating and style cleanups. 2011-03-09 19:03:32 +01:00
Daniel Baumann cc3c1ff10d Using one single packages cache directory for all chroot packages. 2011-03-09 19:03:32 +01:00
Daniel Baumann 7bcdcf7f05 Using hardlinks to copy local packages into chroot. 2011-03-09 19:03:32 +01:00
Daniel Baumann d23cf256e8 Moving lh_chroot_packages call in lh_chroot to old place. 2011-03-09 19:03:32 +01:00
Chris Lamb 36cc525945 Install most chroot packages in one ${LH_APT} call (Closes: #475739)
This patch installs (almost) all chroot packages by queueing the package
names into a single file and then installing that. It depends on my
previous patch to install local packages by using an APT mirror.

This speeds up image build causes even greater speedups once more packages
adopt triggers.

(Packages installed by debconf preseeding are not touched, nor are packages
installed by tasks.)
2011-03-09 19:03:32 +01:00
Chris Lamb ae785955db Install local packages using a local APT repo instead of using "dpkg -i"
This patch modifies chroot_sources to build a small APT repo of the
local-packages and use that for local package installation instead of
"dpkg -i". This has a few advantages:

 * Removes the true ugliness that is "dpkg -i *.deb && apt-get install -f".
   This not only is slow and brittle, it causes scary "dpkg dependency
   error" messages to appear in build logs.

 * We can (ie. not implemented here) move to installing all the packages
   from:

    - lh_chroot_packages (ie. ${LH_PACKAGES})
    - lh_chroot_local-packages (ie. config/chroot_local-packages/*.deb)
    - lh_chroot_local-packageslists
    - lh_chroot_packages-lists
    - lh_chroot_linux-image

   .. in one shot. This would primarily improve speed as we would not keep
   invoking ${LH_APT}, and package installations can share triggers and
   suchlike -- installing a custom live-initramfs via local packages
   currently costs an additional "update-initramfs -u" call.

   It would also fix a number of obscure dependency cases, such as the one
   documented in #475739, and--if the user is using aptitude--may even
   result in better resolution choices.

 * Removes some messy and somewhat brittle code in lh_chroot_linux-image
   that edgecases a local live-initramfs.

The disadvantages are:

 * If local packages are being used and we are building in a chroot, we
   must refresh the sources list and rebuild the repo before building the
   binary images. (However, before this patch, we had to do this anyway if
   the binary mirrors were different from the chroot ones.)

 * We must add a little hack to the minimal hook to detect whether we are
   using local packages and not remove apt-utils (which creates the
   repository in lh_chroot_sources) if that is the case -- we cannot simply
   use "Install_package" inside lh_chroot_sources as we are not guaranteed
   to have working APT data because the minimal hook deliberately removes
   them!
2011-03-09 19:03:32 +01:00
Chris Lamb 5ea22591ab hooks/minimal: Use "find -print0 | xargs -0" idiom over "find | xargs" 2011-03-09 19:03:32 +01:00
Tiago Bortoletto Vaz 001bb75189 lh_chroot_local-preseed: fix minor typo 2011-03-09 19:03:32 +01:00
Daniel Baumann f4724f60b5 Releasing live-helper 1.0~a44-1. 2011-03-09 19:03:32 +01:00
Chris Lamb 46e2a3271b lh_binary_debian-installer: Add dependency on 'wget'
The 'minimal' hook removes wget, which is used extensively by the Debian
Installer hook.
2011-03-09 19:03:32 +01:00
Chris Lamb 08a0bc7155 Don't install "Recommends:" when installing local tools
This patch disables the installation of "Recommends:" packages whilst
obtaining build utilities such as 'syslinux'.

It has three benefits:

 * Doesn't waste time installing useless packages whilst building.

 * Keeps the "binary chroot" clean - packages leak into the the live system
   on a rebuild.

 * Makes the behaviour of Install_Package more predictable and independent
   of the chroot's APT configuration.
2011-03-09 19:03:32 +01:00
Chris Lamb 0e8c38206d Fix a number of issues with Syslinux templates (Closes: #476204)
This fixes:

 * The ugly "toboot" and "to\nboot" problems
 * Mistitled F4 page
 * Ugly line-breaking of Debian Live URL
2011-03-09 19:03:32 +01:00
Chris Lamb 90be1cb4b5 Use "find -path" for matching "path/to/file" files (Closes: #476206)
This means that /isolinux/isolinux.bin and /boot/grub/stage2_eltorito are
not included in md5sum files anymore as intended. It also prevents a
strange and verbose warning from appearing in build logs.
2011-03-09 19:03:32 +01:00
Chris Lamb cb88778a23 Fix quoting when installing local packages (Closes: #470683)
This was causing problems when building a package and there were binary
packages in the directory above 'config/'. See [0] and [1] for more info.

 [0] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=463406
 [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=476294
2011-03-09 19:03:32 +01:00
Chris Lamb b0a4988bb7 Fix typo in policy-rc.d 2011-03-09 19:03:32 +01:00
Daniel Baumann 5fe14264e0 Sorting image file lists. 2011-03-09 19:03:32 +01:00