[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: