From 799d4bfb31c279b72088c8ee8a16c2710ab8a309 Mon Sep 17 00:00:00 2001
From: Daniel Baumann
Date: Sun, 23 Sep 2007 10:04:48 +0200
Subject: Adding live-helper 1.0~a3-1.
---
contrib/casper-manpage/casper-snapshot.1 | 70 ++++
contrib/casper-manpage/casper.7 | 111 ++++++
debian/changelog | 6 +
debian/changelog.old | 208 ++++++++++
debian/control | 3 +-
debian/copyright | 1 -
debian/manpages | 1 +
debian/postrm | 25 ++
debian/preinst | 25 ++
debian/rules | 3 +
doc/ChangeLog | 104 ++++-
doc/README | 2 +-
doc/TODO | 1 -
functions/arguments.sh | 75 ++++
functions/cache.sh | 50 +++
functions/chroot.sh | 7 +-
functions/conffile.sh | 6 +
functions/defaults.sh | 133 ++++---
functions/help.sh | 32 +-
functions/lockfile.sh | 5 +
functions/stagefile.sh | 16 +-
functions/usage.sh | 26 +-
functions/version.sh | 13 +-
helpers/lh_binary | 76 ++--
helpers/lh_binary_chroot | 50 +++
helpers/lh_binary_encryption | 105 +++--
helpers/lh_binary_hdd | 36 +-
helpers/lh_binary_includes | 24 +-
helpers/lh_binary_iso | 83 +++-
helpers/lh_binary_linuximage | 28 +-
helpers/lh_binary_localincludes | 14 +-
helpers/lh_binary_manifest | 12 +
helpers/lh_binary_md5sum | 14 +-
helpers/lh_binary_memtest86 | 29 +-
helpers/lh_binary_net | 40 +-
helpers/lh_binary_rootfs | 102 ++++-
helpers/lh_binary_syslinux | 165 +++++++-
helpers/lh_binary_usb | 38 +-
helpers/lh_bootstrap | 19 +-
helpers/lh_bootstrap_cdebootstrap | 60 ++-
helpers/lh_bootstrap_debootstrap | 42 +-
helpers/lh_build | 33 +-
helpers/lh_chroot | 80 ++--
helpers/lh_chroot_apt | 48 ++-
helpers/lh_chroot_debianchroot | 15 +-
helpers/lh_chroot_hacks | 39 +-
helpers/lh_chroot_hooks | 22 +-
helpers/lh_chroot_hosts | 15 +-
helpers/lh_chroot_interactive | 66 +++
helpers/lh_chroot_linuximage | 36 +-
helpers/lh_chroot_localhooks | 14 +-
helpers/lh_chroot_localincludes | 16 +-
helpers/lh_chroot_localization | 33 +-
helpers/lh_chroot_localpackages | 33 +-
helpers/lh_chroot_localpackageslist | 73 ----
helpers/lh_chroot_localpackageslists | 72 ++++
helpers/lh_chroot_packages | 33 +-
helpers/lh_chroot_packageslist | 76 ----
helpers/lh_chroot_packageslists | 75 ++++
helpers/lh_chroot_proc | 15 +-
helpers/lh_chroot_resolv | 15 +-
helpers/lh_chroot_sources | 39 +-
helpers/lh_chroot_symlinks | 12 +
helpers/lh_chroot_sysfs | 15 +-
helpers/lh_chroot_sysvinit | 14 +-
helpers/lh_chroot_sysvrc | 15 +-
helpers/lh_chroot_tasks | 66 ++-
helpers/lh_clean | 34 +-
helpers/lh_config | 85 ++--
helpers/lh_losetup | 14 +-
helpers/lh_source | 44 +-
helpers/lh_source_config | 14 +-
helpers/lh_source_download | 12 +
helpers/lh_source_generic | 12 +
helpers/lh_source_hdd | 12 +
helpers/lh_source_iso | 12 +
helpers/lh_source_md5sum | 57 +++
helpers/lh_source_net | 12 +
helpers/lh_source_usb | 12 +
helpers/lh_testroot | 20 +
helpers/make-live | 126 ++++--
hooks/mini | 9 +
hooks/minimal | 9 +
includes/common/README.html | 71 ++--
includes/common/README.mirrors.html | 662 +++++++++++++++----------------
includes/common/README.mirrors.txt | 645 ++++++++++++++----------------
includes/common/README.txt | 64 +--
includes/common/install/README.sbm | 43 ++
includes/common/install/sbm.bin | Bin 0 -> 1474560 bytes
includes/common/tools/lodlin16.zip | Bin 105410 -> 110126 bytes
lists/gnome | 3 +-
lists/gnome-core | 3 +-
lists/gnome-full | 3 +-
lists/gnome-junior | 3 +-
lists/kde | 3 +-
lists/kde-core | 3 +-
lists/kde-extra | 3 +-
lists/kde-full | 3 +-
lists/kde-junior | 3 +-
lists/minimal-net | 8 -
lists/standard-x11 | 3 +-
lists/xfce | 5 +-
lists/xfce-junior | 5 +-
manpages/lh_binary.1 | 4 +-
manpages/lh_bootstrap.1 | 4 +-
manpages/lh_bootstrap_cdebootstrap.1 | 4 +-
manpages/lh_bootstrap_debootstrap.1 | 4 +-
manpages/lh_clean.1 | 5 +-
manpages/lh_testroot.1 | 4 +-
manpages/live-helper.7 | 19 +-
templates/syslinux/isolinux.cfg | 7 +-
111 files changed, 3490 insertions(+), 1408 deletions(-)
create mode 100644 contrib/casper-manpage/casper-snapshot.1
create mode 100644 contrib/casper-manpage/casper.7
create mode 100644 debian/changelog.old
create mode 100644 debian/manpages
create mode 100644 debian/postrm
create mode 100644 debian/preinst
create mode 100755 functions/arguments.sh
create mode 100755 functions/cache.sh
create mode 100755 helpers/lh_binary_chroot
create mode 100755 helpers/lh_chroot_interactive
delete mode 100755 helpers/lh_chroot_localpackageslist
create mode 100755 helpers/lh_chroot_localpackageslists
delete mode 100755 helpers/lh_chroot_packageslist
create mode 100755 helpers/lh_chroot_packageslists
create mode 100755 helpers/lh_source_md5sum
mode change 100644 => 100755 hooks/mini
mode change 100644 => 100755 hooks/minimal
create mode 100644 includes/common/install/README.sbm
create mode 100644 includes/common/install/sbm.bin
delete mode 100644 lists/minimal-net
diff --git a/contrib/casper-manpage/casper-snapshot.1 b/contrib/casper-manpage/casper-snapshot.1
new file mode 100644
index 0000000..8f27412
--- /dev/null
+++ b/contrib/casper-manpage/casper-snapshot.1
@@ -0,0 +1,70 @@
+.TH "CASPER-SNAPSHOT" 1 "Thu, 28 Sep 2006" "0.0.1" "User commands"
+
+.SH NAME
+casper-snapshot \- a simple script to ease persistence usage.
+
+.SH SYNOPSIS
+.B casper-snapshot
+.RB [\| \-c \||\| \-\-cow
+.IR DIRECTORY \|]
+.RB [\| \-d \||\| \-\-device
+.IR DEVICE \|]
+.RB [\| \-e \||\| \-\-exclude\-list
+.IR FILE \|]
+.RB [\| \-o \||\| \-\-output
+.IR FILE \|]
+.RB [\| \-t \||\| \-\-type
+.IR TYPE \|]
+.PP
+.B casper-snapshot
+.RB \-r \||\| \-\-resync\-string
+.IR STRING
+.br
+.B casper-snapshot
+.RB \-h \||\| \-\-help
+.br
+.B casper-snapshot
+.RB \-u \||\| \-\-usage
+.br
+.B casper-snapshot
+.RB \-v \||\| \-\-version
+
+.SH DESCRIPTION
+Casper-snapshot is a script which can be used to build the right types of persistent image files supported by casper. It is also used on exit by the casper init script to resync the boot-found snapshots devices.
+
+.SH OPTIONS
+.TP
+.BI "\-c, \-\-cow" DIRECTORY
+specifies the input directory to be cloned in the image file.
+Its default value "/cow" should be right for most uses. However it could be handy to specify "/home" and type ext2 for the type to prepare an image file suited to be directly mounted by casper as home.
+.TP
+.BI "\-d, \-\-device" DEVICE
+sets the device where the media which the snapshot/persistence file/partition will be put. If it is not specified, a tmpfs will be used and linked to the user's desktop to move it where it is needed. If the device has no filesystem, an ext2 fs will be automatically created and labelled according to the values specified after the "--output" value or with a sane default.
+.TP
+.BI "\-e, \-\-exclude\-list" FILE
+a file containing a list of filenames/paths that should not be saved. This exclude list will be remebered on the target snapshot media for reuse.
+.TP
+.BI "\-o, \-\-output" FILE
+the filename/label used for the output file/partition. If left blank, casper-snapshot will search for a proper file on the device or use the whole partition.
+.TP
+.BI "\-r, \-\-resync\-string" STRING
+internally used on resyncs.
+.TP
+.BI "\-t, \-\-type" TYPE
+Type could be one of "cpio", "squashfs" or "ext2".
+
+.SH BUGS
+.B casper-snapshot
+Time (and BTS) will tell.
+
+.SH HOMEPAGE
+Debian Live project
+
+.SH SEE ALSO
+.BR casper(7)
+
+.SH AUTHOR
+casper-snapshot was written Marco Amadori .
+.TP
+This manual page was written by Marco Amadori ,
+for the Debian project (but may be used by others).
diff --git a/contrib/casper-manpage/casper.7 b/contrib/casper-manpage/casper.7
new file mode 100644
index 0000000..0b14023
--- /dev/null
+++ b/contrib/casper-manpage/casper.7
@@ -0,0 +1,111 @@
+.TH CASPER 7 "Thu, 28 Sep 2006" "1.69" "Initramfs-tools hook"
+
+.SH NAME
+casper \- a hook for initramfs-tools to boot live systems.
+
+.SH SYNOPSIS
+.B BOOT=casper
+As kernel parameter boot prompt.
+
+.SH DESCRIPTION
+Casper is a hook for initramfs-tools used to generate an initramfs capable to boot live systems as those created by make-live. This includes the Debian-Live isos, netboot tarballs, and usb stick images and Ubuntu live cds. At boot time it will look for a (read-only) media containing a "/casper" directory where a root filesystems (often a compressed squashfs) is stored. If found, it will create a writable environment, using unionfs, for debian like systems to boot from.
+
+.SH RECOGNIZED BOOT OPTIONS
+.TP
+.BI "access=" ACCESS
+Set the accessibility level for physically or visually impared users.
+ACCESS must be one of v1, v2, v3, m1, or m2. v1=lesser visual impairment, v2=moderate visual impairment, v3=blindness, m1=minor motor difficulties, m2=moderate motor difficulties.
+.TP
+.B casper-getty
+This changes the auto-login on virtual terminals to use the (experimental) casper-getty code.
+With this option set the standard kernel argument "console=" is parsed and if a serial console is specified then casper-getty is used to autologin on the serial console.
+.TP
+.BI "console=" TTY "," SPEED
+Set the default console to be used with the "casper-getty" option.
+Example: "console=ttyS0,115200"
+.TP
+.BI "hostname=" HOSTNAME " , userfullname=" USERFULLNAME " , username=" USERNAME
+Those parameters lets you override values read from the config file.
+.TP
+.BI "{keyb|kbd-chooser/method}=" KEYBOARD " , {klayout|console-setup/layoutcode}=" LAYOUT " , {kvariant|console-setup/variantcode}=" VARIANT " , {kmodel|console-setup/modelcode}=" CODE " , koptions=" OPTIONS
+Configure the running keyboard as specified, if this one misses casper behaves as if "keyb=us" was specified. It will be interfered from "locale=" if locale is only 2 lowecase letters as a special case. You could also specify console layout, variant, code, and options (no defaults).
+.TP
+.B integrity-check
+If specified, an MD5 sum is calculated on the live media during boot and compared to the value found in md5sum.txt found in the root directory of that partition.
+.TP
+.BI ip= IFACE,ADDRESS,NETMASK,GATEWAY [ :IFACE,ADDRESS,NETMASK,GATEWAY "]*"
+Let you specify the name(s) and the options of the interface(s) that should be configured at boot time. Do not specify this if you want to use dhcp (default).
+.TP
+.BR ip[= frommedia ]
+If this variable is set, dhcp and static configuration are just skipped and the system will use the (must be) media-preconfigured /etc/network/interfaces instead.
+.TP
+.BI "{live-media|bootfrom}=" DEVICE
+If you specify one of this two equivalent forms, casper will first try to find this device for the "/casper" directory where the read-only root filesystem should reside. If it did not find something usable, the normal scan for block devices is performed.
+.TP
+.BI "{live-media-encryption|encryption}=" TYPE
+Casper will mount the encrypted rootfs TYPE, asking the passphrase, useful to build paranoid live systems :-). TYPE supported so far are "aes" for loop-aes encryption type.
+.TP
+.BI "live-media-offset=" BYTES
+This way you could tell casper that your image starts at offset BYTES in the above specified or autodiscovered device, this could be useful to hide the debian-live iso or image inside another iso or image, to create "clean" images.
+.TP
+.BI "live-media-timeout=" SECONDS
+Set the timeout in seconds for the device specified by "live-media=" to become ready before giving up.
+.TP
+.BI "locale=" LOCALE " | debian-installer/locale=" LOCALE
+Configure the running locale as specified, if not present the live-media rootfs configured locale will be used and if also this one misses casper behave as "locale=en_US.UTF-8" was specified. If only 2 lowercase letter are specified (like "it"), the "maybe wanted" locale is generated (like it:IT.UTF-8), in this case if also "keyb=" is unspecified is set with those 2 lowercase letters (keyb=it). Beside that facility, only UTF8 locales are supported by casper.
+.TP
+.BI "module=" NAME
+Instead of using the default optional file "order.lst" (see below) another file could be specified without the extension ".lst"; it should be placed on /casper/ directory of the live medium.
+.TP
+.BR "netboot[=" nfs "|" cifs ]
+This tells casper to perform a network mount. The parameter "nfsroot=" (with optional "nfsopts="), should specify where is the location of the root filesystem. With no args, will try cifs first, and if it fails nfs.
+.TP
+.B persistent
+Casper will look for persistent and snapshot partitions or files labeled "casper-rw", "home-rw", and files called "casper-sn*", "home-sn*" and will try to, in order: mount as /cow the first, mount the second in /home, and just copy the contents of the latter in appropriate locations (snapshots). Snapshots will be tried to be updated on reboot/shutdown. Look at casper-snapshot(1) for more informations.
+.TP
+.B nopersistent
+disables the above mentioned "persistent" feature, useful if the bootloader (like syslinux) has been installed with persistent enabled.
+.TP
+.B quickreboot
+This option causes casper to reboot without attempting to eject the media and without asking the user to remove the boot media.
+.TP
+.B "showmounts"
+This parameter will make casper to show on "/" the ro filesystems (mostly compressed) on /casper. This is not enabled by default because could lead to problems by applications like "mono" which store binary paths on installation.
+.TP
+.BI "todisk=" DEVICE
+Adding this parameter, casper will try to copy the entire read-only media to the specified device before mounting the root filesystem. It probably needs a lot of free space. Subsequent boots should then skip this step and just specify the "live-media=DEVICE" boot parameter with the same DEVICE used this time.
+.TP
+.B toram
+Adding this parameter, casper will try to copy the whole read-only media to the computer's RAM before mounting the root filesystem. This could need a lot of ram, according to the space used by the read-only media.
+.TP
+.BI "{preseed/file|file}=" FILE
+A path to a file present on the rootfs could be used to preseed debconf database.
+.TP
+.BI "package/question=" VALUE
+All debian installed packages could be preseeded from command-line that way, beware of blanks spaces, they will interfere with parsing, use a preseed file in this case.
+.TP
+.B xdebconf
+uses xdebconfigurator, if present on the rootfs, to configure X instead of the standard procedure (experimental).
+.TP
+
+.SH FILES
+.B /etc/casper.conf
+some variables can be configured via this config file.
+.TP
+.B /casper/order.lst
+This optional file contains a list of white-space or carriage-return-separated file names corresponding to disk images in the /casper directory. If this file exists, only images listed here will be merged into the root unionfs, and they will be loaded in the order listed here. The first entry in this file will be the "lowest" point in the unionfs, and the last file in this list will be on the "top" of the unionfs, directly below /cow. Without this file, any images in the /casper directory are loaded in alphanumeric order.
+.SH BUGS
+.B casper
+works fully on amd64, i386 and ppc, it should also run on other archs.
+
+.SH HOMEPAGE
+Debian Live project
+
+.SH SEE ALSO
+.BR casper-snapshot(1), initramfs-tools(8), make-live(8), make-live.conf(5)
+
+.SH AUTHOR
+casper was written by Tollen Fog Heen , Matt Zimmerman , and Marco Amadori .
+.TP
+This manual page was written by Marco Amadori ,
+for the Debian project (but may be used by others).
diff --git a/debian/changelog b/debian/changelog
index 8af6ff7..872e3ef 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+live-helper (1.0~a3-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 26 Mar 2007 00:00:00 +0100
+
live-helper (1.0~a2-1) unstable; urgency=low
* New upstream release.
diff --git a/debian/changelog.old b/debian/changelog.old
new file mode 100644
index 0000000..907eb05
--- /dev/null
+++ b/debian/changelog.old
@@ -0,0 +1,208 @@
+live-package (0.99.26-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Fri, 9 Mar 2007 12:27:00 +0100
+
+live-package (0.99.25-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Fri, 9 Mar 2007 01:49:00 +0100
+
+live-package (0.99.24-1) unstable; urgency=low
+
+ * New upstream release:
+ - adds LIVE_INCLUDE_CHROOT to the manual exported variables as reported by
+ Mathieu Geli (Closes: #412325).
+
+ -- Daniel Baumann Sun, 3 Mar 2007 12:25:00 +0100
+
+live-package (0.99.23-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Wed, 21 Feb 2007 22:08:00 +0100
+
+live-package (0.99.22-1) unstable; urgency=low
+
+ * New upstream release:
+ - updates manpage (Closes: #411008).
+
+ -- Daniel Baumann Fri, 16 Feb 2007 20:38:00 +0100
+
+live-package (0.99.21-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 12 Feb 2007 15:06:00 +0100
+
+live-package (0.99.20-1) unstable; urgency=low
+
+ * New upstream release:
+ - Fixed manual pruning in minimal flavour as suggested by
+ Bas Wijnen (Closes: #410040).
+
+ -- Daniel Baumann Thu, 1 Feb 2007 17:35:00 +0100
+
+live-package (0.99.19-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Wed, 31 Jan 2007 12:38:00 +0100
+
+live-package (0.99.18-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Thu, 25 Jan 2007 08:29:00 +0100
+
+live-package (0.99.17-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Wed, 24 Jan 2007 22:18:00 +0100
+
+live-package (0.99.16-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Thu, 18 Jan 2007 16:25:00 +0100
+
+live-package (0.99.15-1) unstable; urgency=low
+
+ * New upstream release:
+ - switched default distribution back to unstable, as unstable is usable
+ again from the kernel point of view (Closes: #400457).
+ - added file to the minimal package list (Closes: #400485).
+
+ -- Daniel Baumann Tue, 16 Jan 2007 21:24:00 +0100
+
+live-package (0.99.14-3) unstable; urgency=high
+
+ * Adding workaround for new xorg packages by including xserver-xorg-input-all
+ and xserver-xorg-video-all in all X11 package lists. See #405639 for more
+ information.
+ * Adding xdebconfigurator to all X11 package lists.
+
+ -- Daniel Baumann Fri, 5 Jan 2007 22:34:00 +0100
+
+live-package (0.99.14-2) unstable; urgency=high
+
+ * Adding workaround for initrd backup files (Closes: #404314).
+
+ -- Daniel Baumann Thu, 4 Jan 2007 20:52:00 +0100
+
+live-package (0.99.14-1) unstable; urgency=medium
+
+ * New upstream release:
+ - fixed typo for policy-rc.d hack (Closes: #396813), thanks to
+ Markus Bauer .
+ - corrected manpage section (Closes: #396083), thanks to
+ Sune Vuorela .
+ - fixes script sourcing to exclude files in .svn (Closes: #396861),
+ thanks to Markus Bauer .
+
+ -- Daniel Baumann Mon, 6 Nov 2006 00:00:00 +0200
+
+live-package (0.99.13-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 30 Oct 2006 00:00:00 +0200
+
+live-package (0.99.12-1) unstable; urgency=medium
+
+ * New upstream release.
+ - Reverted mangling of LIVE_DISTRIBUTION for sources.list generation
+ (Closes: #394226).
+
+ -- Daniel Baumann Mon, 23 Oct 2006 00:00:00 +0200
+
+live-package (0.99.11-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 16 Oct 2006 00:00:00 +0200
+
+live-package (0.99.10-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 9 Oct 2006 00:00:00 +0200
+
+live-package (0.99.9-1) unstable; urgency=medium
+
+ * New upstream release:
+ - adds support for custom repositories (Closes: #387068).
+ - using proxy for chroot creating too (Closes: #390378).
+
+ -- Daniel Baumann Mon, 2 Oct 2006 00:00:00 +0200
+
+live-package (0.99.8-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 25 Sep 2006 00:00:00 +0200
+
+live-package (0.99.7-1) unstable; urgency=medium
+
+ * New upstream release:
+ - removes the now outdated handling of testing specific kernels
+ (Closes: #387562).
+ - added fix from Bas Wijnen for space handling in
+ arguments (Closes: #388204).
+ - fixes package list handling similar to the fix suggested by Alex Owen
+ (Closes: #388060).
+
+ -- Daniel Baumann Mon, 18 Sep 2006 00:00:00 +0200
+
+live-package (0.99.6-1) unstable; urgency=medium
+
+ * New upstream release:
+ - fixing netboot.
+
+ -- Daniel Baumann Mon, 11 Sep 2006 00:00:00 +0200
+
+live-package (0.99.5-1) unstable; urgency=low
+
+ * New upstream release.
+ * Set maintainer to the project list.
+
+ -- Daniel Baumann Mon, 4 Sep 2006 00:00:00 +0200
+
+live-package (0.99.4-1) unstable; urgency=low
+
+ * New upstream release:
+ - Added patch from Alex Owen to update pxelinux.cfg
+ for NFS root in casper (Closes: #380512).
+ - Temporarily hacks xorg configuration file to remove BusID and set
+ default driver to vesa (Closes: #382391).
+
+ -- Daniel Baumann Mon, 28 Aug 2006 00:00:00 +0200
+
+live-package (0.99.3-1) unstable; urgency=low
+
+ * New upstream release:
+ - fixed configuration file handling (Closes: #384598).
+ * Update long descriptiong (Closes: #382473).
+
+ -- Daniel Baumann Mon, 21 Aug 2006 00:00:00 +0200
+
+live-package (0.99.2-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 31 Jul 2006 00:00:00 +0200
+
+live-package (0.99.1-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann Mon, 24 Jul 2006 00:00:00 +0200
+
+live-package (0.99-1) unstable; urgency=low
+
+ * Initial release.
+
+ -- Daniel Baumann Mon, 17 Jul 2006 00:00:00 +0200
diff --git a/debian/control b/debian/control
index 3a4f192..d9041ca 100644
--- a/debian/control
+++ b/debian/control
@@ -8,10 +8,9 @@ Standards-Version: 3.7.2
Package: live-helper
Architecture: all
-Depends: cdebootstrap | debootstrap, genext2fs, genisoimage | mkisofs, squashfs-tools
+Depends: cdebootstrap (>= 0.3.15) | debootstrap (>= 0.3.3.2)
Conflicts: live-package
Replaces: live-package
-Suggests: aesloop
Provides: make-live
Description: Debian Live helper programs
Live-helper is a collection of programs that can be used to build Debian Live
diff --git a/debian/copyright b/debian/copyright
index 7e2baf5..50489e4 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -8,7 +8,6 @@ Upstream Author: Debian Live
License:
Copyright (C) 2006-2007 Daniel Baumann
- Copyright (C) 2006-2007 Marco Amadori
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/debian/manpages b/debian/manpages
new file mode 100644
index 0000000..ae53c6c
--- /dev/null
+++ b/debian/manpages
@@ -0,0 +1 @@
+contrib/casper-manpage/*
diff --git a/debian/postrm b/debian/postrm
new file mode 100644
index 0000000..88fdf8c
--- /dev/null
+++ b/debian/postrm
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+set -e
+
+case "${1}" in
+ remove)
+ for FILE in /usr/share/man/man7/casper.7 /usr/share/man/man1/casper-snapshot.1
+ do
+ dpkg-divert --package live-helper --remove --rename --divert ${FILE}.casper ${FILE}
+ done
+ ;;
+
+ purge|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+
+ ;;
+
+ *)
+ echo "postrm called with unknown argument \`${1}'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/preinst b/debian/preinst
new file mode 100644
index 0000000..752a6a6
--- /dev/null
+++ b/debian/preinst
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+set -e
+
+case "${1}" in
+ install)
+ for FILE in /usr/share/man/man7/casper.7 /usr/share/man/man1/casper-snapshot.1
+ do
+ dpkg-divert --package live-helper --add --rename --divert ${FILE}.casper ${FILE}
+ done
+ ;;
+
+ upgrade|abort-upgrade)
+
+ ;;
+
+ *)
+ echo "preinst called with unknown argument \`${1}'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/rules b/debian/rules
index 1d9b92c..7bd258d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -25,6 +25,8 @@ install: build
# Installing package
$(MAKE) install DESTDIR=$(CURDIR)/debian/live-helper
+ install -m 644 debian/changelog.old debian/live-helper/usr/share/doc/live-helper/changelog.Debian.old
+
# Removing double files
rm -f debian/live-helper/usr/share/doc/live-helper/COPYING
rm -f debian/live-helper/usr/share/doc/live-helper/ChangeLog
@@ -39,6 +41,7 @@ binary-indep: build install
dh_installchangelogs doc/ChangeLog
dh_installdocs
dh_install
+ dh_installman
dh_compress
dh_fixperms
dh_installdeb
diff --git a/doc/ChangeLog b/doc/ChangeLog
index a3eae21..7ef0bf0 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,105 @@
+2006-03-26 Daniel Baumann
+
+ * functions/defaults.sh:
+ - Fixed handling of desktop list variable loop.
+ * Uploaded 1.0~a3-1.
+
+2006-03-25 Daniel Baumann
+
+ * functions/*, helpers/*:
+ - Renamed LIVE_FLAVOUR to LIVE_BOOTSTRAP_FLAVOUR.
+ - Renamed LIVE_PACKAGES_LIST to LIVE_PACKAGES_LISTS.
+ * functions/cache.sh:
+ - Added.
+ * helpers/lh_bootstrap_cdebootstrap:
+ - Added removal of cdebootstrap-helper-diverts.
+ * helpers/lh_binary_chroot:
+ - Added.
+ * helpers/lh_binary_rootfs:
+ - Moved filesystem routines into chroot.
+ * helpers/lh_chroot_localization, lh_chroot_localpackages,
+ lh_chroot_localpackageslists, lh_chroot_packages,
+ lh_chroot_packageslists, lh_chroot_tasks:
+ - Added check for LH_CACHE.
+ * helpers/lh_chroot_apt:
+ - Removing old apt.conf if existing as suggested by Ben Armstrong
+ .
+ * helpers/lh_chroot_hacks:
+ - Added check for already installed smbfs.
+ - Added check for already configured initramfs.conf as suggested by
+ Ben Armstrong .
+ * helpers/lh_chroot_interactive:
+ - Added.
+ * helpers/lh_chroot_tasks:
+ - Added routine for LH_APT=apt.
+ * lists/minimal-net:
+ - Minimized.
+
+2006-03-24 Daniel Baumann
+
+ * functions/*, helpers/*, hooks/*:
+ - Added GPL blurb.
+ * functions/arguments.sh, helpers/*:
+ - Added common arguments.
+ * functions/arguments.sh, stagefile.sh, helpers/*,
+ manpages/live-helper.7:
+ - Added --force option.
+ * functions/defaults.sh, helpers/lh_binary_syslinux, lh_config,
+ make-live:
+ - Added LIVE_USERNAME and LIVE_HOSTNAME.
+ * helpers/lh_binary_linuximage, lh_binary_memtest86,
+ lh_binary_syslinux:
+ - Moved kernel directory to live.
+ * helpers/lh_clean:
+ - Added purge.
+
+2006-03-23 Daniel Baumann
+
+ * helpers/make-live:
+ - Calling Arguments twice to catch case with non-default root.
+
+2006-03-22 Daniel Baumann
+
+ * functions/default.sh, helpers/*:
+ - Renamed lh_chroot_packageslist to lh_chroot_packageslists and
+ lh_chroot_localpackageslist to lh_chroot_localpackageslists
+ * helpers/lh_binary_includes:
+ - Using LIVE_INCLUDES now.
+ * helpers/lh_chroot_apt:
+ - Added LH_APT_SECURE.
+ * helpers/lh_chroot_linuximage:
+ - Added check for LIVE_KERNEL_PACKGES=none to allow kernel packages as
+ local packages.
+
+2006-03-21 Daniel Baumann
+
+ * helpers/lh_binary_hdd, lh_binary_iso, lh_binary_net, lh_binary_usb:
+ - Checking earlier if there is something todo.
+ * helpers/lh_binary_linuximage, lh_binary_syslinux,
+ lh_chroot_linuximage, templates/syslinux/isolinux.cfg:
+ - Extended to support multiple kernels at once.
+ * helpers/lh_binary_includes, lh_binary_localincludes,
+ lh_chroot_localincludes:
+ - Replaced path with variable as suggested Kai Hendry .
+ * helpers/lh_source_md5sum:
+ - Added.
+ * helpers/make-live:
+ - Added short options in ARGUMENTS.
+ * functions/defaults.sh, helpers/*:
+ - Renamed LIVE_KERNEL to LIVE_KERNEL_FLAVOUR.
+ - Renamed LIVE_MIRROR_LOCAL to LIVE_MIRROR_BUILD and
+ LIVE_MIRROR_GENERIC to LIVE_MIRROR_IMAGE.
+
+2006-03-20 Daniel Baumann
+
+ * helpers/make-live:
+ - Fixed typo in ARGUMENTS.
+
+2006-03-19 Daniel Baumann
+
+ * lists/gnome*, kde*, standard-x11, xfce*:
+ - Added alsa-base, alsa-oss, alsa-utils, and discover.
+
2006-03-19 Daniel Baumann
* Uploaded 1.0~a2-1.
@@ -15,7 +117,7 @@
- Renamed LIVE_MIRROR to LIVE_MIRROR_LOCAL and LIVE_MIRROR_SECURITY
to LIVE_MIRROR_LOCAL_SECURITY.
* doc/examples/beryl-hook.sh:
- - Added, thanks to Inigo Tejedor Arrondo .
+ - Added, submitted by Inigo Tejedor Arrondo .
* helpers/lh_config, make-live:
- Added check for newconfig to prevent overwriting of non-specified
options to default values.
diff --git a/doc/README b/doc/README
index 6cb9ed2..22e5686 100644
--- a/doc/README
+++ b/doc/README
@@ -18,7 +18,7 @@
|_ lh_chroot_packageslists
|_ lh_chroot_packages
|_ lh_chroot_localpackages
- |_ lh_chroot_localpackageslist
+ |_ lh_chroot_localpackageslists
|_ lh_chroot_localization
|_ lh_chroot_hacks
|_ lh_chroot_localincludes
diff --git a/doc/TODO b/doc/TODO
index 9723fed..6444a26 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -4,7 +4,6 @@ Fixme:
* make helpers call required stuff when needed
* integrate lh_chroot_hacks
* cleanup variable names
- * do not use full-path anymore
Todo:
diff --git a/functions/arguments.sh b/functions/arguments.sh
new file mode 100755
index 0000000..4f60ae2
--- /dev/null
+++ b/functions/arguments.sh
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+# arguments.sh - handle common arguments
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+PROGRAM="`basename ${0}`"
+
+Arguments ()
+{
+ ARGUMENTS="`getopt --longoptions force,help,usage,version --name=${PROGRAM} --options huv --shell sh -- "${@}"`"
+
+ if [ "${?}" != "0" ]
+ then
+ echo "terminating" >&2
+ exit 1
+ fi
+
+ eval set -- "${ARGUMENTS}"
+
+ while true
+ do
+ case "${1}" in
+ --conffile)
+ CONFFILE="FIXME"; shift
+ ;;
+
+ --debug)
+ DEBUG="FIXME"; shift
+ ;;
+
+ --force)
+ FORCE="true"; shift
+ ;;
+
+ -h|--help)
+ Help; shift
+ ;;
+
+ --logfile)
+ LOGFILE="FIXME"; shift
+ ;;
+
+ --quiet)
+ QUIET="FIXME"; shift
+ ;;
+
+ -u|--usage)
+ Usage; shift
+ ;;
+
+ --verbose)
+ VERBOSE="FIXME"; shift
+ ;;
+
+ -v|--version)
+ Version; shift
+ ;;
+
+ --)
+ shift; break
+ ;;
+
+ *)
+ echo "internal error"
+ exit 1
+ ;;
+ esac
+ done
+}
diff --git a/functions/cache.sh b/functions/cache.sh
new file mode 100755
index 0000000..bffe1a3
--- /dev/null
+++ b/functions/cache.sh
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+# cache.sh - manage package cache
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+Restore_cache ()
+{
+ CACHEDIRECTORY="${1}"
+
+ if [ "${LH_CACHE}" = "enabled" ]
+ then
+ if [ -d "${CACHEDIRECTORY}" ]
+ then
+ # Restore old cache
+ cp "${CACHEDIRECTORY}"/*.deb chroot/var/cache/apt/archives
+ fi
+ fi
+}
+
+Save_cache ()
+{
+ CACHEDIRECTORY="${1}"
+
+ if [ "${LH_CACHE}" = "enabled" ]
+ then
+ # Cleaning current cache
+ Chroot "apt-get autoclean"
+
+ if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
+ then
+ # Creating cache directory
+ if [ ! -d "${CACHEDIRECTORY}" ]
+ then
+ mkdir -p "${CACHEDIRECTORY}"
+ fi
+
+ # Saving new cache
+ mv -f chroot/var/cache/apt/archives/*.deb "${CACHEDIRECTORY}"
+ fi
+ else
+ # Purging current cache
+ rm -f chroot/var/cache/apt/archives/*.deb
+ fi
+}
diff --git a/functions/chroot.sh b/functions/chroot.sh
index 0dc0215..34efa0b 100755
--- a/functions/chroot.sh
+++ b/functions/chroot.sh
@@ -1,6 +1,11 @@
#!/bin/sh
-# chroot.sh - chroot wrapper
+# chroot.sh - /usr/sbin/chroot wrapper script
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
diff --git a/functions/conffile.sh b/functions/conffile.sh
index 0cd8d29..fab8dc1 100755
--- a/functions/conffile.sh
+++ b/functions/conffile.sh
@@ -1,6 +1,11 @@
#!/bin/sh
# conffile.sh - handle configuration files
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -13,6 +18,7 @@ Read_conffile ()
then
if [ -r "${CONFFILE}" ]
then
+ # Sourcing configurationfile
. "${CONFFILE}"
else
echo "W: failed to read ${CONFFILE}"
diff --git a/functions/defaults.sh b/functions/defaults.sh
index 9ada89e..4774c07 100755
--- a/functions/defaults.sh
+++ b/functions/defaults.sh
@@ -1,6 +1,11 @@
#!/bin/sh
# defaults.sh - handle default values
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -54,6 +59,12 @@ Set_defaults ()
LH_APT_RECOMMENDS="enabled"
fi
+ # Setting apt secure
+ if [ -z "${LH_APT_SECURE}" ]
+ then
+ LH_APT_SECURE="enabled"
+ fi
+
# Setting bootstrap program
if [ -z "${LH_BOOTSTRAP}" ] || [ ! -x "${LH_BOOTSTRAP}" ]
then
@@ -87,18 +98,9 @@ Set_defaults ()
fi
# Setting genisoimage
- if [ -z "${LH_GENISOIMAGE}" ] || [ ! -x "${LH_GENISOIMAGE}" ]
+ if [ -z "${LH_GENISOIMAGE}" ]
then
- if [ -x /usr/bin/genisoimage ]
- then
- LH_GENISOIMAGE="genisoimage"
- elif [ -x /usr/bin/mkisofs ]
- then
- LH_GENISOIMAGE="mkisofs"
- else
- echo "E: cannot find genisoimage nor mkisofs (FIXME)."
- exit 1
- fi
+ LH_GENISOIMAGE="genisoimage"
fi
# Setting losetup
@@ -145,33 +147,33 @@ Set_defaults ()
# LIVE_DISTRIBUTION_CONFIG
# Setting flavour value
- if [ -z "${LIVE_FLAVOUR}" ]
+ if [ -z "${LIVE_BOOTSTRAP_FLAVOUR}" ]
then
- LIVE_FLAVOUR="standard"
+ LIVE_BOOTSTRAP_FLAVOUR="standard"
fi
- # Setting local mirror value
- if [ -z "${LIVE_MIRROR_LOCAL}" ]
+ # Setting mirror to fetch packages from
+ if [ -z "${LIVE_MIRROR_BUILD}" ]
then
- LIVE_MIRROR_LOCAL="http://ftp.debian.org/debian/"
+ LIVE_MIRROR_BUILD="http://ftp.debian.org/debian/"
fi
- # Setting local security mirror value
- if [ -z "${LIVE_MIRROR_LOCAL_SECURITY}" ]
+ # Setting security mirror to fetch packages from
+ if [ -z "${LIVE_MIRROR_BUILD_SECURITY}" ]
then
- LIVE_MIRROR_LOCAL_SECURITY="http://security.debian.org/"
+ LIVE_MIRROR_BUILD_SECURITY="http://security.debian.org/"
fi
- # Setting generic mirror value
- if [ -z "${LIVE_MIRROR_GENERIC}" ]
+ # Setting mirror which ends up in the image
+ if [ -z "${LIVE_MIRROR_IMAGE}" ]
then
- LIVE_MIRROR_GENERIC="http://ftp.debian.org/debian/"
+ LIVE_MIRROR_IMAGE="http://ftp.debian.org/debian/"
fi
- # Setting generic security mirror value
- if [ -z "${LIVE_MIRROR_GENERIC_SECURITY}" ]
+ # Setting security mirror which ends up in the image
+ if [ -z "${LIVE_MIRROR_IMAGE_SECURITY}" ]
then
- LIVE_MIRROR_GENERIC_SECURITY="http://security.debian.org/"
+ LIVE_MIRROR_IMAGE_SECURITY="http://security.debian.org/"
fi
# Setting sections value
@@ -182,16 +184,22 @@ Set_defaults ()
## config/chroot
+ # Setting interactive shell/X11/Xnest
+ if [ -z "${LIVE_INTERACTIVE}" ]
+ then
+ LIVE_INTERACTIVE="disabled"
+ fi
+
# Setting kernel flavour string
- if [ -z "${LIVE_KERNEL}" ]
+ if [ -z "${LIVE_KERNEL_FLAVOUR}" ]
then
case "${LIVE_ARCHITECTURE}" in
alpha)
- LIVE_KERNEL="alpha-generic"
+ LIVE_KERNEL_FLAVOUR="alpha-generic"
;;
amd64)
- LIVE_KERNEL="amd64"
+ LIVE_KERNEL_FLAVOUR="amd64"
;;
arm)
@@ -200,32 +208,32 @@ Set_defaults ()
;;
hppa)
- LIVE_KERNEL="parisc"
+ LIVE_KERNEL_FLAVOUR="parisc"
;;
i386)
- LIVE_KERNEL="486"
+ LIVE_KERNEL_FLAVOUR="486"
;;
ia64)
- LIVE_KERNEL="itanium"
+ LIVE_KERNEL_FLAVOUR="itanium"
;;
m68k)
- LIVE_KERNEL="E: You need to specify the linux kernel flavour manually on m68k."
+ LIVE_KERNEL_FLAVOUR="E: You need to specify the linux kernel flavour manually on m68k."
exit 1
;;
powerpc)
- LIVE_KERNEL="powerpc"
+ LIVE_KERNEL_FLAVOUR="powerpc"
;;
s390)
- LIVE_KERNEL="s390"
+ LIVE_KERNEL_FLAVOUR="s390"
;;
sparc)
- LIVE_KERNEL="sparc32"
+ LIVE_KERNEL_FLAVOUR="sparc32"
;;
*)
@@ -237,11 +245,11 @@ Set_defaults ()
# Set kernel packages
if [ -z "${LIVE_KERNEL_PACKAGES}" ]
then
- LIVE_KERNEL_PACKAGES="linux-image-2.6-${LIVE_KERNEL} squashfs-modules-2.6-${LIVE_KERNEL} unionfs-modules-2.6-${LIVE_KERNEL} casper"
+ LIVE_KERNEL_PACKAGES="linux-image-2.6 squashfs-modules-2.6 unionfs-modules-2.6"
if [ -n "${LIVE_ENCRYPTION}" ]
then
- LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES} loop-aes-modules-2.6-${LIVE_KERNEL} loop-aes-utils"
+ LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES} loop-aes-modules-2.6"
fi
fi
@@ -255,37 +263,35 @@ Set_defaults ()
# LIVE_PACKAGES
# Setting packages list string
- if [ -z "${LIVE_PACKAGES_LIST}" ]
+ if [ -z "${LIVE_PACKAGES_LISTS}" ]
then
- if [ "${LIVE_FLAVOUR}" = "mini" ] || [ "${LIVE_FLAVOUR}" = "minimal" ]
- then
- LIVE_PACKAGES_LIST="minimal"
- else
- LIVE_PACKAGES_LIST="standard"
- fi
+ LIVE_PACKAGES_LISTS="standard"
fi
# Setting tasks string
- for LIST in ${LIVE_PACKAGES_LIST}
+ for LIST in ${LIVE_PACKAGES_LISTS}
do
case "${LIST}" in
gnome-desktop)
- LIVE_PACKAGES_LIST="`echo ${LIVE_PACKAGES_LIST} | sed -e 's/gnome-desktop//'` standard-x11"
- LIVE_TASKS="${LIVE_TASKS} standard laptop desktop gnome-desktop"
+ LIVE_PACKAGES_LISTS="`echo ${LIVE_PACKAGES_LISTS} | sed -e 's/gnome-desktop//'` standard-x11"
+ LIVE_TASKS="`echo ${LIVE_TASKS} | sed -e 's/standard//' -e 's/laptop//' -e 's/desktop//' -e 's/gnome-desktop//'` standard laptop desktop gnome-desktop"
;;
kde-desktop)
- LIVE_PACKAGES_LIST="`echo ${LIVE_PACKAGES_LIST} | sed -e 's/kde-desktop//'` standard-x11"
- LIVE_TASKS="${LIVE_TASKS} standard laptop desktop kde-desktop"
+ LIVE_PACKAGES_LISTS="`echo ${LIVE_PACKAGES_LISTS} | sed -e 's/kde-desktop//'` standard-x11"
+ LIVE_TASKS="`echo ${LIVE_TASKS} | sed -e 's/standard//' -e 's/laptop//' -e 's/desktop//' -e 's/kde-desktop//'` standard laptop desktop kde-desktop"
;;
xfce-desktop)
- LIVE_PACKAGES_LIST="`echo ${LIVE_PACKAGES_LIST} | sed -e 's/xfce-desktop//'` standard-x11"
- LIVE_TASKS="${LIVE_TASKS} standard laptop desktop xfce-desktop"
+ LIVE_PACKAGES_LISTS="`echo ${LIVE_PACKAGES_LISTS} | sed -e 's/xfce-desktop//'` standard-x11"
+ LIVE_TASKS="`echo ${LIVE_TASKS} | sed -e 's/standard//' -e 's/laptop//' -e 's/desktop//' -e 's/xfce-desktop//'` standard laptop desktop xfce-desktop"
;;
esac
done
+ LIVE_PACKAGES_LISTS="`echo ${LIVE_PACKAGES_LISTS} | sed -e 's/ //g'`"
+ LIVE_TASKS="`echo ${LIVE_TASKS} | sed -e 's/ //g'`"
+
# Setting security updates option
if [ -z "${LIVE_SECURITY}" ]
then
@@ -301,12 +307,7 @@ Set_defaults ()
# Setting sysvinit option
if [ -z "${LIVE_SYSVINIT}" ]
then
- if [ "${LIVE_FLAVOUR}" = "mini" ]
- then
- LIVE_SYSVINIT="enabled"
- else
- LIVE_SYSVINIT="disabled"
- fi
+ LIVE_SYSVINIT="disabled"
fi
## config/image
@@ -317,6 +318,18 @@ Set_defaults ()
# Setting encryption
# LIVE_ENCRYPTION
+ # Setting username
+ if [ -z "${LIVE_USERNAME}" ]
+ then
+ LIVE_USERNAME="user"
+ fi
+
+ # Setting hostname
+ if [ -z "${LIVE_HOSTNAME}" ]
+ then
+ LIVE_HOSTNAME="debian"
+ fi
+
# Setting image type
if [ -z "${LIVE_BINARY_IMAGE}" ]
then
@@ -391,6 +404,12 @@ Set_defaults ()
# Setting syslinux splash
# LIVE_SYSLINUX_SPLASH
+ # Setting includes
+ if [ -z "${LIVE_INCLUDES}" ]
+ then
+ LIVE_INCLUDES="/usr/share/live-helper/includes"
+ fi
+
# Setting templates
if [ -z "${LIVE_TEMPLATES}" ]
then
diff --git a/functions/help.sh b/functions/help.sh
index 7a6311a..6427639 100755
--- a/functions/help.sh
+++ b/functions/help.sh
@@ -1,18 +1,38 @@
#!/bin/sh
-# help.sh - handle help information
+# help.sh - print help information
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
Help ()
{
echo "${PROGRAM} - ${DESCRIPTION}"
echo
- echo "${USAGE}"
- echo "Usage: ${PROGRAM} [-h|--help]"
- echo "Usage: ${PROGRAM} [-u|--usage]"
- echo "Usage: ${PROGRAM} [-v|--version]"
+ echo "Usage:"
echo
- echo "${HELP}"
+
+ if [ -n "${USAGE}" ]
+ then
+ echo " ${USAGE}"
+ echo
+ fi
+
+ echo " ${PROGRAM} [-h|--help]"
+ echo " ${PROGRAM} [-u|--usage]"
+ echo " ${PROGRAM} [-v|--version]"
echo
+
+ if [ -n "${HELP}" ]
+ then
+ echo "${HELP}"
+ echo
+ fi
+
echo "Report bugs to Debian Live project ."
exit 0
}
diff --git a/functions/lockfile.sh b/functions/lockfile.sh
index 02cf18b..ee01889 100755
--- a/functions/lockfile.sh
+++ b/functions/lockfile.sh
@@ -1,6 +1,11 @@
#!/bin/sh
# lockfile.sh - handle lock files
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
diff --git a/functions/stagefile.sh b/functions/stagefile.sh
index 23c3a34..d9d6503 100755
--- a/functions/stagefile.sh
+++ b/functions/stagefile.sh
@@ -1,6 +1,11 @@
#!/bin/sh
# stagefile.sh - handle stage files
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -12,8 +17,15 @@ Check_stagefile ()
# Checking stage file
if [ -f "${STAGEFILE}" ]
then
- echo "W: skipping ${STAGENAME}"
- exit 0
+ if [ "${FORCE}" = "true" ]
+ then
+ # Forcing execution
+ rm -f "${STAGEFILE}"
+ else
+ # Skipping execution
+ echo "W: skipping ${STAGENAME}"
+ exit 0
+ fi
fi
}
diff --git a/functions/usage.sh b/functions/usage.sh
index 7f8d694..8f70c46 100755
--- a/functions/usage.sh
+++ b/functions/usage.sh
@@ -1,16 +1,32 @@
#!/bin/sh
-# usage.sh - handle usage information
+# usage.sh - print usage information
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
Usage ()
{
echo "${PROGRAM} - ${DESCRIPTION}"
echo
- echo "${USAGE}"
- echo "Usage: ${PROGRAM} [-h|--help]"
- echo "Usage: ${PROGRAM} [-u|--usage]"
- echo "Usage: ${PROGRAM} [-v|--version]"
+ echo "Usage:"
+ echo
+
+ if [ -n "${USAGE}" ]
+ then
+ echo " ${USAGE}"
+ echo
+ fi
+
+ echo " ${PROGRAM} [-h|--help]"
+ echo " ${PROGRAM} [-u|--usage]"
+ echo " ${PROGRAM} [-v|--version]"
echo
echo "Try \"${PROGRAM} --help\" for more information."
+
exit 1
}
diff --git a/functions/version.sh b/functions/version.sh
index ebca430..111d531 100755
--- a/functions/version.sh
+++ b/functions/version.sh
@@ -1,8 +1,15 @@
#!/bin/sh
-# version.sh - handle version information
+# version.sh - print version information
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
-VERSION="1.0~a2"
+set -e
+
+VERSION="1.0~a3"
Version ()
{
@@ -10,7 +17,6 @@ Version ()
echo "This program is a part of live-helper."
echo
echo "Copyright (C) 2006-2007 Daniel Baumann "
- echo "Copyright (C) 2006-2007 Marco Amadori "
echo
echo "This program is free software; you can redistribute it and/or modify"
echo "it under the terms of the GNU General Public License as published by"
@@ -30,5 +36,6 @@ Version ()
echo "can be found in /usr/share/common-licenses/GPL file."
echo
echo "Homepage: "
+
exit 0
}
diff --git a/helpers/lh_binary b/helpers/lh_binary
index cc392f5..7641871 100755
--- a/helpers/lh_binary
+++ b/helpers/lh_binary
@@ -1,36 +1,64 @@
#!/bin/sh
-# lh_image(1) - building the images
+# lh_binary(1) - build binary images
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
-# Building root filesystem
-lh_binary_rootfs
-lh_binary_manifest
-lh_binary_encryption
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="build binary images"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+if [ "${FORCE}" = "true" ]
+then
+ OPTIONS="${OPTIONS} --force"
+fi
+
+# Preparing root filesystem
+lh_binary_chroot "${OPTIONS}"
# Configuring chroot
-lh_chroot_proc install
-lh_chroot_sysfs install
-lh_chroot_hosts install
-lh_chroot_resolv install
-lh_chroot_sources install
+lh_chroot_proc install "${OPTIONS}"
+lh_chroot_sysfs install "${OPTIONS}"
+lh_chroot_hosts install "${OPTIONS}"
+lh_chroot_resolv install "${OPTIONS}"
+lh_chroot_sources install "${OPTIONS}"
+
+# Building root filesystem
+lh_binary_rootfs "${OPTIONS}"
+lh_binary_manifest "${OPTIONS}"
+lh_binary_encryption "${OPTIONS}"
# Prepare images
-lh_binary_linuximage
-lh_binary_memtest86
-lh_binary_syslinux
-lh_binary_includes
-lh_binary_localincludes
-lh_binary_md5sum
+lh_binary_linuximage "${OPTIONS}"
+lh_binary_memtest86 "${OPTIONS}"
+lh_binary_syslinux "${OPTIONS}"
+lh_binary_includes "${OPTIONS}"
+lh_binary_localincludes "${OPTIONS}"
+lh_binary_md5sum "${OPTIONS}"
# Building images
-lh_binary_hdd
-lh_binary_iso
-lh_binary_net
-lh_binary_usb
+lh_binary_hdd "${OPTIONS}"
+lh_binary_iso "${OPTIONS}"
+lh_binary_net "${OPTIONS}"
+lh_binary_usb "${OPTIONS}"
# Deconfiguring chroot
rm -f .stage/chroot_sources
-lh_chroot_resolv remove
-lh_chroot_hosts remove
-lh_chroot_sysfs remove
-lh_chroot_proc remove
+lh_chroot_resolv remove "${OPTIONS}"
+lh_chroot_hosts remove "${OPTIONS}"
+lh_chroot_sysfs remove "${OPTIONS}"
+lh_chroot_proc remove "${OPTIONS}"
diff --git a/helpers/lh_binary_chroot b/helpers/lh_binary_chroot
new file mode 100755
index 0000000..5cde421
--- /dev/null
+++ b/helpers/lh_binary_chroot
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+# lh_binary_chroot(1) - copy chroot into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="copy chroot into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+# Reading configuration files
+Read_conffile config/common
+Set_defaults
+
+# Requiring stage file
+Require_stagefile .stage/bootstrap
+
+# Checking lock file
+Check_lockfile .lock
+
+# Creating lock file
+Create_lockfile .lock
+
+# Checking stage file
+Check_stagefile .stage/binary_chroot
+
+# Removing old chroot
+rm -rf chroot/chroot
+rm -rf chroot.tmp
+
+# Copying new chroot
+cp -a chroot chroot.tmp
+mv chroot.tmp chroot/chroot
+
+# Creating stage file
+Create_stagefile .stage/binary_chroot
diff --git a/helpers/lh_binary_encryption b/helpers/lh_binary_encryption
index 871adaa..03c056f 100755
--- a/helpers/lh_binary_encryption
+++ b/helpers/lh_binary_encryption
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_encryption(1) - encrypts rootfs
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,31 +15,32 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="encrypts rootfs"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
Set_defaults
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-Require_stagefile .stage/binary_rootfs
+if [ -n "${LIVE_ENCRYPTION}" ]
+then
+ # Requiring stage file
+ Require_stagefile .stage/bootstrap
+ Require_stagefile .stage/binary_rootfs
-# Checking lock file
-Check_lockfile .lock
+ # Checking lock file
+ Check_lockfile .lock
-# Creating lock file
-Create_lockfile .lock
+ # Creating lock file
+ Create_lockfile .lock
-# Checking stage file
-Check_stagefile .stage/binary_encryption
-
-if [ -n "${LIVE_ENCRYPTION}" ]
-then
- if [ ! -x /usr/bin/aespipe ]
- then
- echo "E: aespipe is missing (FIXME)."
- exit 1
- fi
+ # Checking stage file
+ Check_stagefile .stage/binary_encryption
case "${LIVE_FILESYSTEM}" in
ext2)
@@ -51,22 +57,65 @@ then
;;
esac
+ if [ ! -f chroot/usr/bin/aespipe ]
+ then
+ PACKAGES="${PACKAGES} aespipe"
+ fi
+
+ if [ -n "${PACKAGES}" ]
+ then
+ # Installing packages
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
+
+ # Moving image
+ mv binary/casper/filesystem.${LIVE_FILESYSTEM} chroot
+
echo "Encrypting binary/casper/filesystem.${ROOTFS} with ${LIVE_ENCRYPTION}..."
- while true
- do
- cat binary/casper/filesystem.${ROOTFS} | aespipe -e "${LIVE_ENCRYPTION}" -T > binary/casper/filesystem.${ROOTFS} && break
+cat >> chroot/encrypt << EOF
+while true
+do
+ cat filesystem.${ROOTFS} | aespipe -e ${LIVE_ENCRYPTION} -T > filesystem.${ROOTFS} && break
+
+ echo -n "Something went wrong... Retry? [YES/no] "
+
+ read ANSWER
- echo -n "Something went wrong... Retry? [YES/no] "
+ if [ "no" = "${ANSWER}" ]
+ then
+ unset ANSWER
+ break
+ fi
+done
+EOF
- read ANSWER
+ Chroot "sh encrypt"
- if [ 'no' = "${ANSWER}" ]
- then
- unset ANSWER
- break
- fi
- done
+ # Move image
+ mv chroot/filesystem.${LIVE_FILESYSTEM} binary/casper
+ rm -f chroot/encrypt
+
+ # Removing packages
+ if [ -n "${PACKAGES}" ]
+ then
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get remove --purge --yes ${PACKAGES}"
+ ;;
+ aptitude)
+ Chroot "aptitude purge --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
# Creating stage file
Create_stagefile .stage/binary_encryption
diff --git a/helpers/lh_binary_hdd b/helpers/lh_binary_hdd
index d973db5..f41fbf4 100755
--- a/helpers/lh_binary_hdd
+++ b/helpers/lh_binary_hdd
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_hdd(1) - build harddisk binary image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,28 +15,35 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build harddisk binary image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
Read_conffile config/image
Set_defaults
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-# Checking stage file
-Check_stagefile .stage/binary_hdd
-
for IMAGE in ${LIVE_BINARY_IMAGE}
do
if [ "${IMAGE}" = "hdd" ]
then
+ # Requiring stage file
+ Require_stagefile .stage/bootstrap
+
+ # Checking lock file
+ Check_lockfile .lock
+
+ # Creating lock file
+ Create_lockfile .lock
+
+ # Checking stage file
+ Check_stagefile .stage/binary_hdd
+
# Remove old binary
if [ -f binary-hdd.tar.gz ]
then
diff --git a/helpers/lh_binary_includes b/helpers/lh_binary_includes
index 647ed0b..6fbaeed 100755
--- a/helpers/lh_binary_includes
+++ b/helpers/lh_binary_includes
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_includes(1) - copy files into binary
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="copy files into binary"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -28,14 +40,18 @@ Create_lockfile .lock
# Checking stage file
Check_stagefile .stage/binary_includes
-if ls /usr/share/live-helper/includes/common/* &> /dev/null
+if ls "${LIVE_INCLUDES}"/common/* &> /dev/null
then
- cp -r /usr/share/live-helper/includes/common/* binary
+ cd "${LIVE_INCLUDES}"/common
+ find . | cpio -dmpu "${OLDPWD}"/binary
+ cd "${OLDPWD}"
fi
-if ls /usr/share/live-helper/includes/"${LIVE_BINARY_IMAGE}"/* &> /dev/null
+if ls "${LIVE_INCLUDES}"/"${LIVE_BINARY_IMAGE}"/* &> /dev/null
then
- cp -r /usr/share/live-helper/includes/"${LIVE_BINARY_IMAGE}"/* binary
+ cd "${LIVE_INCLUDES}"/"${LIVE_BINARY_IMAGE}"
+ find . | cpio -dmpu "${OLDPWD}"/binary
+ cd "${OLDPWD}"
fi
# Creating stage file
diff --git a/helpers/lh_binary_iso b/helpers/lh_binary_iso
index 102b5a4..be9a51f 100755
--- a/helpers/lh_binary_iso
+++ b/helpers/lh_binary_iso
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_iso(1) - build iso binary image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,42 +15,90 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build iso binary image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
Read_conffile config/image
Set_defaults
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-# Checking stage file
-Check_stagefile .stage/binary_iso
-
for IMAGE in ${LIVE_BINARY_IMAGE}
do
if [ "${IMAGE}" = "iso" ]
then
- # Remove old binary
+ # Requiring stage file
+ Require_stagefile .stage/bootstrap
+
+ # Checking lock file
+ Check_lockfile .lock
+
+ # Creating lock file
+ Create_lockfile .lock
+
+ # Checking stage file
+ Check_stagefile .stage/binary_iso
+
+ if [ ! -f chroot/usr/bin/"${LH_GENISOIMAGE}" ]
+ then
+ PACKAGES="${PACKAGES} ${LH_GENISOIMAGE}"
+ fi
+
+ if [ -n "${PACKAGES}" ]
+ then
+ # Installing packages
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
+
+ # Remove old iso image
if [ -f binary.iso ]
then
rm -f binary.iso
fi
+ # Moving image
+ mv binary chroot
+
# Create image
if [ "${LIVE_ARCHITECTURE}" = "amd64" ] || [ "${LIVE_ARCHITECTURE}" = "i386" ]
then
- ${LH_GENISOIMAGE} -A "Debian Live" -p "Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org" -publisher "Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org" -o "${LIVE_IMAGE}"binary.iso -r -J -l -V "${LIVE_ISO_VOLUME}" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table binary ${LIVE_INCLUDE_IMAGE}
+ #Chroot "${LH_GENISOIMAGE} -A \"Debian Live\" -p \"Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org\" -publisher \"Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org\" -o binary.iso -r -J -l -V \"${LIVE_ISO_VOLUME}\" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table binary"
+ Chroot "${LH_GENISOIMAGE} -o binary.iso -r -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table binary"
else
echo "W: Bootloader on your architecture not yet supported (Continuing in 5 seconds)."
sleep 5
- ${LH_GENISOIMAGE} -A "Debian Live" -p "Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org" -publisher "Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org" -o "${LIVE_IMAGE}"binary.iso -r -J -l -V "${LIVE_ISO_VOLUME}" binary ${LIVE_INCLUDE_IMAGE}
+ #Chroot "${LH_GENISOIMAGE} -A 'Debian Live' -p 'Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org' -publisher 'Debian Live; http://debian-live.alioth.debian.org/; debian-live-devel@lists.alioth.debian.org' -o binary.iso -r -J -l -V \"${LIVE_ISO_VOLUME}\" binary"
+ Chroot "${LH_GENISOIMAGE} -o binary.iso -r -J -l binary"
+ fi
+
+ # Move image
+ mv chroot/binary chroot/binary.iso ./
+
+ # Removing packages
+ if [ -n "${PACKAGES}" ]
+ then
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get remove --purge --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude purge --assume-yes ${PACKAGES}"
+ ;;
+ esac
fi
# Creating stage file
diff --git a/helpers/lh_binary_linuximage b/helpers/lh_binary_linuximage
index 7a9576d..680b4c9 100755
--- a/helpers/lh_binary_linuximage
+++ b/helpers/lh_binary_linuximage
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_linuximage(1) - install linux-image into binary
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="install linux-image into binary"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
@@ -33,7 +45,7 @@ rm -f chroot/boot/initrd*bak*
# Setting destination directory
case "${LIVE_BINARY_IMAGE}" in
iso)
- DESTDIR="binary/isolinux"
+ DESTDIR="binary/live"
;;
net)
@@ -45,6 +57,16 @@ case "${LIVE_BINARY_IMAGE}" in
;;
esac
+# Temporary check for broken syslinux
+if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+then
+ case "${LIVE_ARCHITECTURE}" in
+ i386)
+ DESTDIR="${DESTDIR}.386"
+ ;;
+ esac
+fi
+
# Creating directory
if [ ! -d "${DESTDIR}" ]
then
@@ -52,8 +74,8 @@ then
fi
# Installing linux-image
-cp chroot/boot/vmlinuz* "${DESTDIR}"/vmlinuz
-cp chroot/boot/initrd.img* "${DESTDIR}"/initrd.gz
+cp chroot/boot/vmlinuz* "${DESTDIR}"
+cp chroot/boot/initrd.img* "${DESTDIR}"
# Creating stage file
Create_stagefile .stage/binary_linuximage
diff --git a/helpers/lh_binary_localincludes b/helpers/lh_binary_localincludes
index 4cc2dd8..3327100 100755
--- a/helpers/lh_binary_localincludes
+++ b/helpers/lh_binary_localincludes
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_localincludes(1) - copy files into binary
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="copy files into binary"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -31,7 +43,7 @@ if ls config/binary_localincludes/* &> /dev/null
then
# Copying includes
cd config/binary_localincludes
- find . | cpio -dmpu ../../binary
+ find . | cpio -dmpu "${OLDPWD}"/binary
cd "${OLDPWD}"
# Creating stage file
diff --git a/helpers/lh_binary_manifest b/helpers/lh_binary_manifest
index a0c2480..b0ae36c 100755
--- a/helpers/lh_binary_manifest
+++ b/helpers/lh_binary_manifest
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_manifest(1) - create manifest
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="create manifest"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_binary_md5sum b/helpers/lh_binary_md5sum
index cd925d9..c16b6d4 100755
--- a/helpers/lh_binary_md5sum
+++ b/helpers/lh_binary_md5sum
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_binary_md5sum(1) - create md5sum.txt
+# lh_binary_md5sum(1) - create binary md5sums
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="create binary md5sums"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_binary_memtest86 b/helpers/lh_binary_memtest86
index 1fc3430..c2231f6 100755
--- a/helpers/lh_binary_memtest86
+++ b/helpers/lh_binary_memtest86
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_binary_memtest86(1) - installs memtest86+
+# lh_binary_memtest86(1) - installs memtest86+ into binary
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="installs memtest86+ into binary"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
@@ -55,9 +67,10 @@ then
esac
fi
+ # Setting destination directory
case "${LIVE_BINARY_IMAGE}" in
iso)
- DESTDIR="binary/isolinux"
+ DESTDIR="binary/live"
;;
net)
@@ -69,6 +82,16 @@ then
;;
esac
+ # Temporary check for broken syslinux
+ if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+ then
+ case "${LIVE_ARCHITECTURE}" in
+ i386)
+ DESTDIR="${DESTDIR}.386"
+ ;;
+ esac
+ fi
+
# Creating directory
if [ ! -d "${DESTDIR}" ]
then
@@ -80,7 +103,7 @@ then
if [ -n "${PACKAGES}" ]
then
- # Removing syslinux
+ # Removing packages
case "${LH_APT}" in
apt|apt-get)
Chroot "apt-get remove --purge --yes ${PACKAGES}"
diff --git a/helpers/lh_binary_net b/helpers/lh_binary_net
index 7d657c9..4a2a20d 100755
--- a/helpers/lh_binary_net
+++ b/helpers/lh_binary_net
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_net(1) - build netboot binary image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,28 +15,35 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build netboot binary image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
Read_conffile config/image
Set_defaults
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-# Checking stage file
-Check_stagefile .stage/binary_net
-
for IMAGE in ${LIVE_BINARY_IMAGE}
do
if [ "${IMAGE}" = "net" ]
then
+ # Requiring stage file
+ Require_stagefile .stage/bootstrap
+
+ # Checking lock file
+ Check_lockfile .lock
+
+ # Creating lock file
+ Create_lockfile .lock
+
+ # Checking stage file
+ Check_stagefile .stage/binary_net
+
# Remove old binary
if [ -f binary-net.tar.gz ]
then
@@ -42,8 +54,8 @@ do
mv binary "`basename ${LIVE_SERVER_PATH}`"
cd ..
- tar cfz binary-net.tar.gz "${LIVE_ROOT}/`basename ${LIVE_SERVER_PATH}`" "${LIVE_ROOT}/tftpboot"
- mv binary-net.tar.gz "${LIVE_ROOT}"
+ tar cfz binary-net.tar.gz "${OLDPWD}/`basename ${LIVE_SERVER_PATH}`" "${OLDPWD}/tftpboot"
+ mv binary-net.tar.gz "${OLDPWD}"
cd "${OLDPWD}"
mv "`basename ${LIVE_SERVER_PATH}`" binary
diff --git a/helpers/lh_binary_rootfs b/helpers/lh_binary_rootfs
index 1ce994f..bdc8904 100755
--- a/helpers/lh_binary_rootfs
+++ b/helpers/lh_binary_rootfs
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_rootfs(1) - build rootfs image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build rootfs image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
@@ -17,6 +29,7 @@ Set_defaults
# Requiring stage file
Require_stagefile .stage/bootstrap
+Require_stagefile .stage/binary_chroot
# Checking lock file
Check_lockfile .lock
@@ -35,6 +48,26 @@ fi
case "${LIVE_FILESYSTEM}" in
ext2)
+ if [ ! -f chroot/usr/bin/genext2fs ]
+ then
+ PACKAGES="${PACKAGES} genext2fs"
+ fi
+
+ if [ -n "${PACKAGES}" ]
+ then
+ # Installing packages
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
+
+ # Remove old ext2 image
if [ -f binary/casper/filesystem.ext2 ]
then
rm -f binary/casper/filesystem.ext2
@@ -43,7 +76,25 @@ case "${LIVE_FILESYSTEM}" in
DU_DIM="`du -ks chroot | cut -f1`"
REAL_DIM="`expr ${DU_DIM} + ${DU_DIM} / 20`" # Just 5% more to be sure, need something more sophistcated here...
- genext2fs --size-in-blocks=${REAL_DIM} --reserved-blocks=0 --root=chroot binary/casper/filesystem.ext2
+ Chroot "genext2fs --size-in-blocks=${REAL_DIM} --reserved-blocks=0 --root=chroot filesystem.ext2"
+
+ # Move image
+ mv chroot/filesystem.ext2 binary/casper
+ rm -rf chroot/chroot
+
+ # Removing packages
+ if [ -n "${PACKAGES}" ]
+ then
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get remove --purge --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude purge --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
;;
plain)
@@ -55,19 +106,60 @@ case "${LIVE_FILESYSTEM}" in
cd chroot
find . | cpio -pumd ../binary/casper/filesystem.dir
cd "${OLDPWD}"
+
+ rm -rf chroot/chroot
;;
squashfs)
+ if [ ! -f chroot/usr/sbin/mksquashfs ]
+ then
+ PACKAGES="${PACKAGES} squashfs-tools"
+ fi
+
+ if [ -n "${PACKAGES}" ]
+ then
+ # Installing packages
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
+
+ # Remove old squashfs image
if [ -f binary/casper/filesystem.squashfs ]
then
- rm binary/casper/filesystem.squashfs
+ rm -f binary/casper/filesystem.squashfs
fi
- if [ "${LIVE_FLAVOUR}" = "minimal" ] || [ "${LIVE_FLAVOUR}" = "mini" ]
+ # Create image
+ if [ "${LIVE_PACKAGES_LISTS}" != "minimal" ] && [ "${LIVE_PACKAGES_LISTS}" != "mini" ]
then
- mksquashfs chroot binary/casper/filesystem.squashfs -e chroot/boot/vmlinuz* chroot/boot/initrd.img* chroot/vmlinuz chroot/initrd.img chroot/boot/config-* chroot/boot/System.map-*
+ Chroot "mksquashfs chroot filesystem.squashfs"
else
- mksquashfs chroot binary/casper/filesystem.squashfs
+ Chroot "mksquashfs chroot filesystem.squashfs -e chroot/boot/vmlinuz* chroot/boot/initrd.img* chroot/vmlinuz* chroot/initrd.img* chroot/boot/config-* chroot/boot/System.map-*"
+ fi
+
+ # Move image
+ mv chroot/filesystem.squashfs binary/casper
+ rm -rf chroot/chroot
+
+ # Removing packages
+ if [ -n "${PACKAGES}" ]
+ then
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get remove --purge --yes ${PACKAGES}"
+ ;;
+
+ aptitude)
+ Chroot "aptitude purge --assume-yes ${PACKAGES}"
+ ;;
+ esac
fi
;;
esac
diff --git a/helpers/lh_binary_syslinux b/helpers/lh_binary_syslinux
index d80d66e..88b02b9 100755
--- a/helpers/lh_binary_syslinux
+++ b/helpers/lh_binary_syslinux
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_binary_syslinux(1) - installs syslinux
+# lh_binary_syslinux(1) - installs syslinux into binary
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,9 +15,17 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="installs syslinux into binary"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
+Read_conffile config/chroot
Read_conffile config/image
Set_defaults
@@ -55,11 +68,102 @@ then
esac
fi
+ # Setting destination directory
+ case "${LIVE_BINARY_IMAGE}" in
+ iso)
+ DESTDIR="binary/live"
+ ;;
+
+ net)
+ DESTDIR="tftpboot"
+ ;;
+
+ usb|hdd)
+ DESTDIR="binary"
+ ;;
+ esac
+
+ # Temporary check for broken syslinux
+ if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+ then
+ case "${LIVE_ARCHITECTURE}" in
+ i386)
+ DESTDIR="${DESTDIR}.386"
+ ;;
+ esac
+ fi
+
+ # Creating directory
+ if [ ! -d "${DESTDIR}" ]
+ then
+ mkdir -p "${DESTDIR}"
+ fi
+
+ # Setting boot parameters
if [ -n "${LIVE_ENCRYPTION}" ]
then
LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} encryption=${LIVE_ENCRYPTION}"
fi
+ if [ -n "${LIVE_USERNAME}" ]
+ then
+ LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} username=${LIVE_USERNAME}"
+ fi
+
+ if [ -n "${LIVE_HOSTNAME}" ]
+ then
+ LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} hostname=${LIVE_HOSTNAME}"
+ fi
+
+ LIVE_BOOTAPPEND="`echo ${LIVE_BOOTAPPEND} | sed -e 's/ //'`"
+
+ # Assembling kernel configuration
+ if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+ then
+ DEFAULT_FLAVOUR="`echo ${LIVE_KERNEL_FLAVOUR} | awk '{ print $1 }'`"
+ LINUX="label linux\n kernel /`basename ${DESTDIR}`/`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`\n append initrd=/`basename ${DESTDIR}`/initrd.img-`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND"
+ else
+ DEFAULT_FLAVOUR="`echo ${LIVE_KERNEL_FLAVOUR} | awk '{ print $1 }'`"
+ LINUX="label linux\n kernel `basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`\n append initrd=initrd.img-`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND"
+ fi
+
+ if [ "`echo ${LIVE_KERNEL_FLAVOUR} | wc -w`" -gt "1" ]
+ then
+ for KERNEL in chroot/boot/vmlinuz*
+ do
+ if [ -z "${LINUX}" ]
+ then
+ if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+ then
+ LINUX="label linux-`basename ${KERNEL} | sed -e 's/vmlinuz-//'`\n kernel /`basename ${DESTDIR}`/`basename ${KERNEL}`\n append initrd=/`basename ${DESTDIR}`/initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND"
+ else
+ LINUX="label linux-`basename ${KERNEL} | sed -e 's/vmlinuz-//'`\n kernel `basename ${KERNEL}`\n append initrd=initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND"
+ fi
+ else
+ if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+ then
+ LINUX="${LINUX}\nlabel linux-`basename ${KERNEL} | sed -e 's/vmlinuz-//'`\n kernel /`basename ${DESTDIR}`/`basename ${KERNEL}`\n append initrd=/`basename ${DESTDIR}`/initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND"
+ else
+ LINUX="${LINUX}\nlabel linux-`basename ${KERNEL} | sed -e 's/vmlinuz-//'`\n kernel `basename ${KERNEL}`\n append initrd=initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND"
+ fi
+ fi
+ done
+ fi
+
+ LINUX="`echo ${LINUX} | sed -e 's#//#/#g'`"
+
+ # Assembling memtest configuration
+ if [ -f "${DESTDIR}"/memtest ]
+ then
+ if [ "${LIVE_BINARY_IMAGE}" = "iso" ]
+ then
+ MEMTEST="label memtest\n kernel /`basename ${DESTDIR}`/memtest"
+ MEMTEST="`echo ${MEMTEST} | sed -e 's#//#/#g'`"
+ else
+ MEMTEST="label memtest\n kernel memtest"
+ fi
+ fi
+
case "${LIVE_BINARY_IMAGE}" in
iso)
# Copying syslinux
@@ -74,17 +178,34 @@ then
fi
# Configure syslinux templates
+ sed -i -e "s#LIVE_KERNEL#${LINUX}#" -e "s#LIVE_MEMTEST#${MEMTEST}#" binary/isolinux/isolinux.cfg
sed -i -e "s#LIVE_BOOTAPPEND#${LIVE_BOOTAPPEND}#" binary/isolinux/isolinux.cfg
sed -i -e "s/LIVE_DATE/`date +%Y%m%d`/" binary/isolinux/f1.txt
sed -i -e "s/LIVE_VERSION/${VERSION}/" binary/isolinux/f10.txt
# Remove unused files
rm -f binary/isolinux/pxelinux.cfg
+
+ # Working arround syslinux 8.3 limitation
+ if [ "`echo ${LIVE_KERNEL_FLAVOUR} | wc -w`" -gt "1" ]
+ then
+ for FLAVOUR in ${LIVE_KERNEL_FLAVOUR}
+ do
+ NUMBER=$(($NUMBER + 1))
+
+ mv "${DESTDIR}"/vmlinuz-*-${FLAVOUR} "${DESTDIR}"/vmlinuz${NUMBER}
+ mv "${DESTDIR}"/initrd.img-*-${FLAVOUR} "${DESTDIR}"/initrd${NUMBER}.img
+ sed -i -e "s/linux.*-${FLAVOUR}/linux${NUMBER}/g" -e "s/vmlinuz-.*-${FLAVOUR}/vmlinuz${NUMBER}/g" -e "s/initrd.img-.*-${FLAVOUR}/initrd${NUMBER}.img/g" binary/isolinux/isolinux.cfg
+ done
+ else
+ mv "${DESTDIR}"/vmlinuz-*-${LIVE_KERNEL_FLAVOUR} "${DESTDIR}"/vmlinuz
+ mv "${DESTDIR}"/initrd.img-*-${LIVE_KERNEL_FLAVOUR} "${DESTDIR}"/initrd.img
+ sed -i -e "s/linux.*-${LIVE_KERNEL_FLAVOUR}/linux/g" -e "s/vmlinuz-.*-${LIVE_KERNEL_FLAVOUR}/vmlinuz/g" -e "s/initrd.img-.*-${LIVE_KERNEL_FLAVOUR}/initrd.img/g" binary/isolinux/isolinux.cfg
+ fi
;;
net)
# Copying syslinux
- mkdir -p tftpboot
cp chroot/usr/lib/syslinux/pxelinux.0 tftpboot
# Install syslinux templates
@@ -96,16 +217,34 @@ then
# Copying splash screen
if [ -n "${LIVE_SYSLINUX_SPLASH}" ]
then
- cp "${LIVE_SYSLINUX_SPLASH}" ftpboot/pxelinux.cfg/splash.rle
+ cp "${LIVE_SYSLINUX_SPLASH}" tftpboot/pxelinux.cfg/splash.rle
fi
# Configure syslinux templates
+ sed -i -e "s#LIVE_KERNEL#${LINUX}#" -e "s#LIVE_MEMTEST#${MEMTEST}#" tftpboot/pxelinux.cfg/default
sed -i -e "s/LIVE_SERVER_ADDRESS/${LIVE_SERVER_ADDRESS}/" -e "s#LIVE_SERVER_PATH#${LIVE_SERVER_PATH}#" -e "s#LIVE_BOOTAPPEND#${LIVE_BOOTAPPEND}#" tftpboot/pxelinux.cfg/default
sed -i -e "s/LIVE_DATE/`date +%Y%m%d`/" tftpboot/pxelinux.cfg/f1.txt
sed -i -e "s/LIVE_VERSION/${VERSION}/" tftpboot/pxelinux.cfg/f10.txt
# Remove unused files
rm -f tftpboot/pxelinux.cfg/isolinux.cfg
+
+ # Working arround syslinux 8.3 limitation
+ if [ "`echo ${LIVE_KERNEL_FLAVOUR} | wc -w`" -gt "1" ]
+ then
+ for FLAVOUR in ${LIVE_KERNEL_FLAVOUR}
+ do
+ NUMBER=$(($NUMBER + 1))
+
+ mv "${DESTDIR}"/vmlinuz-*-${FLAVOUR} "${DESTDIR}"/vmlinuz${NUMBER}
+ mv "${DESTDIR}"/initrd.img-*-${FLAVOUR} "${DESTDIR}"/initrd${NUMBER}.img
+ sed -i -e "s/linux.*-${FLAVOUR}/linux${NUMBER}/g" -e "s/vmlinuz-.*-${FLAVOUR}/vmlinuz${NUMBER}/g" -e "s/initrd.img-.*-${FLAVOUR}/initrd${NUMBER}.img/g" tftpboot/pxelinux.cfg/default
+ done
+ else
+ mv "${DESTDIR}"/vmlinuz-*-${LIVE_KERNEL_FLAVOUR} "${DESTDIR}"/vmlinuz
+ mv "${DESTDIR}"/initrd.img-*-${LIVE_KERNEL_FLAVOUR} "${DESTDIR}"/initrd.img
+ sed -i -e "s/linux.*-${LIVE_KERNEL_FLAVOUR}/linux/g" -e "s/vmlinuz-.*-${LIVE_KERNEL_FLAVOUR}/vmlinuz/g" -e "s/initrd.img-.*-${LIVE_KERNEL_FLAVOUR}/initrd.img/g" tftpboot/pxelinux.cfg/default
+ fi
;;
usb|hdd)
@@ -124,18 +263,36 @@ then
fi
# Configure syslinux templates
+ sed -i -e "s#LIVE_KERNEL#${LINUX}#" -e "s#LIVE_MEMTEST#${MEMTEST}#" binary/syslinux.cfg
sed -i -e "s#LIVE_BOOTAPPEND#${LIVE_BOOTAPPEND}#" binary/syslinux.cfg
sed -i -e "s/LIVE_DATE/`date +%Y%m%d`/" binary/f1.txt
sed -i -e "s/LIVE_VERSION/${VERSION}/" binary/f10.txt
# Remove unused files
rm -f binary/pxelinux.cfg
+
+ # Working arround syslinux 8.3 limitation
+ if [ "`echo ${LIVE_KERNEL_FLAVOUR} | wc -w`" -gt "1" ]
+ then
+ for FLAVOUR in ${LIVE_KERNEL_FLAVOUR}
+ do
+ NUMBER=$(($NUMBER + 1))
+
+ mv "${DESTDIR}"/vmlinuz-*-${FLAVOUR} "${DESTDIR}"/vmlinuz${NUMBER}
+ mv "${DESTDIR}"/initrd.img-*-${FLAVOUR} "${DESTDIR}"/initrd${NUMBER}.img
+ sed -i -e "s/linux.*-${FLAVOUR}/linux${NUMBER}/g" -e "s/vmlinuz-.*-${FLAVOUR}/vmlinuz${NUMBER}/g" -e "s/initrd.img-.*-${FLAVOUR}/initrd${NUMBER}.img/g" binary/syslinux.cfg
+ done
+ else
+ mv "${DESTDIR}"/vmlinuz-*-${LIVE_KERNEL_FLAVOUR} "${DESTDIR}"/vmlinuz
+ mv "${DESTDIR}"/initrd.img-*-${LIVE_KERNEL_FLAVOUR} "${DESTDIR}"/initrd.img
+ sed -i -e "s/linux.*-${LIVE_KERNEL_FLAVOUR}/linux/g" -e "s/vmlinuz-.*-${LIVE_KERNEL_FLAVOUR}/vmlinuz/g" -e "s/initrd.img-.*-${LIVE_KERNEL_FLAVOUR}/initrd.img/g" binary/syslinux.cfg
+ fi
;;
esac
if [ -n "${PACKAGES}" ]
then
- # Removing syslinux
+ # Removing packages
case "${LH_APT}" in
apt|apt-get)
Chroot "apt-get remove --purge --yes ${PACKAGES}"
diff --git a/helpers/lh_binary_usb b/helpers/lh_binary_usb
index 79a3ee0..241488e 100755
--- a/helpers/lh_binary_usb
+++ b/helpers/lh_binary_usb
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_binary_usb(1) - build binary image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,29 +15,36 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build binary image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
Read_conffile config/image
Set_defaults
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-Require_stagefile .stage/chroot_proc
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-# Checking stage file
-Check_stagefile .stage/binary_usb
-
for IMAGE in ${LIVE_BINARY_IMAGE}
do
if [ "${IMAGE}" = "usb" ]
then
+ # Requiring stage file
+ Require_stagefile .stage/bootstrap
+ Require_stagefile .stage/chroot_proc
+
+ # Checking lock file
+ Check_lockfile .lock
+
+ # Creating lock file
+ Create_lockfile .lock
+
+ # Checking stage file
+ Check_stagefile .stage/binary_usb
+
if [ ! -f chroot/sbin/mkdosfs ]
then
PACKAGES="${PACKAGES} dosfstools"
diff --git a/helpers/lh_bootstrap b/helpers/lh_bootstrap
index c4db590..bae8828 100755
--- a/helpers/lh_bootstrap
+++ b/helpers/lh_bootstrap
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_bootstrap(1) - bootstrap a Debian system
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,9 +15,21 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="bootstrap a Debian system"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+if [ "${FORCE}" = "true" ]
+then
+ OPTIONS="${OPTIONS} --force"
+fi
+
# Reading configuration files
Read_conffile config/common
Set_defaults
# Bootstrapping system
-lh_bootstrap_"${LH_BOOTSTRAP}"
+lh_bootstrap_"${LH_BOOTSTRAP}" "${OPTIONS}"
diff --git a/helpers/lh_bootstrap_cdebootstrap b/helpers/lh_bootstrap_cdebootstrap
index e4b83a2..b6ea6b9 100755
--- a/helpers/lh_bootstrap_cdebootstrap
+++ b/helpers/lh_bootstrap_cdebootstrap
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_bootstrap_cdebootstrap(1) - bootstrap a Debian system with cdebootstrap(1)
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="bootstrap a Debian system with cdebootstrap(1)"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Ensure that a system is built as root
lh_testroot
@@ -44,26 +56,26 @@ then
CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --suite-config=${LIVE_DISTRIBUTION_CONFIG}"
fi
-if [ "${LIVE_FLAVOUR}" = "mini" ] || [ "${LIVE_FLAVOUR}" = "minimal" ] || [ "${LIVE_FLAVOUR}" = "minimal-net" ]
+if [ "${LIVE_PACKAGES_LISTS}" != "minimal" ] && [ "${LIVE_PACKAGES_LISTS}" != "mini" ]
then
- CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal"
-else
CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=standard"
+else
+ CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal"
fi
if [ -x "/usr/bin/cdebootstrap" ]
then
- # Restore old cache
- if [ -d cache/bootstrap ]
- then
- mkdir -p chroot/var/cache/bootstrap
- cp cache/bootstrap/*.deb chroot/var/cache/bootstrap
- fi
-
if [ "${LH_CACHE}" = "enabled" ]
then
+ # Restore old cache
+ if [ -d cache/bootstrap ]
+ then
+ mkdir -p chroot/var/cache/bootstrap
+ cp cache/bootstrap/*.deb chroot/var/cache/bootstrap
+ fi
+
# Executing cdebootstrap (download-only)
- cdebootstrap ${CDEBOOTSTRAP_OPTIONS} --download-only "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_LOCAL}"
+ cdebootstrap ${CDEBOOTSTRAP_OPTIONS} --download-only "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_BUILD}"
# Removing old cache
if [ -d cache/bootstrap ]
@@ -81,17 +93,23 @@ then
fi
# Executing cdebootstrap (regular run)
- cdebootstrap ${CDEBOOTSTRAP_OPTIONS} "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_LOCAL}"
+ cdebootstrap ${CDEBOOTSTRAP_OPTIONS} "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_BUILD}"
+
+ # Remove cdebootstrap-helper-diverts (needed at least for minimal flavours)
+ if [ "${LIVE_BOOTSTRAP_FLAVOUR}" = "minimal" ] || [ "${LIVE_BOOTSTRAP_FLAVOUR}" = "mini" ]
+ then
+ Chroot "dpkg -P cdebootstrap-helper-diverts"
+ fi
+
+ # Removing bootstrap cache
+ if [ -d chroot/var/cache/bootstrap ]
+ then
+ rm -rf chroot/var/cache/bootstrap
+ fi
+
+ # Creating stage file
+ Create_stagefile .stage/bootstrap
else
echo "E: Can't process file /usr/bin/cdebootstrap (FIXME)"
exit 1
fi
-
-# Removing bootstrap cache
-if [ -d chroot/var/cache/bootstrap ]
-then
- rm -rf chroot/var/cache/bootstrap
-fi
-
-# Creating stage file
-Create_stagefile .stage/bootstrap
diff --git a/helpers/lh_bootstrap_debootstrap b/helpers/lh_bootstrap_debootstrap
index 8ff83af..ab7ac6b 100755
--- a/helpers/lh_bootstrap_debootstrap
+++ b/helpers/lh_bootstrap_debootstrap
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_bootstrap_debootstrap(1) - bootstrap a Debian system with debootstrap(8)
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="bootstrap a Debian system with debootstrap(8)"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Ensure that a system is built as root
lh_testroot
@@ -46,17 +58,17 @@ fi
if [ -x "/usr/sbin/debootstrap" ]
then
- # Restore old cache
- if [ -d cache/bootstrap ]
- then
- mkdir -p chroot/var/cache/apt/archives
- cp cache/bootstrap/*.deb chroot/var/cache/apt/archives
- fi
-
if [ "${LH_CACHE}" = "enabled" ]
then
+ # Restore old cache
+ if [ -d cache/bootstrap ]
+ then
+ mkdir -p chroot/var/cache/apt/archives
+ cp cache/bootstrap/*.deb chroot/var/cache/apt/archives
+ fi
+
# Executing debootstrap (download-only)
- debootstrap ${DEBOOTSTRAP_OPTIONS} --download-only "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_LOCAL}" "${LIVE_DEBOOTSTRAP_SCRIPT}"
+ debootstrap ${DEBOOTSTRAP_OPTIONS} --download-only "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_BUILD}" "${LIVE_DEBOOTSTRAP_SCRIPT}"
# Removing old cache
if [ -d cache/bootstrap ]
@@ -74,14 +86,14 @@ then
fi
# Executing debootstrap (regular run)
- debootstrap ${DEBOOTSTRAP_OPTIONS} "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_LOCAL}" "${LIVE_DEBOOTSTRAP_SCRIPT}"
+ debootstrap ${DEBOOTSTRAP_OPTIONS} "${LIVE_DISTRIBUTION}" chroot "${LIVE_MIRROR_BUILD}" "${LIVE_DEBOOTSTRAP_SCRIPT}"
+
+ # Removing bootstrap cache
+ rm -rf chroot/var/cache/apt/archives/*.deb
+
+ # Creating stage file
+ Create_stagefile .stage/bootstrap
else
echo "E: Can't process file /usr/bin/debootstrap (FIXME)"
exit 1
fi
-
-# Removing bootstrap cache
-rm -rf chroot/var/cache/apt/archives/*.deb
-
-# Creating stage file
-Create_stagefile .stage/bootstrap
diff --git a/helpers/lh_build b/helpers/lh_build
index 1d839a9..bb05c74 100755
--- a/helpers/lh_build
+++ b/helpers/lh_build
@@ -1,17 +1,40 @@
#!/bin/sh
-# lh_build(1) - build a Debian system
+# lh_build(1) - build a Debian Live system
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="build a Debian Live system"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+if [ "${FORCE}" = "true" ]
+then
+ OPTIONS="${OPTIONS} --force"
+fi
+
# Bootstrapping system
-lh_bootstrap
+lh_bootstrap "${OPTIONS}"
# Customizing chroot
-lh_chroot
+lh_chroot "${OPTIONS}"
# Building binary image
-lh_binary
+lh_binary "${OPTIONS}"
# Building source image
-lh_source
+lh_source "${OPTIONS}"
diff --git a/helpers/lh_chroot b/helpers/lh_chroot
index 75f3174..045b3ac 100755
--- a/helpers/lh_chroot
+++ b/helpers/lh_chroot
@@ -1,6 +1,13 @@
#!/bin/sh
# lh_chroot(1) - customize the Debian system
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
# Source common functions
for FUNCTION in /usr/share/live-helper/functions/*.sh
@@ -8,43 +15,56 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="customize the Debian system"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+if [ "${FORCE}" = "true" ]
+then
+ OPTIONS="${OPTIONS} --force"
+fi
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
Set_defaults
# Configuring chroot
-lh_chroot_proc install
-lh_chroot_sysfs install
-lh_chroot_debianchroot install
-lh_chroot_sysvrc install
-lh_chroot_hosts install
-lh_chroot_resolv install
-lh_chroot_apt install
-lh_chroot_sources install
-lh_chroot_linuximage install
+lh_chroot_proc install "${OPTIONS}"
+lh_chroot_sysfs install "${OPTIONS}"
+lh_chroot_debianchroot install "${OPTIONS}"
+lh_chroot_sysvrc install "${OPTIONS}"
+lh_chroot_hosts install "${OPTIONS}"
+lh_chroot_resolv install "${OPTIONS}"
+lh_chroot_apt install "${OPTIONS}"
+lh_chroot_sources install "${OPTIONS}"
+lh_chroot_linuximage install "${OPTIONS}"
# Customizing chroot
-lh_chroot_tasks
-lh_chroot_packageslist
-lh_chroot_packages
-lh_chroot_localpackages
-lh_chroot_localpackageslist
-lh_chroot_localization
-lh_chroot_hacks
-lh_chroot_localincludes
-lh_chroot_sysvinit
-lh_chroot_hooks
-lh_chroot_localhooks
-lh_chroot_symlinks
+lh_chroot_tasks "${OPTIONS}"
+lh_chroot_packageslists "${OPTIONS}"
+lh_chroot_packages "${OPTIONS}"
+lh_chroot_localpackages "${OPTIONS}"
+lh_chroot_localpackageslists "${OPTIONS}"
+lh_chroot_localization "${OPTIONS}"
+lh_chroot_hacks "${OPTIONS}"
+lh_chroot_localincludes "${OPTIONS}"
+lh_chroot_sysvinit "${OPTIONS}"
+lh_chroot_hooks "${OPTIONS}"
+lh_chroot_localhooks "${OPTIONS}"
+lh_chroot_symlinks "${OPTIONS}"
+lh_chroot_interactive "${OPTIONS}"
# Deconfiguring chroot
-lh_chroot_linuximage remove
-lh_chroot_sources remove
-lh_chroot_apt remove
-lh_chroot_resolv remove
-lh_chroot_hosts remove
-lh_chroot_sysvrc remove
-lh_chroot_debianchroot remove
-lh_chroot_sysfs remove
-lh_chroot_proc remove
+lh_chroot_linuximage remove "${OPTIONS}"
+lh_chroot_sources remove "${OPTIONS}"
+lh_chroot_apt remove "${OPTIONS}"
+lh_chroot_resolv remove "${OPTIONS}"
+lh_chroot_hosts remove "${OPTIONS}"
+lh_chroot_sysvrc remove "${OPTIONS}"
+lh_chroot_debianchroot remove "${OPTIONS}"
+lh_chroot_sysfs remove "${OPTIONS}"
+lh_chroot_proc remove "${OPTIONS}"
diff --git a/helpers/lh_chroot_apt b/helpers/lh_chroot_apt
index fd37012..c80f22f 100755
--- a/helpers/lh_chroot_apt
+++ b/helpers/lh_chroot_apt
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_apt(1) - manage /etc/apt/apt.conf
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /etc/apt/apt.conf"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -29,6 +41,12 @@ case "${1}" in
# Checking stage file
Check_stagefile .stage/chroot_apt
+ if [ -f chroot/etc/apt/apt.conf ]
+ then
+ # Remove old /etc/apt/apt.conf
+ rm -f chroot/etc/apt/apt.conf
+ fi
+
if [ "${LH_APT}" = "aptitude" ] && [ ! -d chroot/etc/apt/apt.conf.d ]
then
mkdir -p chroot/etc/apt/apt.conf.d
@@ -110,6 +128,30 @@ case "${1}" in
esac
fi
+ # Configuring apt secure
+ if [ "${LH_APT_SECURE}" = "enabled" ]
+ then
+ case "${LH_APT}" in
+ apt|apt-get)
+ echo "APT::Get::AllowUnauthenticated \"0\";" >> chroot/etc/apt/apt.conf
+ ;;
+
+ aptitude)
+ echo "APT::Get::AllowUnauthenticated \"0\";" > chroot/etc/apt/apt.conf.d/secure
+ ;;
+ esac
+ else
+ case "${LH_APT}" in
+ apt|apt-get)
+ echo "APT::Get::AllowUnauthenticated \"1\";" >> chroot/etc/apt/apt.conf
+ ;;
+
+ aptitude)
+ echo "APT::Get::AllowUnauthenticated \"1\";" > chroot/etc/apt/apt.conf.d/secure
+ ;;
+ esac
+ fi
+
# Creating stage file
Create_stagefile .stage/chroot_apt
;;
@@ -130,12 +172,14 @@ case "${1}" in
# Deconfiguring aptitude recommends
rm -f chroot/etc/apt/apt.conf.d/recommends
+ # Deconfiguring aptitude secure
+ rm -f chroot/etc/apt/apt.conf.d/secure
+
# Removing stage file
rm -f .stage/chroot_apt
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_debianchroot b/helpers/lh_chroot_debianchroot
index d6fcaa3..1c926eb 100755
--- a/helpers/lh_chroot_debianchroot
+++ b/helpers/lh_chroot_debianchroot
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_debianchroot(1) - manage /etc/debian_chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /etc/debian_chroot"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -57,7 +69,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_hacks b/helpers/lh_chroot_hacks
index 2b08283..9422226 100755
--- a/helpers/lh_chroot_hacks
+++ b/helpers/lh_chroot_hacks
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_hacks(1) - execute hacks in chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="execute hacks in chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -32,32 +44,37 @@ rm -f chroot/etc/udev/rules.d/z25_persistent-net.rules
case "${LIVE_BINARY_IMAGE}" in
net)
- case "${LH_APT}" in
- apt|apt-get)
- Chroot "apt-get install --yes smbfs"
- ;;
+ if [ ! -f chroot/usr/bin/smbmount ]
+ then
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes smbfs"
+ ;;
- aptitude)
- Chroot "aptitude install --assume-yes smbfs"
- ;;
- esac
+ aptitude)
+ Chroot "aptitude install --assume-yes smbfs"
+ ;;
+ esac
+ fi
if [ ! -d chroot/etc/initramfs-tools ]
then
mkdir chroot/etc/initramfs-tools
fi
-
- # Configuring initramfs for NFS
+ if [ ! "`grep 'MODULES=netboot' chroot/etc/initramfs-tools/initramfs.conf`" ]
+ then
+ # Configuring initramfs for NFS
cat >> chroot/etc/initramfs-tools/initramfs.conf << EOF
MODULES=netboot
BOOT=nfs
NFSROOT=auto
EOF
+ fi
;;
esac
# Update initramfs
-Chroot "update-initramfs -tu"
+Chroot "update-initramfs -k all -t -u"
# Creating stage file
Create_stagefile .stage/chroot_hacks
diff --git a/helpers/lh_chroot_hooks b/helpers/lh_chroot_hooks
index d655825..47dea53 100755
--- a/helpers/lh_chroot_hooks
+++ b/helpers/lh_chroot_hooks
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_hooks(1) - execute hooks in chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="execute hooks in chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -28,19 +40,19 @@ Check_lockfile .lock
Create_lockfile .lock
# Processing hooks
-if [ -n "${LIVE_PACKAGES_LIST}" ] && [ -f /usr/share/live-helper/hooks/"${LIVE_PACKAGES_LIST}" ]
+if [ -n "${LIVE_PACKAGES_LISTS}" ] && [ -f /usr/share/live-helper/hooks/"${LIVE_PACKAGES_LISTS}" ]
then
# Copying hook
- cp /usr/share/live-helper/hooks/"${LIVE_PACKAGES_LIST}" chroot/root
+ cp /usr/share/live-helper/hooks/"${LIVE_PACKAGES_LISTS}" chroot/root
# Making hook executable
- if [ ! -x chroot/root/${LIVE_PACKAGES_LIST} ]
+ if [ ! -x chroot/root/${LIVE_PACKAGES_LISTS} ]
then
- chmod +x chroot/root/${LIVE_PACKAGES_LIST}
+ chmod +x chroot/root/${LIVE_PACKAGES_LISTS}
fi
# Executing hook
- Chroot "/root/${LIVE_PACKAGES_LIST}"
+ Chroot "/root/${LIVE_PACKAGES_LISTS}"
# Removing hook
rm -f chroot/root/"${LIVE_PACKAGE_LIST}"
diff --git a/helpers/lh_chroot_hosts b/helpers/lh_chroot_hosts
index 48cc1c9..518ef30 100755
--- a/helpers/lh_chroot_hosts
+++ b/helpers/lh_chroot_hosts
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_hosts(1) - manage /etc/hosts
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /etc/hosts"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -60,7 +72,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_interactive b/helpers/lh_chroot_interactive
new file mode 100755
index 0000000..82fd986
--- /dev/null
+++ b/helpers/lh_chroot_interactive
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+# lh_chroot_interactive(1) - make build interactive
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="make build interactive"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+# Reading configuration files
+Read_conffile config/common
+Read_conffile config/chroot
+Set_defaults
+
+if [ "${LIVE_INTERACTIVE}" != "disabled" ]
+then
+ # Requiring stage file
+ Require_stagefile .stage/bootstrap
+
+ # Checking lock file
+ Check_lockfile .lock
+
+ # Creating lock file
+ Create_lockfile .lock
+
+ # Checking stage file
+ Check_stagefile .stage/chroot_interactive
+
+ case "${LIVE_INTERACTIVE}" in
+ enabled|shell)
+ echo "Pausing build: starting interactive shell..."
+
+ Chroot "/bin/bash --login"
+ ;;
+
+ x11)
+ echo "Pausing build: starting interactive X11..."
+
+ Chroot "startx"
+ ;;
+
+ xnest)
+ echo "Pausing build: starting interactive Xnest..."
+
+ #Chroot "" # FIXME
+ ;;
+ esac
+
+ # Creating stage file
+ Create_stagefile .stage/chroot_symlinks
+fi
diff --git a/helpers/lh_chroot_linuximage b/helpers/lh_chroot_linuximage
index 0658155..c9443dd 100755
--- a/helpers/lh_chroot_linuximage
+++ b/helpers/lh_chroot_linuximage
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_linuximage(1) - manage /etc/kernel-img.conf
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /etc/kernel-img.conf"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -38,19 +50,32 @@ case "${1}" in
# Configuring kernel-img.conf
echo "do_initrd = Yes" >> chroot/etc/kernel-img.conf
- # Creating stage file
- Create_stagefile .stage/chroot_linuximage
+ if [ "${LIVE_KERNEL_PACKAGES}" != "none" ]
+ then
+ for FLAVOUR in ${LIVE_KERNEL_FLAVOUR}
+ do
+ for PACKAGE in ${LIVE_KERNEL_PACKAGES}
+ do
+ PACKAGES="${PACKAGES} ${PACKAGE}-${FLAVOUR}"
+ done
+ done
+ fi
+
+ PACKAGES="${PACKAGES} casper"
# Installing linux-image, modules and casper
case "${LH_APT}" in
apt|apt-get)
- Chroot "apt-get install --yes ${LIVE_KERNEL_PACKAGES}"
+ Chroot "apt-get install --yes ${PACKAGES}"
;;
aptitude)
- Chroot "aptitude install --assume-yes ${LIVE_KERNEL_PACKAGES}"
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
;;
esac
+
+ # Creating stage file
+ Create_stagefile .stage/chroot_linuximage
;;
remove)
@@ -68,7 +93,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_localhooks b/helpers/lh_chroot_localhooks
index 794e759..ddc3af4 100755
--- a/helpers/lh_chroot_localhooks
+++ b/helpers/lh_chroot_localhooks
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_chroot_localhooks(1) - execute hooks in chroot
+# lh_chroot_localhooks(1) - execute local hooks in chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="execute local hooks in chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
diff --git a/helpers/lh_chroot_localincludes b/helpers/lh_chroot_localincludes
index fc9c829..05ca4ec 100755
--- a/helpers/lh_chroot_localincludes
+++ b/helpers/lh_chroot_localincludes
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_chroot_localincludes(1) - copy files into chroot
+# lh_chroot_localincludes(1) - copy local files into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="copy local files into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -31,7 +43,7 @@ if ls config/chroot_localincludes/* &> /dev/null
then
# Copying includes
cd config/chroot_localincludes
- find . | cpio -dmpu ../../chroot
+ find . | cpio -dmpu "${OLDPWD}"/chroot
cd "${OLDPWD}"
# Creating stage file
diff --git a/helpers/lh_chroot_localization b/helpers/lh_chroot_localization
index 24d60c0..a5d7de6 100755
--- a/helpers/lh_chroot_localization
+++ b/helpers/lh_chroot_localization
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_localization(1) - install localization packages into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="install localization packages into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -660,11 +672,8 @@ then
esac
done
- # Restore old cache
- if [ -d cache/chroot_localization ]
- then
- cp cache/chroot_localization/*.deb chroot/var/cache/apt/archives
- fi
+ # Restoring cache
+ Restore_cache cache/chroot_localization
# Installing packages
case "${LH_APT}" in
@@ -677,18 +686,8 @@ then
;;
esac
- # Saving new cache
- Chroot "apt-get autoclean"
-
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
- then
- if [ ! -d cache/chroot_localization ]
- then
- mkdir -p cache/chroot_localization
- fi
-
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_localization
- fi
+ # Saving cache
+ Save_cache cache/chroot_localization
# Creating stage file
Create_stagefile .stage/chroot_localization
diff --git a/helpers/lh_chroot_localpackages b/helpers/lh_chroot_localpackages
index 7f13acb..b285527 100755
--- a/helpers/lh_chroot_localpackages
+++ b/helpers/lh_chroot_localpackages
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_localpackages(1) - install local packages into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="install local packages into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -29,11 +41,8 @@ Create_lockfile .lock
if ls config/chroot_localpackages/*.deb &> /dev/null
then
- # Restore old cache
- if [ -d cache/chroot_localpackages ]
- then
- cp cache/chroot_localpackages/*.deb chroot/var/cache/apt/archives
- fi
+ # Restoring cache
+ Restore_cache cache/chroot_localpackages
# Copying packages
cp config/chroot_localpackages/*.deb chroot/root
@@ -57,18 +66,8 @@ then
rm -f chroot/root/*.deb
rm -f chroot/root/localpackages
- # Saving new cache
- Chroot "apt-get autoclean"
-
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
- then
- if [ ! -d cache/chroot_localpackages ]
- then
- mkdir -p cache/chroot_localpackages
- fi
-
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_localpackages
- fi
+ # Saving cache
+ Save_cache cache/chroot_localpackages
# Creating stage file
Create_stagefile .stage/chroot_localpackages
diff --git a/helpers/lh_chroot_localpackageslist b/helpers/lh_chroot_localpackageslist
deleted file mode 100755
index 5039bc3..0000000
--- a/helpers/lh_chroot_localpackageslist
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/sh
-
-# lh_chroot_localpackageslist(1) - install local packages into chroot
-
-set -e
-
-# Source common functions
-for FUNCTION in /usr/share/live-helper/functions/*.sh
-do
- . ${FUNCTION}
-done
-
-# Reading configuration files
-Read_conffile config/common
-Read_conffile config/chroot
-Set_defaults
-
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-
-# Checking stage file
-Check_stagefile .stage/chroot_localpackageslist
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-if ls config/chroot_localpackageslist/* &> /dev/null
-then
- # Restore old cache
- if [ -d cache/chroot_localpackageslist ]
- then
- cp cache/chroot_localpackageslist/*.deb chroot/var/cache/apt/archives
- fi
-
- for PACKAGESLIST in config/chroot_localpackageslist/*
- do
- # Copying package list
- grep -v "^#" "${PACKAGESLIST}" > chroot/root/"`basename ${PACKAGESLIST}`"
-
- # Installing package list
- case "${LH_APT}" in
- apt|apt-get)
- Chroot "xargs --arg-file=/root/`basename ${PACKAGESLIST}` apt-get install --yes"
- ;;
-
- aptitude)
- Chroot "xargs --arg-file=/root/`basename ${PACKAGESLIST}` aptitude install --assume-yes"
- ;;
- esac
-
- # Removing package list
- rm -f chroot/root/"`basename ${PACKAGESLIST}`"
- done
-
- # Saving new cache
- Chroot "apt-get autoclean"
-
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
- then
- if [ ! -d cache/chroot_localpackageslist ]
- then
- mkdir -p cache/chroot_localpackageslist
- fi
-
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_localpackageslist
- fi
-
- # Creating stage file
- Create_stagefile .stage/chroot_localpackageslist
-fi
diff --git a/helpers/lh_chroot_localpackageslists b/helpers/lh_chroot_localpackageslists
new file mode 100755
index 0000000..e5cc1bc
--- /dev/null
+++ b/helpers/lh_chroot_localpackageslists
@@ -0,0 +1,72 @@
+#!/bin/sh
+
+# lh_chroot_localpackageslists(1) - install local packages into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="install local packages into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+# Reading configuration files
+Read_conffile config/common
+Read_conffile config/chroot
+Set_defaults
+
+# Requiring stage file
+Require_stagefile .stage/bootstrap
+
+# Checking stage file
+Check_stagefile .stage/chroot_localpackageslists
+
+# Checking lock file
+Check_lockfile .lock
+
+# Creating lock file
+Create_lockfile .lock
+
+if ls config/chroot_localpackageslists/* &> /dev/null
+then
+ # Restoring cache
+ Restore_cache cache/chroot_localpackageslists
+
+ for PACKAGESLIST in config/chroot_localpackageslists/*
+ do
+ # Copying package list
+ grep -v "^#" "${PACKAGESLIST}" > chroot/root/"`basename ${PACKAGESLIST}`"
+
+ # Installing package list
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "xargs --arg-file=/root/`basename ${PACKAGESLIST}` apt-get install --yes"
+ ;;
+
+ aptitude)
+ Chroot "xargs --arg-file=/root/`basename ${PACKAGESLIST}` aptitude install --assume-yes"
+ ;;
+ esac
+
+ # Removing package list
+ rm -f chroot/root/"`basename ${PACKAGESLIST}`"
+ done
+
+ # Saving cache
+ Save_cache cache/chroot_localpackageslists
+
+ # Creating stage file
+ Create_stagefile .stage/chroot_localpackageslists
+fi
diff --git a/helpers/lh_chroot_packages b/helpers/lh_chroot_packages
index e61d160..a0f5b8a 100755
--- a/helpers/lh_chroot_packages
+++ b/helpers/lh_chroot_packages
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_packages(1) - install packages into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="install packages into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
@@ -30,11 +42,8 @@ Create_lockfile .lock
if [ -n "${LIVE_PACKAGES}" ]
then
- # Restore old cache
- if [ -d cache/chroot ]
- then
- cp cache/chroot_packages/*.deb chroot/var/cache/apt/archives
- fi
+ # Restoring cache
+ Restore_cache cache/chroot_packages
# Installing packages
case "${LH_APT}" in
@@ -47,18 +56,8 @@ then
;;
esac
- # Saving new cache
- Chroot "apt-get autoclean"
-
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
- then
- if [ ! -d cache/chroot_packages ]
- then
- mkdir -p cache/chroot_packages
- fi
-
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_packages
- fi
+ # Saving cache
+ Save_cache cache/chroot_packages
# Creating stage file
Create_stagefile .stage/chroot_packages
diff --git a/helpers/lh_chroot_packageslist b/helpers/lh_chroot_packageslist
deleted file mode 100755
index dfe3a5c..0000000
--- a/helpers/lh_chroot_packageslist
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/sh
-
-# lh_chroot_packageslist(1) - install packages list into chroot
-
-set -e
-
-# Source common functions
-for FUNCTION in /usr/share/live-helper/functions/*.sh
-do
- . ${FUNCTION}
-done
-
-# Reading configuration files
-Read_conffile config/common
-Read_conffile config/chroot
-Set_defaults
-
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-
-# Checking stage file
-Check_stagefile .stage/chroot_packageslist
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-if [ -n "${LIVE_PACKAGES_LIST}" ]
-then
- # Restore old cache
- if [ -d cache/chroot_packageslist ]
- then
- cp cache/chroot_packageslist/*.deb chroot/var/cache/apt/archives
- fi
-
- for LIST in ${LIVE_PACKAGES_LIST}
- do
- if [ -f /usr/share/live-helper/lists/"${LIST}" ]
- then
- # Copying package list
- grep -v "^#" /usr/share/live-helper/lists/"${LIST}" > chroot/root/"${LIST}"
-
- # Installing package list
- case "${LH_APT}" in
- apt|apt-get)
- Chroot "xargs --arg-file=/root/${LIST} apt-get install --yes"
- ;;
-
- aptitude)
- Chroot "xargs --arg-file=/root/${LIST} aptitude install --assume-yes"
- ;;
- esac
-
- # Removing package list
- rm -f chroot/root/"${LIST}"
- fi
- done
-
- # Saving new cache
- Chroot "apt-get autoclean"
-
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
- then
- if [ ! -d cache/chroot_packageslist ]
- then
- mkdir -p cache/chroot_packageslist
- fi
-
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_packageslist
- fi
-
- # Creating stage file
- Create_stagefile .stage/chroot_packageslist
-fi
diff --git a/helpers/lh_chroot_packageslists b/helpers/lh_chroot_packageslists
new file mode 100755
index 0000000..3dfda53
--- /dev/null
+++ b/helpers/lh_chroot_packageslists
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+# lh_chroot_packageslists(1) - install packages lists into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="install packages lists into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+# Reading configuration files
+Read_conffile config/common
+Read_conffile config/chroot
+Set_defaults
+
+# Requiring stage file
+Require_stagefile .stage/bootstrap
+
+# Checking stage file
+Check_stagefile .stage/chroot_packageslists
+
+# Checking lock file
+Check_lockfile .lock
+
+# Creating lock file
+Create_lockfile .lock
+
+if [ -n "${LIVE_PACKAGES_LISTS}" ]
+then
+ # Restoring cache
+ Restore_cache cache/chroot_packageslists
+
+ for LIST in ${LIVE_PACKAGES_LISTS}
+ do
+ if [ -f /usr/share/live-helper/lists/"${LIST}" ]
+ then
+ # Copying package list
+ grep -v "^#" /usr/share/live-helper/lists/"${LIST}" > chroot/root/"${LIST}"
+
+ # Installing package list
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "xargs --arg-file=/root/${LIST} apt-get install --yes"
+ ;;
+
+ aptitude)
+ Chroot "xargs --arg-file=/root/${LIST} aptitude install --assume-yes"
+ ;;
+ esac
+
+ # Removing package list
+ rm -f chroot/root/"${LIST}"
+ fi
+ done
+
+ # Saving cache
+ Save_cache cache/chroot_packageslists
+
+ # Creating stage file
+ Create_stagefile .stage/chroot_packageslists
+fi
diff --git a/helpers/lh_chroot_proc b/helpers/lh_chroot_proc
index 0310d9c..ac0dd17 100755
--- a/helpers/lh_chroot_proc
+++ b/helpers/lh_chroot_proc
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_proc(1) - mount /proc
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="mount /proc"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -55,7 +67,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_resolv b/helpers/lh_chroot_resolv
index 830c185..d319e96 100755
--- a/helpers/lh_chroot_resolv
+++ b/helpers/lh_chroot_resolv
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_resolv(1) - manage /etc/resolv.conf
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /etc/resolv.conf"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -60,7 +72,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_sources b/helpers/lh_chroot_sources
index 4fae531..6037c4f 100755
--- a/helpers/lh_chroot_sources
+++ b/helpers/lh_chroot_sources
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_sources(1) - manage /etc/apt/sources.list
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /etc/apt/sources.list"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -32,32 +44,32 @@ case "${1}" in
Check_stagefile .stage/chroot_sources
# Configure custom sources.list
- echo "deb ${LIVE_MIRROR_LOCAL} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" > chroot/etc/apt/sources.list
+ echo "deb ${LIVE_MIRROR_BUILD} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" > chroot/etc/apt/sources.list
if [ "${LIVE_SOURCE}" = "enabled" ]
then
- echo "deb-src ${LIVE_MIRROR_LOCAL} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
+ echo "deb-src ${LIVE_MIRROR_BUILD} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
fi
if [ "${LIVE_SECURITY}" = "enabled" ]
then
if [ "${LIVE_DISTRIBUTION}" != "sid" ] && [ "${LIVE_DISTRIBUTION}" = "unstable" ]
then
- echo "deb ${LIVE_MIRROR_LOCAL_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
+ echo "deb ${LIVE_MIRROR_BUILD_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
if [ "${LIVE_SOURCE}" = "yes" ]
then
- echo "deb-src ${LIVE_MIRROR_LOCAL_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
+ echo "deb-src ${LIVE_MIRROR_BUILD_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
fi
fi
fi
# Check local sources.list
- if [ -f config/sources.list.local ]
+ if [ -f config/sources.list.build ]
then
echo "" >> chroot/etc/apt/sources.list
echo "# Custom repositories" >> chroot/etc/apt/sources.list
- cat config/sources.list.local >> chroot/etc/apt/sources.list
+ cat config/sources.list.build >> chroot/etc/apt/sources.list
fi
# Installing aptitude
@@ -87,32 +99,32 @@ case "${1}" in
rm -rf chroot/var/lib/apt/lists
mkdir -p chroot/var/lib/apt/lists/partial
- echo "deb ${LIVE_MIRROR_GENERIC} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" > chroot/etc/apt/sources.list
+ echo "deb ${LIVE_MIRROR_IMAGE} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" > chroot/etc/apt/sources.list
if [ "${LIVE_SOURCE}" = "enabled" ]
then
- echo "deb-src ${LIVE_MIRROR_GENERIC} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
+ echo "deb-src ${LIVE_MIRROR_IMAGE} ${LIVE_DISTRIBUTION} ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
fi
if [ "${LIVE_SECURITY}" = "enabled" ]
then
if [ "${LIVE_DISTRIBUTION}" = "etch" ] || [ "${LIVE_DISTRIBUTION}" = "testing" ]
then
- echo "deb ${LIVE_MIRROR_GENERIC_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
+ echo "deb ${LIVE_MIRROR_IMAGE_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
if [ "${LIVE_SOURCE}" = "yes" ]
then
- echo "deb-src ${LIVE_MIRROR_GENERIC_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
+ echo "deb-src ${LIVE_MIRROR_IMAGE_SECURITY} ${LIVE_DISTRIBUTION}/updates ${LIVE_SECTIONS}" >> chroot/etc/apt/sources.list
fi
fi
fi
# Check local sources.list
- if [ -f config/sources.list.generic ]
+ if [ -f config/sources.list.image ]
then
echo "" >> chroot/etc/apt/sources.list
echo "# Custom repositories" >> chroot/etc/apt/sources.list
- cat config/sources.list.generic >> chroot/etc/apt/sources.list
+ cat config/sources.list.image >> chroot/etc/apt/sources.list
fi
case "${LH_APT}" in
@@ -141,7 +153,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_symlinks b/helpers/lh_chroot_symlinks
index 9f958c6..850c8f8 100755
--- a/helpers/lh_chroot_symlinks
+++ b/helpers/lh_chroot_symlinks
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_symlinks(1) - convert symlinks
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="convert symlinks"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
diff --git a/helpers/lh_chroot_sysfs b/helpers/lh_chroot_sysfs
index 8480061..3d51eef 100755
--- a/helpers/lh_chroot_sysfs
+++ b/helpers/lh_chroot_sysfs
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_sysfs(1) - mount /sys
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="mount /sys"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -52,7 +64,6 @@ case "${1}" in
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_sysvinit b/helpers/lh_chroot_sysvinit
index cae4b8a..7817b47 100755
--- a/helpers/lh_chroot_sysvinit
+++ b/helpers/lh_chroot_sysvinit
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_chroot_sysvinit(1) - configures sysvinit
+# lh_chroot_sysvinit(1) - configure sysvinit
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="configure sysvinit"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
diff --git a/helpers/lh_chroot_sysvrc b/helpers/lh_chroot_sysvrc
index 403982b..ec27ad2 100755
--- a/helpers/lh_chroot_sysvrc
+++ b/helpers/lh_chroot_sysvrc
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_sysvrc(1) - manage /usr/sbin/policy-rc.d
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="manage /usr/sbin/policy-rc.d"
+HELP=""
+USAGE="${PROGRAM} {install|remove} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -66,7 +78,6 @@ EOF
;;
*)
- echo "Usage: ${0} {install|remove}"
- exit 1
+ Usage
;;
esac
diff --git a/helpers/lh_chroot_tasks b/helpers/lh_chroot_tasks
index b2ffb8f..33a8464 100755
--- a/helpers/lh_chroot_tasks
+++ b/helpers/lh_chroot_tasks
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_tasks(1) - install tasks into chroot
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="install tasks into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -27,29 +39,57 @@ Check_lockfile .lock
# Creating lock file
Create_lockfile .lock
-if [ -n "${LIVE_TASKS}" ] && [ "${LH_APT}" = "aptitude" ]
+if [ -n "${LIVE_TASKS}" ]
then
- # Restore old cache
- if [ -d cache/chroot_tasks ]
+ # Restoring cache
+ Restore_cache cache/chroot_tasks
+
+ if [ ! -f chroot/usr/bin/aptitude ]
+ then
+ PACKAGES="${PACKAGES} aptitude"
+ fi
+
+ if [ ! -f chroot/usr/bin/tasksel ]
then
- cp cache/chroot_tasks/*.deb chroot/var/cache/apt/archives
+ PACKAGES="${PACKAGES} tasksel"
fi
- Chroot "aptitude install --assume-yes ${LIVE_TASKS}"
+ if [ -n "${PACKAGES}" ]
+ then
+ # Installing symlinks
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes ${PACKAGES}"
+ ;;
- # Saving new cache
- Chroot "apt-get autoclean"
+ aptitude)
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
+ for TASK in ${LIVE_TASKS}
+ do
+ Chroot "tasksel --debconf-apt-progress --logstderr install ${TASK}"
+ done
+
+ if [ -n "${PACKAGES}" ]
then
- if [ ! -d cache/chroot_tasks ]
- then
- mkdir -p cache/chroot_tasks
- fi
+ # Removing packages
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get remove --purge --yes ${PACKAGES}"
+ ;;
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_tasks
+ aptitude)
+ Chroot "aptitude purge --assume-yes ${PACKAGES}"
+ ;;
+ esac
fi
+ # Saving cache
+ Save_cache cache/chroot_tasks
+
# Creating stage file
Create_stagefile .stage/chroot_tasks
fi
diff --git a/helpers/lh_clean b/helpers/lh_clean
index 8508a9c..1aad87d 100755
--- a/helpers/lh_clean
+++ b/helpers/lh_clean
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_clean(1) - clean up system build directories
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="clean up system build directories"
+HELP=""
+USAGE="${PROGRAM} [all|cache|chroot|binary|lock|purge|stage|source]"
+
+Arguments "${@}"
+
# Ensure that a system is built as root
lh_testroot
@@ -21,6 +33,7 @@ case "${1}" in
all)
"${0}" chroot
"${0}" binary
+ "${0}" lock
"${0}" stage
"${0}" source
;;
@@ -38,31 +51,42 @@ case "${1}" in
umount -f chroot/dev > /dev/null 2>&1 || true
rm -rf chroot
+
+ rm -f .stage/chroot*
;;
binary)
- rm -rf binary
-
rm -f binary.iso
rm -f binary.img
rm -f binary*.tar.gz
rm -f packages.txt
+ rm -rf binary
+ rm -rf tftpboot
+
rm -f .stage/binary*
;;
+ lock)
+ rm -f .lock
+ ;;
+
+ purge)
+ "${0}" all
+ "${0}" cache
+ ;;
+
stage)
rm -rf .stage
- rm -f .lock
;;
source)
- rm -rf source
-
rm -f source.iso
rm -f source.img
rm -f source*.tar.gz
+ rm -rf source
+
rm -f .stage/source*
;;
diff --git a/helpers/lh_config b/helpers/lh_config
index b0aff1e..b6eccd7 100755
--- a/helpers/lh_config
+++ b/helpers/lh_config
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_make(1) - create sample configuration for live-helper(7)
+# lh_config(1) - create configuration for live-helper(7)
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="create configuration for live-helper(7)"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
if [ "${1}" != "newconfig" ]
then
# Source existing configuration
@@ -53,6 +65,10 @@ LH_APT_PDIFFS="${LH_APT_PDIFFS}"
# (Default: ${LH_APT_RECOMMENDS})
LH_APT_RECOMMENDS="${LH_APT_RECOMMENDS}"
+# \$LH_APT_SECURE: enable secure
+# (Default: ${LH_APT_SECURE})
+LH_APT_SECURE="${LH_APT_SECURE}"
+
# \$LH_BOOTSTRAP: select the bootstrap program
# (Default: ${LH_BOOTSTRAP})
LH_BOOTSTRAP="${LH_BOOTSTRAP}"
@@ -70,7 +86,7 @@ LH_DEBCONF_FRONTEND="${LH_DEBCONF_FRONTEND}"
LH_DEBCONF_PRIORITY="${LH_DEBCONF_PRIORITY}"
# \$LH_GENISOIMAGE: set the genisoimage program
-# (Default: autodetected)
+# (Default: ${LH_GENISOIMAGE})
LH_GENISOIMAGE="${LH_GENISOIMAGE}"
# \$LH_LOSETUP: set the losetup program
@@ -86,13 +102,13 @@ EOF
cat > "${LIVE_ROOT}"/config/chroot << EOF
# config/chroot: configuration for lh_chroot_*
-# \$LIVE_KERNEL: set the kernel flavour to use
+# \$LIVE_KERNEL_FLAVOUR: set the kernel flavour to use
# (Default: autodetected)
-LIVE_KERNEL="${LIVE_KERNEL}"
+LIVE_KERNEL_FLAVOUR="${LIVE_KERNEL_FLAVOUR}"
-# \$LIVE_KERNEL: set the kernel packages to use
+# \$LIVE_KERNEL_PACKAGES: set the kernel packages to use
# (Default: autodetected)
-#LIVE_KERNEL_PACKAGES
+LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES}"
# \$LIVE_LANGUAGE: set the language to use
# (Default: empty)
@@ -102,9 +118,9 @@ LIVE_LANGUAGE="${LIVE_LANGUAGE}"
# (Default: empty)
LIVE_PACKAGES="${LIVE_PACKAGES}"
-# \$LIVE_PACKAGES_LIST: set the package list to install
-# (Default: ${LIVE_PACKAGES_LIST})
-LIVE_PACKAGES_LIST="${LIVE_PACKAGES_LIST}"
+# \$LIVE_PACKAGES_LISTS: set the package list to install
+# (Default: ${LIVE_PACKAGES_LISTS})
+LIVE_PACKAGES_LISTS="${LIVE_PACKAGES_LISTS}"
# \$LIVE_TASKS: set the tasks to install
# (Default: empty)
@@ -121,13 +137,17 @@ LIVE_SYMLINKS="${LIVE_SYMLINKS}"
# \$LIVE_SYSVINIT: enable sysvinit
# (Default: ${LIVE_SYSVINIT})
LIVE_SYSVINIT="${LIVE_SYSVINIT}"
+
+# \$LIVE_INTERACTIVE: set interactive build
+# (Default: ${LIVE_INTERACTIVE})
+LIVE_INTERACTIVE="${LIVE_INTERACTIVE}"
EOF
# Creating lh_chroot_* directories
install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localhooks || true
install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localincludes || true
install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localpackages || true
-install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localpackageslist || true
+install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localpackageslists || true
# Creating lh_bootstrap_* configuration
cat > "${LIVE_ROOT}"/config/bootstrap << EOF
@@ -145,25 +165,25 @@ LIVE_DISTRIBUTION="${LIVE_DISTRIBUTION}"
# (Default: empty)
LIVE_DISTRIBUTION_CONFIG="${LIVE_DISTRIBUTION_CONFIG}"
-# \$LIVE_FLAVOUR: select the flavour to use
-# (Default: ${LIVE_FLAVOUR})
-LIVE_FLAVOUR="${LIVE_FLAVOUR}"
+# \$LIVE_BOOTSTRAP_FLAVOUR: select the flavour to use
+# (Default: ${LIVE_BOOTSTRAP_FLAVOUR})
+LIVE_BOOTSTRAP_FLAVOUR="${LIVE_BOOTSTRA_PFLAVOUR}"
-# \$LIVE_MIRROR_LOCAL: set the local mirror to use
-# (Default: ${LIVE_MIRROR_LOCAL})
-LIVE_MIRROR_LOCAL="${LIVE_MIRROR_LOCAL}"
+# \$LIVE_MIRROR_BUILD: set the mirror to fetch packages from
+# (Default: ${LIVE_MIRROR_BUILD})
+LIVE_MIRROR_BUILD="${LIVE_MIRROR_BUILD}"
-# \$LIVE_MIRROR_LOCAL_SECURITY: set the local security mirror to use
-# (Default: ${LIVE_MIRROR_LOCAL_SECURITY})
-LIVE_MIRROR_LOCAL_SECURITY="${LIVE_MIRROR_LOCAL_SECURITY}"
+# \$LIVE_MIRROR_BUILD_SECURITY: set the security mirror to fetch packages from
+# (Default: ${LIVE_MIRROR_BUILD_SECURITY})
+LIVE_MIRROR_BUILD_SECURITY="${LIVE_MIRROR_BUILD_SECURITY}"
-# \$LIVE_MIRROR_GENERIC: set the generic mirror to use
-# (Default: ${LIVE_MIRROR_GENERIC})
-LIVE_MIRROR_GENERIC="${LIVE_MIRROR_GENERIC}"
+# \$LIVE_MIRROR_IMAGE: set the mirror which ends up in the image
+# (Default: ${LIVE_MIRROR_IMAGE})
+LIVE_MIRROR_IMAGE="${LIVE_MIRROR_IMAGE}"
-# \$LIVE_MIRROR_GENERIC_SECURITY: set the generic security mirror to use
-# (Default: ${LIVE_MIRROR_GENERIC_SECURITY})
-LIVE_MIRROR_GENERIC_SECURITY="${LIVE_MIRROR_GENERIC_SECURITY}"
+# \$LIVE_MIRROR_IMAGE_SECURITY: set the security mirror which ends up in the image
+# (Default: ${LIVE_MIRROR_IMAGE_SECURITY})
+LIVE_MIRROR_IMAGE_SECURITY="${LIVE_MIRROR_IMAGE_SECURITY}"
# \$LIVE_SECTIONS: select the section(s) to use
# (Default: ${LIVE_SECTIONS})
@@ -182,6 +202,14 @@ LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND}"
# (Default: empty)
LIVE_ENCRYPTION="${LIVE_ENCRYPTION}"
+# \$LIVE_USERNAME: set username
+# (Default: ${LIVE_USERNAME})
+LIVE_USERNAME="${LIVE_USERNAME}"
+
+# \$LIVE_HOSTNAME: set hostname
+# (Default: ${LIVE_HOSTNAME})
+LIVE_HOSTNAME="${LIVE_HOSTNAME}"
+
# \$LIVE_FILESYSTEM: set filesystem
# (Default: ${LIVE_FILESYSTEM})
LIVE_FILESYSTEM="${LIVE_FILESYSTEM}"
@@ -222,7 +250,14 @@ LIVE_BINARY_IMAGE="${LIVE_BINARY_IMAGE}"
# (Default: ${LIVE_SOURCE_IMAGE})
LIVE_SOURCE_IMAGE="${LIVE_SOURCE_IMAGE}"
+# \$LIVE_INCLUDES: set includes
+# (Default: ${LIVE_INCLUDES})
+LIVE_INCLUDES="${LIVE_INCLUDES}"
+
# \$LIVE_TEMPLATES: set templates
# (Default: ${LIVE_TEMPLATES})
LIVE_TEMPLATES="${LIVE_TEMPLATES}"
EOF
+
+# Creating lh_binary_* directories
+install -d -m 0755 "${LIVE_ROOT}"/config/binary_localincludes || true
diff --git a/helpers/lh_losetup b/helpers/lh_losetup
index 94337ac..fb7141e 100755
--- a/helpers/lh_losetup
+++ b/helpers/lh_losetup
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_losetup
+# lh_losetup - wrapper around losetup
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="wrapper around losetup"
+HELP=""
+USAGE="${PROGRAM} "
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Set_defaults
diff --git a/helpers/lh_source b/helpers/lh_source
index 0d23184..526646f 100755
--- a/helpers/lh_source
+++ b/helpers/lh_source
@@ -1,6 +1,13 @@
#!/bin/sh
-# lh_source(1) - building the source images
+# lh_source(1) - build source images
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
# Source common functions
for FUNCTION in /usr/share/live-helper/functions/*.sh
@@ -8,27 +15,40 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build source images"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+if [ "${FORCE}" = "true" ]
+then
+ OPTIONS="${OPTIONS} --force"
+fi
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
Set_defaults
# Enabling network in chroot
-lh_chroot_hosts install
-lh_chroot_resolv install
-lh_chroot_sources install
+lh_chroot_hosts install "${OPTIONS}"
+lh_chroot_resolv install "${OPTIONS}"
+lh_chroot_sources install "${OPTIONS}"
# Preparing images
-lh_source_config
-lh_source_download
+lh_source_config "${OPTIONS}"
+lh_source_download "${OPTIONS}"
+lh_source_md5sum "${OPTIONS}"
# Building images
-lh_source_generic
-lh_source_iso
-lh_source_net
-lh_source_usb
+lh_source_generic "${OPTIONS}"
+lh_source_iso "${OPTIONS}"
+lh_source_net "${OPTIONS}"
+lh_source_usb "${OPTIONS}"
# Deconfiguring chroot
rm -f .stage/chroot_sources
-lh_chroot_resolv remove
-lh_chroot_hosts remove
+lh_chroot_resolv remove "${OPTIONS}"
+lh_chroot_hosts remove "${OPTIONS}"
diff --git a/helpers/lh_source_config b/helpers/lh_source_config
index fe96d09..8701653 100755
--- a/helpers/lh_source_config
+++ b/helpers/lh_source_config
@@ -1,6 +1,11 @@
#!/bin/sh
-# lh_source_config(1) - copies debian-live config into source
+# lh_source_config(1) - copy debian-live config into source
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="copy debian-live config into source"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_source_download b/helpers/lh_source_download
index 2081220..c1903f8 100755
--- a/helpers/lh_source_download
+++ b/helpers/lh_source_download
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_source_download(1) - download sources
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="download sources"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_source_generic b/helpers/lh_source_generic
index 88b0bf7..81ba3a5 100755
--- a/helpers/lh_source_generic
+++ b/helpers/lh_source_generic
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_source_generic(1) - build source generic image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build source generic image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_source_hdd b/helpers/lh_source_hdd
index 93eaa7f..9fbdf07 100755
--- a/helpers/lh_source_hdd
+++ b/helpers/lh_source_hdd
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_source_hdd(1) - build source harddisk image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build source harddisk image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_source_iso b/helpers/lh_source_iso
index 3254ed6..25dcb5f 100755
--- a/helpers/lh_source_iso
+++ b/helpers/lh_source_iso
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_source_iso(1) - build source iso image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build source iso image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_source_md5sum b/helpers/lh_source_md5sum
new file mode 100755
index 0000000..70a2854
--- /dev/null
+++ b/helpers/lh_source_md5sum
@@ -0,0 +1,57 @@
+#!/bin/sh
+
+# lh_source_md5sum(1) - create source md5sums
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="create source md5sums"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
+# Reading configuration files
+Read_conffile config/common
+Read_conffile config/image
+Set_defaults
+
+if [ "${LIVE_SOURCE}" = "enabled" ]
+then
+ # Requiring stage file
+ Require_stagefile .stage/source_download
+
+ # Checking lock file
+ Check_lockfile .lock
+
+ # Creating lock file
+ Create_lockfile .lock
+
+ # Checking stage file
+ Check_stagefile .stage/source_md5sum
+
+ # Remove old md5sums
+ if [ -f source/md5sum.txt ]
+ then
+ rm -f source/md5sum.txt
+ fi
+
+ # Calculating md5sums
+ cd source
+ find . -type f -print0 | xargs -0 md5sum > md5sum.txt
+ cd "${OLDPWD}"
+
+ # Creating stage file
+ Create_stagefile .stage/source_md5sum
+fi
diff --git a/helpers/lh_source_net b/helpers/lh_source_net
index 0f60ddc..9a3c72d 100755
--- a/helpers/lh_source_net
+++ b/helpers/lh_source_net
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_source_net(1) - build source net image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build source net image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/image
diff --git a/helpers/lh_source_usb b/helpers/lh_source_usb
index 7df37c7..8f88715 100755
--- a/helpers/lh_source_usb
+++ b/helpers/lh_source_usb
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_source_usb(1) - build source image
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
set -e
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="build source image"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/bootstrap
diff --git a/helpers/lh_testroot b/helpers/lh_testroot
index e213ec5..bda3a46 100755
--- a/helpers/lh_testroot
+++ b/helpers/lh_testroot
@@ -1,6 +1,26 @@
#!/bin/sh
# lh_testroot(1) - ensure that a system is built as root
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
+
+# Source common functions
+for FUNCTION in /usr/share/live-helper/functions/*.sh
+do
+ . ${FUNCTION}
+done
+
+# Set static variables
+DESCRIPTION="ensure that a system is built as root"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
set -e
diff --git a/helpers/make-live b/helpers/make-live
index 6dc27af..741de97 100755
--- a/helpers/make-live
+++ b/helpers/make-live
@@ -1,10 +1,26 @@
#!/bin/sh
-set -e
+# make-live(1) - utility to build Debian Live systems
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+#
+# On Debian systems, the complete text of the GNU General Public License
+# can be found in /usr/share/common-licenses/GPL file.
-# Set static variables
-PROGRAM="`basename ${0}`"
-DESCRIPTION="utility to build Debian Live systems"
+set -e
# Source common functions
for FUNCTION in /usr/share/live-helper/functions/*.sh
@@ -12,21 +28,16 @@ do
. ${FUNCTION}
done
-Set_defaults
-
-# Source existing configuration
-Read_conffile debian-live/config/common
-Read_conffile debian-live/config/bootstrap
-Read_conffile debian-live/config/chroot
-Read_conffile debian-live/config/image
-
-USAGE="Usage: ${PROGRAM} [config] [--apt apt|aptitude] [--apt-ftpproxy URL] [--apt-httpproxy URL] [--apt-generic enabled|disabled] [--apt-pdiffs enabled|disabled] [--apt-recommends enabled|disabled] [--bootstrap cdebootstrap|deboostrap] [--cache enabled|disabled] [--debconf-frontend dialog|readline|noninteractive] [--debconf-priority low|medium|high|critical] [--genisoimage genisoimage|mkisofs] [--losetup losetup|losetup.org] [--root DIRECTORY] [-a|--architecture ARCHITECTURE] [-d|--distribution testing|unstable|etch|sid] [--distribution-config DIRECTORY] [-f|--flavour minimal|standard] [-m|--mirror-local URL] [--mirror-local-security URL] [--mirror-generic URL] [--mirror-generic-security URL] [--sections SECTION|\"SECTIONS\"] [-k|--kernel KERNEL] [--kernel-packages PACKAGES] [-l|--language LANGUAGE] [--packages PACKAGE|\"PACKAGES\"] [-p|--packages-list LIST] [--tasks TASK|\"TASKS\"] [--security enabled|disabled] [--symlinks enabled|disabled] [--sysvinit enabled|disabled] [--bootappend KERNEL_PARAMETER|\"KERNEL_PARAMETERS\"] [-e|--encryption ALGORITHM] [--filesystem ext2|plain|squashfs] [--memtest86 enabled|disabled] [--iso-volume STRING] [--server-address HOSTNAME|IP] [--server-path DIRECTORY] [--source enabled|disabled] [--syslinux enabled|disabled] [--syslinux-splash FILE] [-b|--binary-image hdd|iso|usb|net] [-s|--source-image generic|hdd|iso|usb|net] [--templates DIRECTORY]"
+# Set static variables
+PROGRAM="`basename ${0}`"
+DESCRIPTION="utility to build Debian Live systems"
+USAGE="${PROGRAM} [config] [--apt apt|aptitude] [--apt-ftpproxy URL] [--apt-httpproxy URL] [--apt-generic enabled|disabled] [--apt-pdiffs enabled|disabled] [--apt-recommends enabled|disabled] [--apt-secure enabled|disabled] [--bootstrap cdebootstrap|deboostrap] [--cache enabled|disabled] [--debconf-frontend dialog|readline|noninteractive] [--debconf-priority low|medium|high|critical] [--genisoimage genisoimage|mkisofs] [--losetup losetup|losetup.org] [-r|--root DIRECTORY] [-a|--architecture ARCHITECTURE] [-d|--distribution testing|unstable|etch|sid] [--distribution-config DIRECTORY] [-f|--bootstrap-flavour minimal|standard] [-m|--mirror-build URL] [--mirror-build-security URL] [--mirror-image URL] [--mirror-image-security URL] [--sections SECTION|\"SECTIONS\"] [--interactive shell|x11|xnest] [-k|--kernel-flavour FLAVOUR] [--kernel-packages PACKAGES] [-l|--language LANGUAGE] [--packages PACKAGE|\"PACKAGES\"] [-p|--packages-lists LIST|\"LISTS\"] [--tasks TASK|\"TASKS\"] [--security enabled|disabled] [--symlinks enabled|disabled] [--sysvinit enabled|disabled] [--bootappend KERNEL_PARAMETER|\"KERNEL_PARAMETERS\"] [-e|--encryption ALGORITHM] [--username NAME] [--hostname NAME] [--filesystem ext2|plain|squashfs] [--memtest86 enabled|disabled] [--iso-volume STRING] [--server-address HOSTNAME|IP] [--server-path DIRECTORY] [--source enabled|disabled] [--syslinux enabled|disabled] [--syslinux-splash FILE] [-b|--binary-image hdd|iso|usb|net] [-s|--source-image generic|hdd|iso|usb|net] [--includes DIRECTORY] [--templates DIRECTORY] [--force]"
HELP="Lists: gnome, gnome-core, gnome-desktop, gnome-full, gnome-junior, gnustep, kde, kde-core, kde-desktop, kde-extra, kde-full, kde-junior, mini, minimal, minimal-net, rescue, standard, standard-x11, xfce, xfce-desktop, xfce-junior"
-Main ()
+Local_arguments ()
{
- ARGUMENTS="`getopt --longoptions apt:,apt-ftpproxy:,apt-httpproxy:,apt-generic:,apt-pdiffs:,apt-recommends:,bootstrap:,cache:,debconf-frontend:,debconf-priority:,genisoimage:,losetup:,root:,architecture:,distribution:,distribution-config:,flavour:,mirror:,mirror-security:,mirror-generic:,mirror-generic-security:,sections:,kernel:,kernel-packages:,language:,packages:,packages-list:,tasks:,security:,symlinks:,sysvinit:,bootappend:,encryption:,filesystem:,memtest86:,iso-volume:,server-address:,server-path:,source:,syslinux:,syslinux-splash:,binary-image:,binary-source:,templates:,help,usage,version --name=${PROGRAM} --options a:d:f:m:k:l:p:e:b:s:huv --shell sh -- "${@}"`"
+ ARGUMENTS="`getopt --longoptions apt:,apt-ftpproxy:,apt-httpproxy:,apt-generic:,apt-pdiffs:,apt-recommends:,apt-secure:,bootstrap:,cache:,debconf-frontend:,debconf-priority:,genisoimage:,losetup:,root:,architecture:,distribution:,distribution-config:,flavour:,mirror-local:,mirror-local-security:,mirror-generic:,mirror-generic-security:,sections:,interactive:,kernel:,kernel-packages:,language:,packages:,packages-lists:,tasks:,security:,symlinks:,sysvinit:,bootappend:,encryption:,username:,hostname:,filesystem:,memtest86:,iso-volume:,server-address:,server-path:,source:,syslinux:,syslinux-splash:,binary-image:,binary-source:,includes:,templates:,help,usage,version,force --name=${PROGRAM} --options r:a:d:f:m:k:l:p:e:b:s:huv --shell sh -- "${@}"`"
if [ "${?}" != "0" ]
then
@@ -69,6 +80,10 @@ Main ()
LH_APT_RECOMMENDS="${2}"; shift 2
;;
+ --apt-secure)
+ LH_APT_SECURE="${2}"; shift 2
+ ;;
+
--bootstrap)
LH_BOOTSTRAP="${2}"; shift 2
;;
@@ -93,7 +108,7 @@ Main ()
LH_LOSETUP="${2}"; shift 2
;;
- --root)
+ -r|--root)
LIVE_ROOT="${2}"; shift 2
;;
@@ -111,24 +126,24 @@ Main ()
LIVE_DISTRIBUTION_CONFIG="${2}"; shift 2
;;
- -f|--flavour)
- LIVE_FLAVOUR="${2}"; shift 2
+ -f|--bootstrap-flavour)
+ LIVE_BOOTSTRAP_FLAVOUR="${2}"; shift 2
;;
- -m|--mirror-local)
- LIVE_MIRROR_LOCAL="${2}"; shift 2
+ -m|--mirror-build)
+ LIVE_MIRROR_BUILD="${2}"; shift 2
;;
- --mirror-local-security)
- LIVE_MIRROR_LOCAL_SECURITY="${2}"; shift 2
+ --mirror-build-security)
+ LIVE_MIRROR_BUILD_SECURITY="${2}"; shift 2
;;
- --mirror-generic)
- LIVE_MIRROR_GENERIC="${2}"; shift 2
+ --mirror-image)
+ LIVE_MIRROR_IMAGE="${2}"; shift 2
;;
- --mirror-generic-security)
- LIVE_MIRROR_GENERIC_SECURITY="${2}"; shift 2
+ --mirror-image-security)
+ LIVE_MIRROR_IMAGE_SECURITY="${2}"; shift 2
;;
--sections)
@@ -136,8 +151,12 @@ Main ()
;;
# chroot
- -k|--kernel)
- LIVE_KERNEL="${2}"; shift 2
+ --interactive)
+ LIVE_INTERACTIVE="${2}"; shift 2
+ ;;
+
+ -k|--kernel-flavour)
+ LIVE_KERNEL_FLAVOUR="${2}"; shift 2
;;
--kernel-packages)
@@ -152,8 +171,8 @@ Main ()
LIVE_PACKAGES="${2}"; shift 2
;;
- -p|--packages-list)
- LIVE_PACKAGES_LIST="${2}"; shift 2
+ -p|--packages-lists)
+ LIVE_PACKAGES_LISTS="${2}"; shift 2
;;
--tasks)
@@ -181,6 +200,14 @@ Main ()
LIVE_ENCRYPTION="${2}"; shift 2
;;
+ --username)
+ LIVE_USERNAME="${2}"; shift 2
+ ;;
+
+ --hostname)
+ LIVE_HOSTNAME="${2}"; shift 2
+ ;;
+
--filesystem)
LIVE_FILESYSTEM="${2}"; shift 2
;;
@@ -221,6 +248,10 @@ Main ()
LIVE_SOURCE_IMAGE="${2}"; shift 2
;;
+ --includes)
+ LIVE_INCLUDES="${2}"; shift 2
+ ;;
+
--templates)
LIVE_TEMPLATES="${2}"; shift 2
;;
@@ -231,13 +262,17 @@ Main ()
;;
-u|--usage)
- Usage 0; shift
+ Usage; shift
;;
-v|--version)
Version; shift
;;
+ --force)
+ FORCE="true"; shift
+ ;;
+
--)
shift; break
;;
@@ -248,17 +283,42 @@ Main ()
;;
esac
done
+}
+
+Main ()
+{
+ Local_arguments "${@}"
+
+ Set_defaults
+
+ if [ -z "${ROOT}" ]
+ then
+ ROOT="${LIVE_ROOT}"
+ fi
+
+ # Source existing configuration
+ Read_conffile "${ROOT}"/config/common
+ Read_conffile "${ROOT}"/config/bootstrap
+ Read_conffile "${ROOT}"/config/chroot
+ Read_conffile "${ROOT}"/config/image
+
+ Local_arguments "${@}"
# Initializing
lh_testroot
# Configuring (this is really shit!)
- LH_APT="${LH_APT}" LH_APT_FTPPROXY="${LH_APT_FTPPROXY}" LH_APT_HTTPPROXY="${LH_APT_HTTPPROXY}" LH_APT_GENERIC="${LH_APT_GENERIC}" LH_APT_PDIFFS="${LH_APT_PDIFFS}" LH_APT_RECOMMENDS="${LH_APT_RECOMMENDS}" LH_BOOTSTRAP="${LH_BOOTSTRAP}" LH_CACHE="${LH_CACHE}" LH_DEBCONF_FRONTEND="${LH_DEBCONF_FRONTEND}" LH_DEBCONF_PRIORITY="${LH_DEBCONF_PRIORITY}" LH_GENISOIMAGE="${LH_GENISOIMAGE}" LIVE_ROOT="${LIVE_ROOT}" LIVE_ARCHITECTURE="${LIVE_ARCHITECTURE}" LIVE_DISTRIBUTION="${LIVE_DISTRIBUTION}" LIVE_DISTRIBUTION_CONFIG="${LIVE_DISTRIBUTION_CONFIG}" LIVE_FLAVOUR="${LIVE_FLAVOUR}" LIVE_MIRROR_LOCAL="${LIVE_MIRROR_LOCAL}" LIVE_MIRROR_LOCAL_SECURITY="${LIVE_MIRROR_LOCAL_SECURITY}" LIVE_MIRROR_GENERIC="${LIVE_MIRROR_GENERIC}" LIVE_MIRROR_GENERIC_SECURITY="${LIVE_MIRROR_GENERIC_SECURITY}" LIVE_SECTIONS="${LIVE_SECTIONS}" LIVE_KERNEL="${LIVE_KERNEL}" LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES}" LIVE_LANGUAGE="${LIVE_LANGUAGE}" LIVE_PACKAGES="${LIVE_PACKAGES}" LIVE_PACKAGES_LIST="${LIVE_PACKAGES_LIST}" LIVE_TASKS="${LIVE_TASKS}" LIVE_SECURITY="${LIVE_SECURITY}" LIVE_SYMLINKS="${LIVE_SYMLINKS}" LIVE_SYSVINIT="${LIVE_SYSVINIT}" LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND}" LIVE_ENCRYPTION="${LIVE_ENCRYPTION}" LIVE_FILESYSTEM="${LIVE_FILESYSTEM}" LIVE_MEMTEST86="${LIVE_MEMTEST86}" LIVE_ISO_VOLUME="${LIVE_ISO_VOLUME}" LIVE_SERVER_ADDRESS="${LIVE_SERVER_ADDRESS}" LIVE_SERVER_PATH="${LIVE_SERVER_PATH}" LIVE_SOURCE="${LIVE_SOURCE}" LIVE_SYSLINUX="${LIVE_SYSLINUX}" LIVE_SYSLINUX_SPLASH="${LIVE_SYSLINUX_SPLASH}" LIVE_BINARY_IMAGE="${LIVE_BINARY_IMAGE}" LIVE_SOURCE_IMAGE="${LIVE_SOURCE_IMAGE}" LIVE_TEMPLATES="${LIVE_TEMPLATES}" lh_config newconfig
+ LH_APT="${LH_APT}" LH_APT_FTPPROXY="${LH_APT_FTPPROXY}" LH_APT_HTTPPROXY="${LH_APT_HTTPPROXY}" LH_APT_GENERIC="${LH_APT_GENERIC}" LH_APT_PDIFFS="${LH_APT_PDIFFS}" LH_APT_RECOMMENDS="${LH_APT_RECOMMENDS}" LH_APT_SECURE="${LH_APT_SECURE}" LH_BOOTSTRAP="${LH_BOOTSTRAP}" LH_CACHE="${LH_CACHE}" LH_DEBCONF_FRONTEND="${LH_DEBCONF_FRONTEND}" LH_DEBCONF_PRIORITY="${LH_DEBCONF_PRIORITY}" LH_GENISOIMAGE="${LH_GENISOIMAGE}" LIVE_ROOT="${LIVE_ROOT}" LIVE_ARCHITECTURE="${LIVE_ARCHITECTURE}" LIVE_DISTRIBUTION="${LIVE_DISTRIBUTION}" LIVE_DISTRIBUTION_CONFIG="${LIVE_DISTRIBUTION_CONFIG}" LIVE_BOOTSTRAP_FLAVOUR="${LIVE_BOOTSTRAP_FLAVOUR}" LIVE_MIRROR_BUILD="${LIVE_MIRROR_BUILD}" LIVE_MIRROR_BUILD_SECURITY="${LIVE_MIRROR_BUILD_SECURITY}" LIVE_MIRROR_IMAGE="${LIVE_MIRROR_IMAGE}" LIVE_MIRROR_IMAGE_SECURITY="${LIVE_MIRROR_IMAGE_SECURITY}" LIVE_SECTIONS="${LIVE_SECTIONS}" LIVE_INTERACTIVE="${LIVE_INTERACTIVE}" LIVE_KERNEL_FLAVOUR="${LIVE_KERNEL_FLAVOUR}" LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES}" LIVE_LANGUAGE="${LIVE_LANGUAGE}" LIVE_PACKAGES="${LIVE_PACKAGES}" LIVE_PACKAGES_LISTS="${LIVE_PACKAGES_LISTS}" LIVE_TASKS="${LIVE_TASKS}" LIVE_SECURITY="${LIVE_SECURITY}" LIVE_SYMLINKS="${LIVE_SYMLINKS}" LIVE_SYSVINIT="${LIVE_SYSVINIT}" LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND}" LIVE_ENCRYPTION="${LIVE_ENCRYPTION}" LIVE_USERNAME="${LIVE_USERNAME}" LIVE_HOSTNAME="${LIVE_HOSTNAME}" LIVE_FILESYSTEM="${LIVE_FILESYSTEM}" LIVE_MEMTEST86="${LIVE_MEMTEST86}" LIVE_ISO_VOLUME="${LIVE_ISO_VOLUME}" LIVE_SERVER_ADDRESS="${LIVE_SERVER_ADDRESS}" LIVE_SERVER_PATH="${LIVE_SERVER_PATH}" LIVE_SOURCE="${LIVE_SOURCE}" LIVE_SYSLINUX="${LIVE_SYSLINUX}" LIVE_SYSLINUX_SPLASH="${LIVE_SYSLINUX_SPLASH}" LIVE_BINARY_IMAGE="${LIVE_BINARY_IMAGE}" LIVE_SOURCE_IMAGE="${LIVE_SOURCE_IMAGE}" LIVE_INCLUDES="${LIVE_INCLUDES}" LIVE_TEMPLATES="${LIVE_TEMPLATES}" lh_config newconfig
+
+ if [ "${FORCE}" = "true" ]
+ then
+ OPTIONS="${OPTIONS} --force"
+ fi
# Building
if [ -z "${CONFIG}" ]
then
- cd "${LIVE_ROOT}" && lh_build
+ cd "${LIVE_ROOT}" && lh_build "${OPTIONS}"
fi
}
diff --git a/hooks/mini b/hooks/mini
old mode 100644
new mode 100755
index a8cc33a..da5404e
--- a/hooks/mini
+++ b/hooks/mini
@@ -1,4 +1,13 @@
+#!/bin/sh
+
# /usr/share/live-helper/hooks/mini - hook list for live-helper(7)
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
# Removing unused packages
apt-get remove --purge apt-utils aptitude libdb4.4
diff --git a/hooks/minimal b/hooks/minimal
old mode 100644
new mode 100755
index 9eb24f7..654867f
--- a/hooks/minimal
+++ b/hooks/minimal
@@ -1,4 +1,13 @@
+#!/bin/sh
+
# /usr/share/live-helper/hooks/minimal - hook list for live-helper(7)
+# Copyright (C) 2006-2007 Daniel Baumann
+#
+# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+# This is free software, and you are welcome to redistribute it
+# under certain conditions; see COPYING for details.
+
+set -e
# Removing unused packages
apt-get remove --purge apt-utils aptitude libdb4.4
diff --git a/includes/common/README.html b/includes/common/README.html
index 33565f3..2214064 100644
--- a/includes/common/README.html
+++ b/includes/common/README.html
@@ -40,6 +40,12 @@
+
+
+
+
+
+
@@ -71,10 +77,7 @@
-
-
-
- Debian GNU/Linux testing "Etch" - Official Snapshot i386 Binary-1 CD
+ Debian GNU/Linux testing "Etch" - Official Beta i386 NETINST Binary-1 20070317-20:46
|
@@ -146,7 +149,7 @@ vspace="0" alt="" width="15" height="16">
-About This CD
+About This Disc
@@ -170,7 +173,7 @@ vspace="0" alt="" width="15" height="16">
- Using CDs with apt
+ Using CDs/DVDs with apt
@@ -179,7 +182,7 @@ vspace="0" alt="" width="15" height="16">
-CD Manufacturers
+CD/DVD Manufacturers
@@ -193,7 +196,7 @@ vspace="0" alt="" width="15" height="16">
-Browse this CD-ROM
+Browse This Disc
@@ -233,7 +236,7 @@ Intro
-This is one of the CD-ROMs of the
+This is one disc in a set containing the the
Debian GNU/Linux
distribution. Debian is a
very extensive collection of software. But it is more. It is a complete
@@ -281,9 +284,9 @@ for more information.
-
-This CD-ROM is labeled
+This disc is labeled
- Debian GNU/Linux testing "Etch" - Official Snapshot i386 Binary-1
+ Debian GNU/Linux testing "Etch" - Official Beta i386 NETINST Binary-1 20070317-20:46
-which means that this CD is number 1 of 1 CDs containing
+which means that this disc is number 1 of a set of 1 discs.
-programs ("binaries") for `i386' computers.
+It contains programs ("binaries") for `i386' computers.
-The programs on the Binary CDs are ordered by popularity. The Binary-1 CD
+The programs on the Binary discs are ordered by popularity. The Binary-1 disc
contains the most popular programs and the installation tools; it is possible
-to install and run Debian with only the Binary-1 CD. The other CDs, up to
+to install and run Debian with only the Binary-1 disc. The other discs, up to
Binary-1, contain mostly special-interest programs.
@@ -321,6 +324,9 @@ site.
+
+
+
Installing
@@ -338,11 +344,11 @@ Installing
alongside your current OS, or as the only OS on your computer.
- An Installation Guide for this CD is available from
+ An Installation Guide for this disc is available from
the Debian web site.
Programs and other files that are needed for the installation can be found on
- this CD under
+ this disc under
/tools/
@@ -358,7 +364,7 @@ Installing
- you can start the installation program easily by booting off this CD-ROM.
+ you can start the installation program easily by booting off this disc.
Note that not all (esp. older) systems support this.
@@ -401,14 +407,8 @@ Last-Minute Notes
-
-
-You should keep in mind that this is an unofficial CD of the current
-development version of the Debian system. This means that all sorts of
-bugs may be present anywhere in the system.
-
-
@@ -416,8 +416,19 @@ bugs may be present anywhere in the system.
+You should keep in mind that this is a beta disc of the current
+development version of the Debian system. This means that all sorts of
+bugs may be present anywhere in the system.
+
+
+
+
+
+
+
+
@@ -436,7 +447,7 @@ bugs may be present anywhere in the system.
- After installing or upgrading, Debian's packaging system can use CD-ROMs,
+ After installing or upgrading, Debian's packaging system can use CDs, DVDs,
local collections, or networked servers (FTP, HTTP) to automatically
install software from (.deb packages). This is done
preferably with the `apt' and `aptitude' programs.
@@ -467,7 +478,7 @@ bugs may be present anywhere in the system.
-CD Manufacturers
+CD/DVD Manufacturers
@@ -475,7 +486,7 @@ CD Manufacturers
-You are completely free to manufacture and re-distribute CD-ROMs of the
+You are completely free to manufacture and re-distribute CDs/DVDs of the
Debian GNU/Linux Operating System, like this one. There is no charge from
us (but of course donations are always welcome).
@@ -504,7 +515,7 @@ More Information
-There is much more information present on this CD. Besides the already
+There is much more information present on this disc. Besides the already
mentioned installation and upgrading procedures, this is the most
interesting:
diff --git a/includes/common/README.mirrors.html b/includes/common/README.mirrors.html
index b16637b..fd46ab4 100644
--- a/includes/common/README.mirrors.html
+++ b/includes/common/README.mirrors.html
@@ -64,683 +64,663 @@ Everything else you want to know about Debian mirrors:
Austria |
ftp.at.debian.org |
/debian/ |
- alpha arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Australia |
ftp.au.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc |
Australia |
ftp.wa.au.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Bulgaria |
ftp.bg.debian.org |
/debian/ |
- !hppa !hurd-i386 !s390 |
+ alpha amd64 arm i386 ia64 m68k mips mipsel powerpc sparc |
Brazil |
ftp.br.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Switzerland |
ftp.ch.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Chile |
ftp.cl.debian.org |
/debian/ |
- all |
+ amd64 i386 powerpc |
Czech Republic |
ftp.cz.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Germany |
ftp.de.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Germany |
ftp2.de.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
+
+
+ Denmark |
+ ftp.dk.debian.org |
+ /debian/ |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Estonia |
ftp.ee.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Spain |
ftp.es.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Finland |
ftp.fi.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
France |
ftp.fr.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
France |
ftp2.fr.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Great Britain |
ftp.uk.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Hong Kong |
ftp.hk.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Croatia |
ftp.hr.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Hungary |
ftp.hu.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Ireland |
ftp.ie.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Iceland |
ftp.is.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Italy |
ftp.it.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Japan |
ftp.jp.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Japan |
ftp2.jp.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Korea |
ftp.kr.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
+
+
+ Mexico |
+ ftp.mx.debian.org |
+ /debian/ |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Netherlands |
ftp.nl.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Norway |
ftp.no.debian.org |
/debian/ |
- !m68k |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 powerpc s390 sparc |
New Zealand |
ftp.nz.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hurd-i386 i386 ia64 m68k mips mipsel powerpc sparc |
Poland |
ftp.pl.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Romania |
ftp.ro.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Russia |
ftp.ru.debian.org |
/debian/ |
- all |
+ amd64 i386 |
Sweden |
ftp.se.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Slovenia |
ftp.si.debian.org |
/debian/ |
- alpha i386 ia64 m68k sparc |
+ alpha amd64 i386 ia64 m68k powerpc sparc |
Slovakia |
ftp.sk.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
Turkey |
ftp.tr.debian.org |
/debian/ |
- all |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
+
+
+ Taiwan |
+ ftp.tw.debian.org |
+ /debian/ |
+ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc |
United States |
ftp.us.debian.org |
/debian/ |
- !m68k !s390 |
+ amd64 i386 |
Secondary mirrors of the Debian archive
-HOST NAME FTP HTTP ARCHITECTURES
---------- --- ---- -------------
+HOST NAME FTP HTTP ARCHITECTURES
+--------- --- ---- -------------
AR Argentina
------------
-debian.logiclinux.com /debian/ i386
-ftp.ccc.uba.ar /pub/linux/debian/debian/ /download/pub/linux/debian/debian/ i386
-debian.usla.org.ar /debian/ i386
+debian.logiclinux.com /debian/ i386
+ftp.ccc.uba.ar /pub/linux/debian/debian/ /pub/linux/debian/debian/ amd64 i386
AT Austria
----------
-ftp.at.debian.org /debian/ /debian/ alpha arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
-gd.tuwien.ac.at /opsys/linux/debian/ /opsys/linux/debian/ all
-debian.mur.at /debian/ /debian/ i386 ia64
-ftp.tu-graz.ac.at /mirror/debian/ /mirror/debian/ all
-ftp.univie.ac.at /systems/linux/debian/debian/ /systems/linux/debian/debian/ hurd-i386 i386
-debian.inode.at /debian/ /debian/ alpha arm i386 m68k sparc
+ftp.at.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+gd.tuwien.ac.at /opsys/linux/debian/ /opsys/linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.mur.at /debian/ /debian/ amd64 i386 ia64
+ftp.tu-graz.ac.at /mirror/debian/ /mirror/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.univie.ac.at /systems/linux/debian/debian/ /systems/linux/debian/debian/ i386
+debian.inode.at /debian/ /debian/ alpha amd64 arm i386 powerpc sparc
AU Australia
------------
-ftp.wa.au.debian.org /debian/ /debian/ all
-ftp.au.debian.org /debian/ /debian/ all
-mirror.aarnet.edu.au /debian/ /debian/ !alpha
-ftp.monash.edu.au /pub/linux/debian/ /pub/linux/debian/ i386
-ftp.uwa.edu.au /mirrors/linux/debian/ all
-mirror.eftel.com /debian/ /debian/ i386
-mirror.pacific.net.au /debian/ /debian/ all
-ftp.iinet.net.au /debian/debian/ /debian/debian/ all
-debian.goldweb.com.au /debian/ hurd-i386 i386
-mirror.datafast.net.au /debian/ /debian/ i386
-debian.ihug.com.au /debian/ /debian/ i386
-debian.vicnet.net.au /debian/ /debian/ i386
-mirror.optus.net /debian/ all
+ftp.wa.au.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.au.debian.org /debian/ /debian/ alpha amd64 arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.aarnet.edu.au /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.monash.edu.au /pub/linux/debian/ /pub/linux/debian/ amd64 i386
+ftp.uwa.edu.au /debian/ /debian/ amd64 i386
+mirror.eftel.com /debian/ /debian/ amd64 i386
+mirror.pacific.net.au /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.iinet.net.au /debian/debian/ /debian/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.datafast.net.au /debian/ /debian/ amd64 i386
+mirror.optus.net /debian/ amd64 i386
BE Belgium
----------
-ftp.tiscali.be /pub/debian/ /pub/debian/ all
-ftp.kulnet.kuleuven.ac.be /debian/ /debian/ all
-ftp.easynet.be /debian/ /ftp/debian/ all
-ftp.belnet.be /debian/ /debian/ all
-ftp.debian.skynet.be /debian/ /ftp/debian/ all
-ftp.scarlet.be /pub/debian/ /pub/debian/ all
+ftp.kulnet.kuleuven.ac.be /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.easynet.be /debian/ /ftp/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.belnet.be /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.debian.skynet.be /debian/ /ftp/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.scarlet.be /pub/debian/ /pub/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
BG Bulgaria
-----------
-ftp.bg.debian.org /debian/ /debian/ !hppa !hurd-i386 !s390
-debian.ludost.net /debian/ /debian/ i386
-ftp.uni-sofia.bg /debian/ /debian/ all
-debian.telecoms.bg /debian/ /debian/ all
+ftp.bg.debian.org /debian/ /debian/ alpha amd64 arm i386 ia64 m68k mips mipsel powerpc sparc
+debian.ludost.net /debian/ /debian/ i386
+ftp.uni-sofia.bg /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.telecoms.bg /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
BR Brazil
---------
-ftp.br.debian.org /debian/ /debian/ all
-sft.if.usp.br /debian/ i386
-linorg.usp.br /debian/ /debian/ i386
-linux.iq.usp.br /debian/ i386 m68k
-ftp.pucpr.br /debian/ /debian/ hurd-i386 i386
-www.las.ic.unicamp.br /pub/debian/ /pub/debian/ i386
+ftp.br.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+sft.if.usp.br /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+linorg.usp.br /debian/ /debian/ i386
+linux.iq.usp.br /debian/ amd64 i386
+ftp.pucpr.br /debian/ amd64 hurd-i386 i386
+www.las.ic.unicamp.br /pub/debian/ /pub/debian/ amd64 hurd-i386 i386 powerpc sparc
+debian.pop-sc.rnp.br /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
BY Belarus
----------
-linux.org.by /debian/ /debian/ i386
-ftp.mgts.by /debian/ i386
+linux.org.by /debian/ amd64 i386
+ftp.mgts.by /debian/ /debian/ amd64 i386
CA Canada
---------
-mirror.direct.ca /pub/linux/debian/ /linux/debian/ i386 ia64 sparc
-debian.yorku.ca /debian/ alpha i386
-ftp3.nrc.ca /debian/ /debian/ i386
-gulus.usherbrooke.ca /debian/ /debian/ all
-mirror.cpsc.ucalgary.ca /debian/ /debian/ i386
-mirror.peer1.net /debian/ !hppa !ia64 !s390
-debian.savoirfairelinux.net /debian/ /debian/ all
-debian.mirror.cygnal.ca /debian/ /debian/ all
+debian.yorku.ca /debian/ amd64 i386
+ftp3.nrc.ca /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+gulus.usherbrooke.ca /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.cpsc.ucalgary.ca /debian/ /debian/ amd64 i386
+mirror.peer1.net /debian/ alpha amd64 arm i386 mips mipsel powerpc sparc
+debian.mirror.rafal.ca /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.savoirfairelinux.net /debian/ /debian/ amd64 i386 powerpc
+debian.mirror.iweb.ca /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
CH Switzerland
--------------
-ftp.ch.debian.org /debian/ /debian/ all
-mirror.switch.ch /mirror/debian/ /ftp/mirror/debian/ all
+ftp.ch.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.switch.ch /mirror/debian/ /ftp/mirror/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
CL Chile
--------
-ftp.cl.debian.org /debian/ /debian/ all
-debian.experimentos.cl /Debian/debian/ /debian/ i386
-debian.ubiobio.cl /debian/ i386 sparc
+ftp.cl.debian.org /debian/ /debian/ amd64 i386 powerpc
+debian.ubiobio.cl /debian/ amd64 i386 powerpc sparc
CN China
--------
-ftp.linuxforum.net /debian/ i386
-mirrors.geekbone.org /debian/ /debian/ all
-debian.cn99.com /debian/ /debian/ i386
-mirror.vmmatrix.net /debian/ !alpha !hppa !m68k !mipsel !s390
-
-CO Colombia
------------
-fatboy.umng.edu.co /debian/ alpha hurd-i386 i386 ia64 sparc
-debian.funlam.edu.co /debian/ i386
-
-CR Costa Rica
--------------
-debian.efis.ucr.ac.cr /debian/ all
+ftp.linuxforum.net /debian/ i386
+mirrors.geekbone.org /debian/ /debian/ alpha amd64 hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.cn99.com /debian/ /debian/ amd64 i386
CZ Czech Republic
-----------------
-ftp.cz.debian.org /debian/ /debian/ all
-debian.sh.cvut.cz /debian/ /debian/ all
-ftp.zcu.cz /pub/linux/debian/ /ftp/pub/linux/debian/ i386
+ftp.cz.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.sh.cvut.cz /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.zcu.cz /mirrors/debian/ /mirrors/debian/ amd64 i386
+debian.mirror.web4u.cz / / amd64 i386
DE Germany
----------
-ftp.de.debian.org /debian/ /debian/ all
-ftp2.de.debian.org /debian/ /debian/ all
-ftp.tu-clausthal.de /pub/linux/debian/ alpha arm i386 ia64 m68k mips mipsel powerpc sparc
-debian.uni-essen.de /debian/ /debian/ i386
-ftp.freenet.de /pub/ftp.debian.org/debian/ /debian/ all
-ftp.uni-erlangen.de /pub/Linux/debian/ /pub/Linux/debian/ all
-sunsite.informatik.rwth-aachen.de /pub/Linux/debian/ /ftp/pub/Linux/debian/ alpha i386 sparc
-ftp-stud.fht-esslingen.de /debian/ /debian/ all
-ftp.stw-bonn.de /debian/ /debian/ i386
-ftp.fu-berlin.de /pub/unix/linux/mirrors/debian/ all
-debian.tu-bs.de /debian/ /debian/ all
-ftp.uni-koeln.de /debian/ /debian/ alpha i386 sparc
-debian.pffa.de /pub/mirrors/debian/ /mirrors/debian/ hurd-i386 i386
-ftp.mpi-sb.mpg.de /pub/linux/distributions/debian/debian/ all
-ftp.tiscali.de /pub/debian/debian/ /pub/debian/debian/ all
-ftp.tu-chemnitz.de /pub/linux/debian/debian/ /pub/linux/debian/debian/ all
-ftp.uni-kl.de /pub/linux/debian/ /debian/ i386 ia64 sparc
-ftp.uni-bayreuth.de /pub/linux/Debian/debian/ /linux/Debian/debian/ !arm
-ftp.informatik.hu-berlin.de /pub/Mirrors/ftp.de.debian.org/debian/ all
-ftp.gwdg.de /pub/linux/debian/debian/ /pub/linux/debian/debian/ all
-ftp.hosteurope.de /pub/linux/debian/ /pub/linux/debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
-ftp.informatik.uni-frankfurt.de /pub/linux/Mirror/ftp.debian.org/debian//debian/ i386 ia64
-debian.netcologne.de /debian/ /debian/ all
+ftp.de.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp2.de.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.tu-clausthal.de /pub/linux/debian/ amd64 arm i386 ia64 m68k mips powerpc sparc
+debian.uni-essen.de /debian/ /debian/ amd64 hurd-i386 i386 ia64 m68k mips mipsel powerpc sparc
+ftp.freenet.de /pub/ftp.debian.org/debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.uni-erlangen.de /pub/Linux/debian/ /pub/Linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+sunsite.informatik.rwth-aachen.de /pub/Linux/debian/ /ftp/pub/Linux/debian/ alpha amd64 i386 powerpc sparc
+ftp-stud.fht-esslingen.de /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.stw-bonn.de /debian/ /debian/ amd64 i386
+ftp.fu-berlin.de /pub/unix/linux/mirrors/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.tu-bs.de /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.uni-koeln.de /debian/ /debian/ alpha amd64 i386 powerpc sparc
+debian.pffa.de /pub/mirrors/debian/ /mirrors/debian/ i386
+ftp.mpi-sb.mpg.de /pub/linux/distributions/debian/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.tiscali.de /pub/debian/debian/ /pub/debian/debian/ amd64 arm hurd-i386 i386 ia64
+ftp.tu-chemnitz.de /pub/linux/debian/debian/ /pub/linux/debian/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.uni-kl.de /debian/ /debian/ amd64 i386 ia64 powerpc sparc
+ftp.uni-bayreuth.de /pub/linux/Debian/debian/ /linux/Debian/debian/ alpha amd64 hurd-i386 i386 ia64
+ftp.informatik.hu-berlin.de /pub/Mirrors/ftp.de.debian.org/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.gwdg.de /pub/linux/debian/debian/ /pub/linux/debian/debian/ amd64 hurd-i386 i386
+ftp.hosteurope.de /pub/linux/debian/ /pub/linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.netcologne.de /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+artfiles.org /debian/ /debian/ amd64 i386
+debian.intergenia.de /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.swordcoast.net /debian/ /debian/ alpha amd64 arm hurd-i386 i386 ia64 m68k powerpc
+debian.cruisix.net /debian/ /debian/ amd64 i386 powerpc
+ftp.rrzn.uni-hannover.de /debian/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
DK Denmark
----------
-mirrors.dotsrc.org /debian/ /debian/ all
-ftp.dkuug.dk /pub/debian/ /debian/ all
-mirror.here.dk /debian/ !mips !mipsel
-debian.uni-c.dk /debian/ all
-mirrors.telianet.dk /debian/ /debian/ hurd-i386 i386 sparc
+ftp.dk.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.dkuug.dk /pub/debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.here.dk /debian/ amd64 i386 ia64 mips powerpc
+debian.uni-c.dk /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirrors.telianet.dk /debian/ /debian/ amd64 i386 powerpc sparc
EE Estonia
----------
-ftp.ee.debian.org /debian/ /debian/ all
+ftp.ee.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
ES Spain
--------
-ftp.es.debian.org /debian/ /debian/ all
-toxo.com.uvigo.es /debian/ /debian/ all
-ftp.rediris.es /debian/ /debian/ alpha i386 ia64 sparc
-jane.uab.es /debian/ hurd-i386 i386
-ftp.caliu.info /debian/ /debian/ i386 ia64 m68k mips mipsel powerpc sparc
-ftp.cica.es /debian/ all
-ftp.dat.etsit.upm.es /debian/ /debian/ i386
-ftp.gva.es /pub/mirror/debian/ /mirror/debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.es.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.rediris.es /debian/ /debian/ alpha amd64 i386 ia64 powerpc sparc
+ftp.cica.es /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.caliu.info /debian/ /debian/ i386 ia64 m68k mips mipsel powerpc sparc
+ftp.gva.es /pub/mirror/debian/ /mirror/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.gul.uc3m.es /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.um.es /mirror/debian/ all
FI Finland
----------
-ftp.fi.debian.org /debian/ /debian/ all
-ftp.funet.fi /pub/linux/mirrors/debian/ /pub/linux/mirrors/debian/ all
-ftp.jyu.fi /debian/ /debian/ !arm !m68k !mips !mipsel !s390
+ftp.fi.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.funet.fi /pub/linux/mirrors/debian/ /pub/linux/mirrors/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.jyu.fi /debian/ /debian/ alpha amd64 hurd-i386 i386 powerpc sparc
FR France
---------
-ftp.fr.debian.org /debian/ /debian/ all
-ftp2.fr.debian.org /debian/ /debian/ all
-ftp.iut-bm.univ-fcomte.fr /debian/ /debian/ all
-ftp.proxad.net /mirrors/ftp.debian.org/ all
-ftp.minet.net /debian/ all
-ftp.info.iut-tlse3.fr /debian/ /debian/ i386 m68k
-ftp.lip6.fr /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ all
-debian.ens-cachan.fr /debian/ /ftp/debian/ i386 sparc
-ftp.u-picardie.fr /mirror/debian/ /mirror/debian/ alpha i386
-debian.mirrors.easynet.fr /debian/ / alpha i386 powerpc
-ftp.u-strasbg.fr /debian/ /debian/ !arm !hppa !mips !mipsel !s390
-ftp.ipv6.opentransit.net /debian/ /debian/ !mipsel
-debian.lami.univ-evry.fr /debian/ i386 sparc
-mir1.ovh.net /debian/ /debian/ all
-mir2.ovh.net /debian/ all
-ftp.nerim.net /debian/ /debian/ i386
-ftp.crihan.fr /debian/ /debian/ all
-debian.mines.inpl-nancy.fr /debian/ /debian/ !alpha !arm !m68k
-ftp.debian.ikoula.com /debian/ all
-webb.ens-cachan.fr /debian/ /debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
-mirrors.ircam.fr /pub/debian/ /pub/debian/ !arm !hppa !s390
+ftp.fr.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp2.fr.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.iut-bm.univ-fcomte.fr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.proxad.net /mirrors/ftp.debian.org/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.lip6.fr /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ amd64 i386
+debian.ens-cachan.fr /debian/ /ftp/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.u-picardie.fr /mirror/debian/ /mirror/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.mirrors.easynet.fr /debian/ / alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.u-strasbg.fr /debian/ /debian/ alpha amd64 hurd-i386 i386 ia64 m68k powerpc sparc
+debian.ibisc.univ-evry.fr /debian/ /debian/ amd64 i386
+mir1.ovh.net /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mir2.ovh.net /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.nerim.net /debian/ /debian/ i386
+ftp.crihan.fr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.mines.inpl-nancy.fr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.debian.ikoula.com /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+webb.ens-cachan.fr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirrors.ircam.fr /pub/debian/ /pub/debian/ alpha amd64 hurd-i386 i386 ia64 m68k mips mipsel powerpc sparc
+debian.mirror.inra.fr /debian/ /debian/ amd64 arm i386 ia64 powerpc sparc
GB Great Britain
----------------
-ftp.uk.debian.org /debian/ /debian/ all
-debian.hands.com /debian/ /debian/ all
-ftp.demon.co.uk /pub/mirrors/linux/debian/ all
-ftp.mcc.ac.uk /pub/linux/distributions/Debian/ hurd-i386 i386 sh
-www.mirrorservice.org /sites/ftp.debian.org/debian/ /sites/ftp.debian.org/debian/ i386
-download.mirror.ac.uk /sites/ftp.debian.org/debian/ /sites/ftp.debian.org/debian/ all
-ftp.ticklers.org /debian/ /debian/ all
-debian.blueyonder.co.uk /pub/debian/ / all
-mirror.positive-internet.com /debian/ /debian/ i386
-the.earth.li /debian/ /debian/ hurd-i386 i386
-mirror.ox.ac.uk /debian/ /debian/ all
+ftp.uk.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.mcc.ac.uk /pub/linux/distributions/Debian/ hurd-i386 i386 sh
+www.mirrorservice.org /sites/ftp.debian.org/debian/ /sites/ftp.debian.org/debian/ amd64 i386
+download.mirror.ac.uk /sites/ftp.debian.org/debian/ /sites/ftp.debian.org/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.ticklers.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.blueyonder.co.uk /pub/debian/ / alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.positive-internet.com /debian/ /debian/ amd64 hppa i386 ia64 powerpc
+the.earth.li /debian/ /debian/ amd64 hurd-i386 i386
+mirror.ox.ac.uk /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
GR Greece
---------
-debian.otenet.gr /pub/linux/debian/ /debian/ all
-ftp.ntua.gr /pub/linux/debian/ /pub/linux/debian/ i386 sparc
-ftp.duth.gr /debian/ /debian/ all
-ftp.softnet.tuc.gr /pub/linux/debian/ /ftp/linux/debian/ all
-debian.spark.net.gr /debian/ i386 sparc
-debian.internet.gr /debian/ /debian/ i386 ia64 s390 sparc
+debian.otenet.gr /pub/linux/debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.ntua.gr /pub/linux/debian/ /pub/linux/debian/ amd64 i386 sparc
+ftp.duth.gr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.softnet.tuc.gr /pub/linux/debian/ /ftp/linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.internet.gr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
HK Hong Kong
------------
-ftp.hk.debian.org /debian/ /debian/ all
-sunsite.ust.hk /pub/debian/ all
-www.zentek-international.com /mirrors/debian/debian/ all
+ftp.hk.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+www.zentek-international.com /mirrors/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
HR Croatia
----------
-ftp.hr.debian.org /debian/ /debian/ all
-ftp.irb.hr /debian/ /debian/ arm hurd-i386 i386 ia64 sparc
-ftp.carnet.hr /debian/ /debian/ all
-debian.iskon.hr /debian/ /debian/ hurd-i386 i386 ia64 s390
+ftp.hr.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.irb.hr /debian/ /debian/ amd64 arm hurd-i386 i386 ia64 powerpc sparc
+ftp.carnet.hr /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.iskon.hr /debian/ /debian/ amd64 hurd-i386 i386 ia64 s390
HU Hungary
----------
-ftp.hu.debian.org /debian/ /debian/ all
-ftp.index.hu /debian/ i386
-debian.inf.elte.hu /debian/ /debian/ all
-ftp.bme.hu /OS/Linux/dist/debian/ /OS/Linux/dist/debian/ hurd-i386 i386 ia64
+ftp.hu.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.bme.hu /OS/Linux/dist/debian/ /OS/Linux/dist/debian/ amd64 hurd-i386 i386 ia64
ID Indonesia
------------
-kebo.vlsm.org /debian/ /debian/ i386
-debian.3wsi.net /debian/ i386
-debian.indika.net.id /debian/ all
+kebo.vlsm.org /debian/ /debian/ amd64 hurd-i386 i386 powerpc
+debian.indika.net.id /debian/ i386
IE Ireland
----------
-ftp.ie.debian.org /debian/ /debian/ all
-ftp.esat.net /pub/linux/debian/ /pub/linux/debian/ all
+ftp.ie.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.esat.net /pub/linux/debian/ /pub/linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
IL Israel
---------
-mirror.hamakor.org.il /pub/mirrors/debian/ i386
-
-IN India
---------
-ftp.iitm.ac.in /debian/ /debian/ i386
+mirror.hamakor.org.il /pub/mirrors/debian/ amd64 i386
+mirror.inter.net.il /pub/debian/ /pub/debian/ amd64 i386 sparc
+debian.co.il /debian/ amd64 i386
IS Iceland
----------
-ftp.is.debian.org /debian/ /debian/ all
+ftp.is.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
IT Italy
--------
-ftp.it.debian.org /debian/ /debian/ all
-ftp.bononia.it /debian/ /debian/ all
-freedom.dicea.unifi.it /ftp/pub/linux/debian/ /ftp/pub/linux/debian/ hurd-i386 i386
-ftp.eutelia.it /pub/Debian_Mirror/ all
-cdn.mirror.garr.it /mirrors/debian/ alpha arm hppa i386 ia64 sparc
-mi.mirror.garr.it /mirrors/debian/ /mirrors/debian/ alpha arm hppa i386 ia64 sparc
-debian.fastweb.it /debian/ /debian/ all
-ftp.unina.it /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
-debian.fastbull.org /debian/ /debian/ all
+ftp.it.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.bononia.it /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+freedom.dicea.unifi.it /ftp/pub/linux/debian/ amd64 hurd-i386 i386
+ftp.eutelia.it /pub/Debian_Mirror/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mi.mirror.garr.it /mirrors/debian/ /mirrors/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.fastweb.it /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.unina.it /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.fastbull.org /debian/ /debian/ amd64 i386 powerpc sparc
JP Japan
--------
-ftp2.jp.debian.org /debian/ /debian/ all
-ftp.jp.debian.org /debian/ /debian/ all
-ring.asahi-net.or.jp /pub/linux/debian/debian/ /archives/linux/debian/debian/ all
-ftp.dti.ad.jp /pub/Linux/debian/ /pub/Linux/debian/ all
-dennou-k.gfd-dennou.org /library/Linux/debian/ /library/Linux/debian/ all
-dennou-q.gfd-dennou.org /library/Linux/debian/ /library/Linux/debian/ all
-ftp.yz.yamagata-u.ac.jp /debian/ /debian/ all
-sb.itc.u-tokyo.ac.jp /DEBIAN/debian/ all
-ftp.riken.go.jp /pub/Linux/debian/debian/ /pub/Linux/debian/debian/ i386
-debian.shimpinomori.net /debian/ i386
-ring.hosei.ac.jp /pub/linux/debian/debian/ /archives/linux/debian/debian/ all
-www.ring.gr.jp /pub/linux/debian/debian/ /archives/linux/debian/debian/ all
-ftp.jaist.ac.jp /pub/Linux/Debian/ /pub/Linux/Debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.jp.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp2.jp.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ring.asahi-net.or.jp /pub/linux/debian/debian/ /archives/linux/debian/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.dti.ad.jp /pub/Linux/debian/ /pub/Linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+dennou-k.gfd-dennou.org /library/Linux/debian/ /library/Linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+dennou-q.gfd-dennou.org /library/Linux/debian/ /library/Linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.yz.yamagata-u.ac.jp /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+sb.itc.u-tokyo.ac.jp /DEBIAN/debian/ amd64 hurd-i386 i386 powerpc
+ftp.riken.go.jp /pub/Linux/debian/debian/ /pub/Linux/debian/debian/ amd64 i386
+debian.shimpinomori.net /debian/ amd64 i386 powerpc
+www.ring.gr.jp /pub/linux/debian/debian/ /archives/linux/debian/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.jaist.ac.jp /pub/Linux/Debian/ /pub/Linux/Debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
KR Korea
--------
-ftp.kr.debian.org /debian/ /debian/ all
-ftp.kreonet.re.kr /pub/Linux/debian/ /pub/Linux/debian/ all
+ftp.kr.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
LT Lithuania
------------
-ameba.sc-uni.ktu.lt /debian/ /debian/ i386
-debian.balt.net /debian/ /debian/ arm i386 sparc
-debian.vinita.lt /debian/ /debian/ i386
-
-LV Latvia
----------
-ftp.latnet.lv /linux/debian/ /linux/debian/ hurd-i386 i386
+ameba.sc-uni.ktu.lt /debian/ /debian/ i386
+debian.balt.net /debian/ /debian/ amd64 arm i386 sparc
MX Mexico
---------
-nisamox.fciencias.unam.mx /debian/ /debian/ all
+ftp.mx.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mmc.igeofcu.unam.mx /debian/ amd64 hurd-i386 i386 ia64
NI Nicaragua
------------
-debian.uni.edu.ni /debian/ hurd-i386 i386
+debian.uni.edu.ni /debian/ amd64 hurd-i386 i386
NL Netherlands
--------------
-ftp.nl.debian.org /debian/ /debian/ all
-ftp.nluug.nl /pub/os/Linux/distr/debian/ /pub/os/Linux/distr/debian/ all
-ftp.eu.uu.net /debian/ /debian/ all
-ftp.surfnet.nl /pub/os/Linux/distr/debian/ /os/Linux/distr/debian/ all
-download.xs4all.nl /pub/mirror/debian/ all
-ftp.debian.nl /debian/ /debian/ i386
-ftp.tiscali.nl /pub/mirrors/debian/ /debian/ all
-debian.essentkabel.com /debian/ /debian/ all
+ftp.nl.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.nluug.nl /pub/os/Linux/distr/debian/ /pub/os/Linux/distr/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.surfnet.nl /pub/os/Linux/distr/debian/ /os/Linux/distr/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.debian.nl /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.tiscali.nl /pub/mirrors/debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.essentkabel.com /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.scarlet-internet.nl /pub/debian/ /pub/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
NO Norway
---------
-ftp.no.debian.org /debian/ /debian/ !m68k
-debian.marked.no /debian/ /debian/ all
+ftp.no.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 powerpc s390 sparc
NZ New Zealand
--------------
-ftp.nz.debian.org /debian/ /debian/ all
-debian.ihug.co.nz /debian/ /debian/ i386
+ftp.nz.debian.org /debian/ /debian/ alpha amd64 arm hurd-i386 i386 ia64 m68k mips mipsel powerpc sparc
+debian.ihug.co.nz /debian/ /debian/ amd64 i386
PL Poland
---------
-ftp.pl.debian.org /debian/ /debian/ all
-ftp.icm.edu.pl /pub/Linux/debian/ /pub/Linux/debian/ !arm !m68k
-mirror.ipartners.pl /pub/debian/ all
-ftp.man.szczecin.pl /pub/Linux/debian/ all
+ftp.pl.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.icm.edu.pl /pub/Linux/debian/ /pub/Linux/debian/ alpha amd64 hurd-i386 i386 sparc
+ftp.man.szczecin.pl /pub/Linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.vectranet.pl /debian/ /debian/ amd64 i386
PT Portugal
-----------
-ftp.uevora.pt /debian/ /debian/ i386
-ftp.eq.uc.pt /pub/software/Linux/debian/ /software/Linux/debian/ i386
-debian.ua.pt /debian/ /debian/ all
-ftp.linux.pt /pub/mirrors/debian/ /pub/mirrors/debian/ hurd-i386 i386
+ftp.uevora.pt /debian/ /debian/ amd64 i386
+ftp.eq.uc.pt /pub/software/Linux/debian/ /software/Linux/debian/ amd64 i386
+debian.ua.pt /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.linux.pt /pub/mirrors/debian/ /pub/mirrors/debian/ amd64 hurd-i386 i386
+ftp.telepac.pt /pub/debian/ all
RO Romania
----------
-ftp.ro.debian.org /debian/ /debian/ all
-ftp.lug.ro /debian/ /debian/ i386 ia64
+ftp.ro.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.lug.ro /debian/ /debian/ amd64 i386 powerpc
RU Russia
---------
-ftp.ru.debian.org /debian/ /debian/ all
-debian.nsu.ru /debian/ /debian/ i386
-debian.udsu.ru /debian/ /debian/ i386
-ftp.psn.ru /debian/ /debian/ hurd-i386 i386
-ftp.corbina.ru /pub/Linux/debian/ i386 ia64
+ftp.ru.debian.org /debian/ /debian/ amd64 i386
+debian.nsu.ru /debian/ /debian/ amd64 i386
+debian.udsu.ru /debian/ /debian/ amd64 i386
+ftp.psn.ru /debian/ /debian/ alpha amd64 hurd-i386 i386
+ftp.corbina.ru /pub/Linux/debian/ amd64 i386 ia64
+ftp.mipt.ru /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
SE Sweden
---------
-ftp.se.debian.org /debian/ /debian/ all
-ftp.sunet.se /pub/os/Linux/distributions/debian/ /pub/os/Linux/distributions/debian/all
-ftp.du.se /debian/ /debian/ all
-kalle.csb.ki.se /pub/linux/debian/ /pub/linux/debian/ i386 sparc
-mirror.pudas.net /debian/ /debian/ all
-ftp.port80.se /debian/ /debian/ all
-ftp.ds.hj.se /pub/Linux/distributions/debian/ /pub/Linux/distributions/debian/ i386 powerpc sparc
+ftp.se.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.sunet.se /pub/os/Linux/distributions/debian/ /pub/os/Linux/distributions/debian/alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.port80.se /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.ds.hj.se /pub/os/linux/debian/ /pub/os/linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
SG Singapore
------------
-mirror.averse.net /debian/ /debian/ i386
-mirror.nus.edu.sg /pub/Debian/ /Debian/ alpha hurd-i386 i386
-debian.wow-vision.com.sg /debian/ /debian/ i386
+mirror.nus.edu.sg /pub/Debian/ /Debian/ amd64 i386
+debian.wow-vision.com.sg /debian/ /debian/ amd64 i386
SI Slovenia
-----------
-ftp.si.debian.org /debian/ /debian/ alpha i386 ia64 m68k sparc
-ftp.arnes.si /packages/debian/ all
+ftp.si.debian.org /debian/ /debian/ alpha amd64 i386 ia64 m68k powerpc sparc
+ftp.arnes.si /packages/debian/ amd64 hurd-i386 i386
SK Slovakia
-----------
-ftp.sk.debian.org /debian/ /debian/ all
+ftp.sk.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
TH Thailand
-----------
-ftp.nectec.or.th /pub/linux-distributions/Debian/ all
-ftp.coe.psu.ac.th /debian/ /debian/ !arm !hppa !ia64 !sparc
+ftp.coe.psu.ac.th /debian/ /debian/ i386
TR Turkey
---------
-ftp.tr.debian.org /debian/ /debian/ all
-ftp.linux.org.tr /pub/mirrors/debian/ all
+ftp.tr.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.linux.org.tr /pub/mirrors/debian/ amd64 i386
+godel.cs.bilgi.edu.tr /debian/ hurd-i386 i386
TW Taiwan
---------
-ftp.tku.edu.tw /OS/Linux/distributions/debian/ /OS/Linux/distributions/debian/ all
-debian.csie.ntu.edu.tw /pub/debian/ /debian/ hurd-i386 i386
-debian.linux.org.tw /debian/ /debian/ all
-linux.cdpa.nsysu.edu.tw /debian/ /debian/ all
-opensource.nchc.org.tw /debian/ /debian/ all
-debian.nctu.edu.tw /debian/ all
+ftp.tw.debian.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.csie.ntu.edu.tw /pub/debian/ /debian/ amd64 hurd-i386 i386
+linux.cdpa.nsysu.edu.tw /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+opensource.nchc.org.tw /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.nctu.edu.tw /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.nttu.edu.tw /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
UA Ukraine
----------
-debian.osdn.org.ua /pub/Debian/debian/ /debian/ i386
-debian.org.ua /debian/ /debian/ i386
-ftp.3logic.net /debian/ i386
+debian.osdn.org.ua /pub/Debian/debian/ /debian/ i386
+debian.org.ua /debian/ /debian/ i386
+ftp.3logic.net /debian/ i386
US United States
----------------
-ftp.us.debian.org /debian/ /debian/ !m68k !s390
-ftp.debian.org /debian/ /debian/ i386
-debian.crosslink.net /debian/ /debian/ all
-ftp-linux.cc.gatech.edu /debian/ /debian/ all
-ftp.egr.msu.edu /debian/ /debian/ all
-distro.ibiblio.org /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ hurd-i386 i386 sparc
-ftp-mirror.internap.com /pub/debian/ /pub/debian/ all
-ftp.cerias.purdue.edu /pub/os/debian/ /pub/os/debian/ i386
-ftp.cs.unm.edu /mirrors/debian/ all
-mirror.cs.wisc.edu /pub/mirrors/linux/debian/ /pub/mirrors/linux/debian/ i386
-ftp.uwsg.indiana.edu /linux/debian/ /linux/debian/ all
-natasha.stmarytx.edu /debian/ all
-ftp.ndlug.nd.edu /debian/ /mirrors/debian/ all
-debian.uchicago.edu /debian/ /debian/ all
-carroll.aset.psu.edu /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ all
-debian.fifi.org /pub/debian/ /debian/ i386 sparc
-gladiator.real-time.com /linux/debian/ i386
-mirrors.kernel.org /debian/ /debian/ all
-mirrors.rcn.net /debian/ /debian/ i386
-ftp.keystealth.org /debian/ /debian/ !alpha !arm !hppa !m68k !s390
-debian.lcs.mit.edu /debian/ /debian/ all
-archive.progeny.com /debian/ /debian/ all
-linux.csua.berkeley.edu /debian/ /debian/ all
-debian.secsup.org /pub/linux/debian/ / all
-debian.teleglobe.net /debian/ / all
-techweb.rfa.org /debian/ /debian/ all
-debian.osuosl.org /debian/ /debian/ all
-lyre.mit.edu /debian/ all
-mirror.mcs.anl.gov /pub/debian/ /debian/ all
-debian.2z.net /debian/ i386
-sluglug.ucsc.edu /debian/ /debian/ all
-cudlug.cudenver.edu /debian/ /debian/ alpha hurd-i386 i386 ia64 sparc
-mirrors.geeks.org /debian/ /debian/ i386
-mirrors.engr.arizona.edu /debian/ i386
-mirrors.terrabox.com /debian/ /debian/ all
-debian.midco.net /debian/ all
-mirrors.usc.edu /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ all
-debian.mirrors.pair.com / / all
-lug.mtu.edu /debian/ /debian/ alpha hppa i386 mips mipsel powerpc sparc
-debian.mirrors.tds.net /debian/ /debian/ all
-debian.cites.uiuc.edu /pub/debian/ /pub/debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
-mirrors.tummy.com /pub/ftp.debian.org/ /debian/ all
-debian.mirror.frontiernet.net /debian/ /debian/ all
+ftp.us.debian.org /debian/ /debian/ amd64 i386
+ftp.debian.org /debian/ /debian/ amd64 i386
+ftp.gtlib.gatech.edu /pub/debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.egr.msu.edu /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+distro.ibiblio.org /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ amd64 hurd-i386 i386 powerpc
+ftp-mirror.internap.com /pub/debian/ /pub/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.cerias.purdue.edu /pub/os/debian/ /pub/os/debian/ amd64 i386
+ftp.cs.unm.edu /mirrors/debian/ alpha arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.cs.wisc.edu /pub/mirrors/linux/debian/ amd64 i386
+ftp.uwsg.indiana.edu /linux/debian/ /linux/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+natasha.stmarytx.edu /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.ndlug.nd.edu /debian/ /mirrors/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.uchicago.edu /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+carroll.aset.psu.edu /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.fifi.org /pub/debian/ /debian/ amd64 i386 sparc
+gladiator.real-time.com /linux/debian/ alpha amd64 i386 powerpc sparc
+mirrors.kernel.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.keystealth.org /debian/ /debian/ amd64 hurd-i386 i386 ia64 mips mipsel sparc
+debian.lcs.mit.edu /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+linux.csua.berkeley.edu /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.secsup.org /pub/linux/debian/ / alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+techweb.rfa.org /debian/ /debian/ amd64 i386
+debian.osuosl.org /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.anl.gov /pub/debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+sluglug.ucsc.edu /debian/ amd64 hurd-i386 i386 powerpc sparc
+mirrors.geeks.org /debian/ /debian/ amd64 i386
+debian.midco.net /debian/ i386
+mirrors.usc.edu /pub/linux/distributions/debian/ /pub/linux/distributions/debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.mirrors.pair.com / / alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+lug.mtu.edu /debian/ /debian/ alpha amd64 hppa i386 mips mipsel powerpc sparc
+debian.mirrors.tds.net /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.cites.uiuc.edu /pub/debian/ /pub/debian/ amd64 hurd-i386 i386 ia64 powerpc sparc
+mirrors.tummy.com /pub/ftp.debian.org/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+debian.mirror.frontiernet.net /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+cudlug.cudenver.edu /debian/ /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+mirror.tucdemonic.org /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
+bigmirror.crossbowproject.net /pub/debian/ alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
+ftp.cise.ufl.edu /pub/mirrors/debian/ amd64 i386
+mirror.cc.columbia.edu /pub/linux/debian/debian/ /pub/linux/debian/debian/ amd64 i386 powerpc
VE Venezuela
------------
-debian.unesr.edu.ve /debian/ all
+debian.unesr.edu.ve /debian/ alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc
ZA South Africa
---------------
-ftp.is.co.za /debian/ /debian/ i386
-ftp.sun.ac.za /debian/ /ftp/debian/ i386
+ftp.sun.ac.za /debian/ /ftp/debian/ amd64 i386
- Last modified: Wed May 17 18:52:18 2006 |
- Number of sites listed: 330 |
+ Last modified: Tue Mar 13 19:52:11 2007 |
+ Number of sites listed: 296 |