Bug#593629: debian-cd: GNU/kFreeBSD support
Package: debian-cd
Version: 3.1.3
Severity: normal
Tags: patch
Hi,
The patch below add support for GNU/kFreeBSD. It's a mix of support
for kfreebsd-amd64 and kfreebsd-i386 with bug fixes to support a "-"
in the architecture name.
If you have any question, don't hesitate. If not, please apply this
patch for the next upload.
Thanks in advance,
Aurelien
Index: tools/grab_md5
===================================================================
--- tools/grab_md5 (révision 2043)
+++ tools/grab_md5 (copie de travail)
@@ -49,7 +49,7 @@
DIR = ""
}' | sort | uniq >> $OUT
;;
- alpha|amd64|arm|armel|hppa|i386|ia64|m68k|mips|mipsel|powerpc|s390|sparc)
+ alpha|amd64|arm|armel|hppa|i386|ia64|m68k|mips|mipsel|powerpc|s390|sparc|kfreebsd-amd64|kfreebsd-i386)
FILES=`find $LOCATIONS -name Packages.gz | grep binary-$ARCH`
echo "Using MD5 sums from Packages files:"
echo $FILES
Index: tools/generate_di+k_list
===================================================================
--- tools/generate_di+k_list (révision 2043)
+++ tools/generate_di+k_list (copie de travail)
@@ -287,4 +287,17 @@
loop-aes-modules-2.6-prep
#endif
+#ifdef ARCH_kfreebsd_amd64
+kfreebsd-image-8-amd64
+grub-pc
+#endif
+
+#ifdef ARCH_kfreebsd_i386
+kfreebsd-image-8-486
+kfreebsd-image-8-686
+kfreebsd-image-8-686-smp
+grub-pc
+libc0.1-i686
+#endif
+
EOF
Index: tools/generate_di_list
===================================================================
--- tools/generate_di_list (révision 2043)
+++ tools/generate_di_list (copie de travail)
@@ -12,9 +12,9 @@
my @ARCHES;
if ( $ENV{ARCHES} ) {
- push @ARCHES, 'i386' if $ENV{ARCHES} =~ /i386/;
- push @ARCHES, 'amd64' if $ENV{ARCHES} =~ /amd64/;
- push @ARCHES, grep { !/source|i386|amd64/ } split /\s+/, $ENV{ARCHES};
+ push @ARCHES, 'i386' if $ENV{ARCHES} =~ /[^\s]i386[\s\$]/;
+ push @ARCHES, 'amd64' if $ENV{ARCHES} =~ /[^\s]amd64[\s\$]/;
+ push @ARCHES, grep { !/^(source|i386|amd64)$/ } split /\s+/, $ENV{ARCHES};
}
@ARCHES = qw{i386 amd64} unless @ARCHES;
Index: tools/boot/squeeze/boot-kfreebsd
===================================================================
--- tools/boot/squeeze/boot-kfreebsd (révision 0)
+++ tools/boot/squeeze/boot-kfreebsd (révision 0)
@@ -0,0 +1,90 @@
+# This script gets sourced from boot-kfreebsd-i386 and boot-kfreebsd-amd64.
+#
+# Do install stuff for kfreebsd, including making bootable CDs
+# Works with debian-installer
+#
+# $1 is the CD number
+# $2 is the temporary CD build dir
+
+. $BASEDIR/tools/boot/$DI_CODENAME/common.sh
+. $BASEDIR/tools/boot/$DI_CODENAME/x86-desktop.sh
+
+set -e
+#set -x
+
+N=$1
+CDDIR=$2
+BOOTDIR=
+if [ "$DI_WWW_HOME" = "default" ];then
+ DI_WWW_HOME="http://d-i.debian.org/daily-images/$ARCH/daily"
+ if [ -n "$DI_DIR" ];then
+ DI_DIR="$DI_DIR/${DI_WWW_HOME#*http://}"
+ DI_WWW_HOME=""
+ echo "Using images from $DI_DIR"
+ fi
+fi
+if [ ! "$DI_DIST" ]; then
+ DI_DIST="$DI_CODENAME"
+fi
+
+cd $CDDIR/..
+
+# Only disc 1 bootable
+if [ $N != 1 ]; then
+ add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-J -joliet-long"
+ exit 0
+fi
+
+# Download boot images.
+BOOT_IMAGES="cdrom/debian-cd_info.tar.gz cdrom/kfreebsd.gz cdrom/initrd.gz"
+
+for image in $BOOT_IMAGES; do
+ if [ ! -e "$image" ]; then
+ dir=$(dirname $image)
+ mkdir -p $dir
+ if [ ! "$DI_WWW_HOME" ];then
+ if [ ! "$DI_DIR" ];then
+ DI_DIR="$MIRROR/dists/$DI_DIST/main/installer-$ARCH/current/images"
+ fi
+ cp "$DI_DIR/$image" $image
+ else
+ wget "$DI_WWW_HOME/$image" -O $image
+ fi
+ fi
+done
+
+# Install kernel and initrd
+mkdir -p $CDDIR/boot/kernel/
+cp "cdrom/kfreebsd.gz" "$CDDIR/boot/kernel/kfreebsd.gz"
+cp "cdrom/initrd.gz" "$CDDIR/boot/mfsroot.gz"
+
+# Install bootloader
+tar -C $CDDIR -zxf cdrom/debian-cd_info.tar.gz
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-J -joliet-long"
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-b boot/grub/grub_eltorito"
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-c boot/boot.cat"
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-no-emul-boot"
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-load-size 4"
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-info-table"
+add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-cache-inodes"
+
+# Add autorun
+if [ -f $CDDIR/README.html ]; then
+ todos > $CDDIR/autorun.inf <<EOF
+[autorun]
+open=autorun.bat
+EOF
+ todos > $CDDIR/autorun.bat <<EOF
+@echo Starting "README.html"...
+@start README.html
+@exit
+EOF
+fi
+
+# Install languages
+install_languages $CDDIR
+
+# Cleanup
+rm -rf cdrom
+
+# done
Index: tools/boot/squeeze/boot-kfreebsd-amd64
===================================================================
--- tools/boot/squeeze/boot-kfreebsd-amd64 (révision 0)
+++ tools/boot/squeeze/boot-kfreebsd-amd64 (révision 0)
@@ -0,0 +1,2 @@
+#!/bin/bash
+. $BASEDIR/tools/boot/$DI_CODENAME/boot-kfreebsd
Modification de propriétés sur tools/boot/squeeze/boot-kfreebsd-amd64
___________________________________________________________________
Ajouté : svn:executable
+ *
Index: tools/boot/squeeze/boot-kfreebsd-i386
===================================================================
--- tools/boot/squeeze/boot-kfreebsd-i386 (révision 0)
+++ tools/boot/squeeze/boot-kfreebsd-i386 (révision 0)
@@ -0,0 +1,2 @@
+#!/bin/bash
+. $BASEDIR/tools/boot/$DI_CODENAME/boot-kfreebsd
Modification de propriétés sur tools/boot/squeeze/boot-kfreebsd-i386
___________________________________________________________________
Ajouté : svn:executable
+ *
Index: build_all.sh
===================================================================
--- build_all.sh (révision 2043)
+++ build_all.sh (copie de travail)
@@ -40,7 +40,7 @@
IMAGETARGET="official_images"
fi
-for ARCHES in i386 amd64 alpha arm hppa ia64 m68k mips mipsel powerpc s390 sparc source
+for ARCHES in i386 amd64 alpha arm hppa ia64 m68k mips mipsel powerpc s390 sparc kfreebsd-amd64 kfreebsd-i386 source
do
export ARCHES
echo "Now we're going to build CD for $ARCHES !"
Index: data/squeeze/exclude-udebs-kfreebsd-i386
===================================================================
--- data/squeeze/exclude-udebs-kfreebsd-i386 (révision 0)
+++ data/squeeze/exclude-udebs-kfreebsd-i386 (révision 0)
@@ -0,0 +1,26 @@
+# These udebs build the d-i cdrom initrd. As such, there is no reason
+# to keep another copy of them on the CD in udeb form.
+#
+acpi-modules-*
+cdrom-modules-*
+i2c-modules-*
+isofs-modules-*
+kernel-image-*
+parport-modules-*
+sata-modules-*
+scsi-core-modules-*
+scsi-extra-modules-*
+scsi-modules-*
+serial-modules-*
+
+# Not yet support on GNU/kFreeBSD
+partman-auto-crypto
+partman-auto-lvm
+partman-auto-raid
+partman-crypto-dm
+partman-crypto-loop
+partman-ext3
+partman-jfs
+partman-lvm
+partman-md
+partman-multipath
Index: data/squeeze/kfreebsd-i386_netinst_udeb_include
===================================================================
--- data/squeeze/kfreebsd-i386_netinst_udeb_include (révision 0)
+++ data/squeeze/kfreebsd-i386_netinst_udeb_include (révision 0)
@@ -0,0 +1,2 @@
+netcfg
+ethdetect
Index: data/squeeze/kfreebsd-amd64_businesscard_udeb_include
===================================================================
--- data/squeeze/kfreebsd-amd64_businesscard_udeb_include (révision 0)
+++ data/squeeze/kfreebsd-amd64_businesscard_udeb_include (révision 0)
@@ -0,0 +1,3 @@
+choose-mirror
+netcfg
+ethdetect
Index: data/squeeze/kfreebsd-i386_udeb_include
===================================================================
--- data/squeeze/kfreebsd-i386_udeb_include (révision 0)
+++ data/squeeze/kfreebsd-i386_udeb_include (révision 0)
@@ -0,0 +1,2 @@
+netcfg
+ethdetect
Index: data/squeeze/kfreebsd-i386_businesscard_udeb_include
===================================================================
--- data/squeeze/kfreebsd-i386_businesscard_udeb_include (révision 0)
+++ data/squeeze/kfreebsd-i386_businesscard_udeb_include (révision 0)
@@ -0,0 +1,3 @@
+choose-mirror
+netcfg
+ethdetect
Index: data/squeeze/exclude-udebs
===================================================================
--- data/squeeze/exclude-udebs (révision 2043)
+++ data/squeeze/exclude-udebs (copie de travail)
@@ -134,6 +134,8 @@
kbd-udeb
console-setup-*
# Currently unused
+debian-ports-archive-keyring-udeb
+emdebian-archive-keyring-udeb
nbd-client-udeb
pwgen-udeb
# Eh?
Index: data/squeeze/kfreebsd-amd64_netinst_udeb_include
===================================================================
--- data/squeeze/kfreebsd-amd64_netinst_udeb_include (révision 0)
+++ data/squeeze/kfreebsd-amd64_netinst_udeb_include (révision 0)
@@ -0,0 +1,2 @@
+netcfg
+ethdetect
Index: data/squeeze/exclude-udebs-kfreebsd-amd64
===================================================================
--- data/squeeze/exclude-udebs-kfreebsd-amd64 (révision 0)
+++ data/squeeze/exclude-udebs-kfreebsd-amd64 (révision 0)
@@ -0,0 +1,26 @@
+# These udebs build the d-i cdrom initrd. As such, there is no reason
+# to keep another copy of them on the CD in udeb form.
+#
+acpi-modules-*
+cdrom-modules-*
+i2c-modules-*
+isofs-modules-*
+kernel-image-*
+parport-modules-*
+sata-modules-*
+scsi-core-modules-*
+scsi-extra-modules-*
+scsi-modules-*
+serial-modules-*
+
+# Not yet support on GNU/kFreeBSD
+partman-auto-crypto
+partman-auto-lvm
+partman-auto-raid
+partman-crypto-dm
+partman-crypto-loop
+partman-ext3
+partman-jfs
+partman-lvm
+partman-md
+partman-multipath
Index: data/squeeze/kfreebsd-amd64_udeb_include
===================================================================
--- data/squeeze/kfreebsd-amd64_udeb_include (révision 0)
+++ data/squeeze/kfreebsd-amd64_udeb_include (révision 0)
@@ -0,0 +1,2 @@
+netcfg
+ethdetect
Index: Makefile
===================================================================
--- Makefile (révision 2043)
+++ Makefile (copie de travail)
@@ -310,7 +310,7 @@
fi
$(Q)for ARCH in $(ARCHES_NOSRC); do \
- ARCHDEFS="$$ARCHDEFS -D ARCH_$(subst -,_,$$ARCH)"; \
+ ARCHDEFS="$$ARCHDEFS -D ARCH_`echo $$ARCH | sed 's/-/_/'`"; \
ARCHUNDEFS="$$ARCHUNDEFS -U $$ARCH"; \
done; \
for VARIANT in $(VARIANTS); do \
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: kfreebsd-amd64 (x86_64)
Kernel: kFreeBSD 8.1-1-amd64
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages debian-cd depends on:
ii apt 0.7.25.3 Advanced front-end for dpkg
ii bc 1.06.95-2 The GNU bc arbitrary precision cal
ii cpp 4:4.4.4-2 The GNU C preprocessor (cpp)
ii curl 7.21.1-1 Get a file from an HTTP, HTTPS or
ii dctrl-tools [grep-dctrl 2.14 Command-line tools to process Debi
ii genisoimage 9:1.1.10-1 Creates ISO-9660 CD-ROM filesystem
ii libcompress-zlib-perl 2.024-1 Transitional dummy package for Com
ii libio-compress-perl [li 2.024-1 bundle of IO::Compress modules
ii lynx 2.8.8dev.4-3 Text-mode WWW Browser (transitiona
ii lynx-cur 2.8.8dev.4-3 Text-mode WWW Browser with NLS sup
ii make 3.81-8 An utility for Directing compilati
ii perl [libdigest-md5-per 5.10.1-14 Larry Wall's Practical Extraction
ii tofrodos 1.7.8.debian.1-2 Converts DOS <-> Unix text files,
Versions of packages debian-cd recommends:
pn hfsutils <none> (no description available)
ii netpbm 2:10.0-12.2 Graphics conversion tools between
pn syslinux-common <none> (no description available)
debian-cd suggests no packages.
-- no debconf information
Reply to: