Patch for simple-cdd and debian-cd 3.0
Hello,
I just fixed simple-cdd to work with the latest debian-cd.
In reality it required some fixes to the debian-cd tree as well, so you
should use it in combination with the debian-cd (see debian_cd_dir in
simple-cdd.conf) from the svn trunk.
If you want to use debian-cd 3.0.0 instead of the svn trunk, you have to
add "$debian_cd_dir/tools" in the PATH before calling the various
debian-cd targets and you have to manually call the mirrorcheck target
before "make images".
Please apply my patch.
Roland Mas also sent a patch to Gustavo some time ago. It would be good
to import that patch in the "etch-simple-cdd" branch (it renamed
debian/15simple-cdd into debian/14simple-cdd).
Cheers,
--
Raphaël Hertzog
Premier livre français sur Debian GNU/Linux :
http://www.ouaza.com/livre/admin-debian/
=== modified file 'build-simple-cdd'
--- build-simple-cdd 2007-01-20 06:48:22 +0000
+++ build-simple-cdd 2007-02-21 15:00:26 +0000
@@ -372,12 +372,12 @@
cp $BASEDIR/debian-installer-$CODENAME $BASEDIR/tasks/
cp $BASEDIR/debian-installer+kernel-$CODENAME $BASEDIR/tasks/
-for a in distclean status bin-list bootable packages ; do
+for a in distclean status packagelists image-trees ; do
echo
echo simple-cdd: $a
make $a
- if [ "$a" = "bootable" ] && [ -f $simple_cdd_temp/$CODENAME-$ARCH/boot1/isolinux/isolinux.cfg ]; then
- isolinuxcfg="$simple_cdd_temp/$CODENAME-$ARCH/boot1/isolinux/isolinux.cfg"
+ if [ "$a" = "images-trees" ] && [ -f $simple_cdd_temp/cd-build/$CODENAME/boot1/isolinux/isolinux.cfg ]; then
+ isolinuxcfg="$simple_cdd_temp/cd-build/$CODENAME/boot1/isolinux/isolinux.cfg"
if [ "true" = "$use_serial_console" ] && [ -n "$serial_console_speed" ]; then
echo "SERIAL 0 $serial_console_speed 0" >> $isolinuxcfg
fi
@@ -465,13 +465,16 @@
fi
echo simple-cdd: extra files for simple-cdd
-make bin-extras CD=1 ROOTSRC=$simple_cdd_dir/extras DIR=.
+#Â TODO: ideally use the hook mechanism of debian-cd to first indicate the
+# size that must be reserved and then copy the files at the appropriate
+# time in the process (see RESERVED_BLOCKS_HOOK and DISC_START_HOOK)
+cp -a $simple_cdd_dir/extras/* $simple_cdd_temp/cd-build/$CODENAME/CD1/
# check to make sure all the packages we want are present.
-CHECK_MIRROR="$simple_cdd_temp/$CODENAME-$ARCH/CD1/pool" profiles="default $build_profiles $profiles" simple_cdd_dir="$simple_cdd_dir" check_not_requested="$check_not_requested" checkpackages || exit $?
+CHECK_MIRROR="$simple_cdd_temp/cd-build/$CODENAME/CD1/pool" profiles="default $build_profiles $profiles" simple_cdd_dir="$simple_cdd_dir" check_not_requested="$check_not_requested" checkpackages || exit $?
-echo simple-cdd: bin-image
-make bin-image CD=1
+echo simple-cdd: image
+make image CD=1
if [ "true" = "$use_qemu" ]; then
# run qemu to install the system and boot the system with qemu.
=== modified file 'debian/control'
--- debian/control 2006-12-11 18:08:16 +0000
+++ debian/control 2007-02-21 10:45:25 +0000
@@ -8,7 +8,7 @@
Package: simple-cdd
Architecture: all
-Depends: rsync, debian-cd (>= 2.2.25), reprepro | debpartial-mirror, apt-utils, wget, python
+Depends: rsync, debian-cd (>= 3.0.1), reprepro | debpartial-mirror, apt-utils, wget, python
Suggests: qemu, debootstrap
Description: create custom debian-installer CDs
simple-cdd is a limited though relatively easy tool to create a customized
=== modified file 'profiles/default.downloads'
--- profiles/default.downloads 2006-12-23 21:15:48 +0000
+++ profiles/default.downloads 2007-02-21 10:00:06 +0000
@@ -21,6 +21,9 @@
mdetect
read-edid
+# debian-cd uses debootstrap from the mirror
+debootstrap
+
# other packages that debian-cd complains about if they're not there:
# remove them at your own risk.
ash
=== modified file 'simple-cdd.conf'
--- simple-cdd.conf 2007-01-05 22:27:52 +0000
+++ simple-cdd.conf 2007-02-21 15:02:42 +0000
@@ -81,12 +81,23 @@
# get default debian-cd values for most things
. $debian_cd_dir/CONF.sh
+# Extract the arch from $ARCHES
+for arch in $ARCHES; do
+ if [ "$arch" != "source" ]; then
+ export ARCH=$arch
+ break
+ fi
+done
+
# Unset some additional optional variables first to start from a clean state
unset_vars="TASK SIZELIMIT EXCLUDE UNEXCLUDE2"
for var in $unset_vars ; do
unset $var || true
done
+# We don't care about JIGDO
+export DOJIGDO=0
+
# do not include the manual or release notes, respectively, to save space.
#export OMIT_MANUAL=1
#export OMIT_RELEASE_NOTES=1
@@ -179,7 +190,7 @@
export OUT=$simple_cdd_dir/images/
# debian-cd temporary directories
-export TDIR="$simple_cdd_temp"
+export TDIR="$simple_cdd_temp/cd-build/"
export APTTMP="$TDIR/apt/"
# increase the size limit if debian-cd tries to make more CDs than you want,
Reply to: