diff --git a/data/etch/s390/README.boot b/data/etch/s390/README.boot new file mode 100644 index 00000000..5b6ae15c --- /dev/null +++ b/data/etch/s390/README.boot @@ -0,0 +1,24 @@ +About the S/390 installation CD +=============================== + +It is possible to "boot" the installation system off this CD using +the files provided in the /boot directory. + +Note that the /boot/d390oco.* files are only provided as an example +as Debian cannot ship the object-code-only-modules-ramdisk (oco.bin). + +Although you can boot the installer from this CD, the installation +itself is *not* actually done from the CD. Once the initrd is loaded, +the installer will ask you to configure your network connection and +uses the network-console component to allow you to continue the +installation over SSH. The rest of the installation is done over the +network: all installer components and Debian packages are retrieved +from a mirror. + + +Tip for users of the Hercules emulator +-------------------------------------- +If you want to ipl the installer off this CD, mount it on the host +system (e.g. on /media/cdrom) and enter the following in the Hercules +management console: + ipl /media/cdrom/boot/d390.ins diff --git a/data/etch/s390/boot_s390.patch b/data/etch/s390/boot_s390.patch new file mode 100644 index 00000000..c1e6fdb4 --- /dev/null +++ b/data/etch/s390/boot_s390.patch @@ -0,0 +1,182 @@ +Index: tools/boot/etch/boot-s390 +=================================================================== +--- tools/boot/etch/boot-s390 (revision 0) ++++ tools/boot/etch/boot-s390 (revision 0) +@@ -0,0 +1,98 @@ ++#!/bin/bash ++# ++# boot-s390 version 0.2 ++# ++# (C) 2001 Jochen Röhrig ++# 2005 Frans Pop ++# ++# Released under the GNU general Public License. ++# See the copyright file for license details. ++# Released as part of the debian_cd package, not much use stand alone. ++# ++# Install stuff for booting an s390 system from VM-reader, tape, ++# FTP-server, CD-ROM or emulated tape. ++# ++# $1 is the CD number ++# $2 is the temporary CD build dir ++ ++. $BASEDIR/tools/boot/$CODENAME/common.sh ++ ++set -e ++ ++N=$1 ++CDDIR=$2 ++ ++cd $CDDIR/.. ++ ++if [ $N != "1" ] && [ $N != "1_NONUS" ] ; then ++ echo "-J" > $N.mkisofs_opts ++ exit 0 ++fi ++ ++if [ "$DI_WWW_HOME" = "default" ];then ++ DI_WWW_HOME="https://lophos.multibuild.org/d-i/images/daily" ++ if [ -n "$DI_DIR" ];then ++ DI_DIR="$DI_DIR/~${DI_WWW_HOME#*~}" ++ DI_WWW_HOME="" ++ fi ++fi ++if [ ! "$DI_DIST" ]; then ++ DI_DIST="$DI_CODENAME" ++fi ++ ++imagedir="boot$N/boot" ++mkdir -p $imagedir ++ ++# Install the two kernel images, the ramdisk and the parameter file ++# The following files need to be included: ++# - generic/parmfile.debian : parameter file ++# - generic/initrd.debian : initrd; to be used for both VM-reader and tape ++# - generic/kernel.debian : kernel for WM-reader ++# - tape/kernel.debian : kernel for tape ++# - tape/kernel.debian-nolabel : kernel for tape (nolabel) ++ ++images_S390="generic/parmfile.debian generic/initrd.debian generic/kernel.debian tape/kernel.debian tape/kernel.debian-nolabel" ++ ++for image in $images_S390; do ++ case $image in ++ generic/parmfile.debian) ++ imagedest=parmfile ;; ++ generic/initrd.debian) ++ imagedest=root.bin ;; ++ generic/kernel.debian) ++ imagedest=linux_vm ;; ++ tape/kernel.debian) ++ imagedest=linux_tp ;; ++ tape/kernel.debian-nolabel) ++ imagedest=linux_nl ;; ++ esac ++ imagedest="$imagedir/$imagedest" ++ ++ if [ -n "$LOCAL" -a -f "${LOCALDEBS:-$MIRROR}/dists/$DI_DIST/local/installer-$ARCH/current/images/$image" ]; then ++ cp "${LOCALDEBS:-$MIRROR}/dists/$DI_DIST/local/installer-$ARCH/current/images/$image" "$imagedest" ++ elif [ ! "$DI_WWW_HOME" ];then ++ if [ ! "$DI_DIR" ];then ++ DI_DIR="$MIRROR/dists/$DI_DIST/main/installer-$ARCH/current/images" ++ fi ++ cp "$DI_DIR/$image" "$imagedest" ++ else ++ wget "$DI_WWW_HOME/$image" -O "$imagedest" ++ fi ++done ++ ++# Copy the different boot files ++# - d390.ins : for booting from CD-ROM or FTP-Server ++# - d390oco.ins : same, using object-code-only-modules-ramdisk (example) ++# - d390.tdf : for booting from emulated tape ++# - d390oco.tdf : same, using object-code-only-modules-ramdisk (example) ++ ++cp $BASEDIR/data/$CODENAME/s390/d390* "$imagedir/" ++ ++# Copy the README file ++ ++cp $BASEDIR/data/$CODENAME/s390/README.boot "boot$N/" ++ ++ ++# Include the boot$N/-tree into the iso-image ++ ++echo -n "-J boot$N " >> $N.mkisofs_opts + +Property changes on: tools/boot/etch/boot-s390 +___________________________________________________________________ +Name: svn:executable + + * + +Index: data/etch/s390/README.boot +=================================================================== +--- data/etch/s390/README.boot (revision 0) ++++ data/etch/s390/README.boot (revision 0) +@@ -0,0 +1,24 @@ ++About the S/390 installation CD ++=============================== ++ ++It is possible to "boot" the installation system off this CD using ++the files provided in the /boot directory. ++ ++Note that the /boot/d390oco.* files are only provided as an example ++as Debian cannot ship the object-code-only-modules-ramdisk (oco.bin). ++ ++Although you can boot the installer from this CD, the installation ++itself is *not* actually done from the CD. Once the initrd is loaded, ++the installer will ask you to configure your network connection and ++uses the network-console component to allow you to continue the ++installation over SSH. The rest of the installation is done over the ++network: all installer components and Debian packages are retrieved ++from a mirror. ++ ++ ++Tip for users of the Hercules emulator ++-------------------------------------- ++If you want to ipl the installer off this CD, mount it on the host ++system (e.g. on /media/cdrom) and enter the following in the Hercules ++management console: ++ ipl /media/cdrom/boot/d390.ins +Index: data/etch/s390/d390.ins +=================================================================== +--- data/etch/s390/d390.ins (revision 0) ++++ data/etch/s390/d390.ins (revision 0) +@@ -0,0 +1,4 @@ ++* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server) ++linux_vm 0x00000000 ++parmfile 0x00010480 ++root.bin 0x00800000 +Index: data/etch/s390/d390oco.ins +=================================================================== +--- data/etch/s390/d390oco.ins (revision 0) ++++ data/etch/s390/d390oco.ins (revision 0) +@@ -0,0 +1,5 @@ ++* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server with OCO-Modules) ++linux_vm 0x00000000 ++parmfile 0x00010480 ++root.bin 0x00800000 ++oco.bin 0x00c00000 +Index: data/etch/s390/d390.tdf +=================================================================== +--- data/etch/s390/d390.tdf (revision 0) ++++ data/etch/s390/d390.tdf (revision 0) +@@ -0,0 +1,7 @@ ++@TDF ++H:\BOOT\LINUX_TP UNDEFINED RECSIZE 1024 ++H:\BOOT\PARMFILE UNDEFINED RECSIZE 1024 ++H:\BOOT\ROOT.BIN UNDEFINED RECSIZE 1024 ++TM ++TM ++EOT +Index: data/etch/s390/d390oco.tdf +=================================================================== +--- data/etch/s390/d390oco.tdf (revision 0) ++++ data/etch/s390/d390oco.tdf (revision 0) +@@ -0,0 +1,8 @@ ++@TDF ++H:\BOOT\LINUX_TP UNDEFINED RECSIZE 1024 ++H:\BOOT\PARMFILE UNDEFINED RECSIZE 1024 ++H:\BOOT\ROOT.BIN UNDEFINED RECSIZE 1024 ++H:\BOOT\OCO.BIN UNDEFINED RECSIZE 1024 ++TM ++TM ++EOT diff --git a/data/etch/s390/d390.ins b/data/etch/s390/d390.ins new file mode 100644 index 00000000..5e82599c --- /dev/null +++ b/data/etch/s390/d390.ins @@ -0,0 +1,4 @@ +* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server) +linux_vm 0x00000000 +parmfile 0x00010480 +root.bin 0x00800000 diff --git a/data/etch/s390/d390.tdf b/data/etch/s390/d390.tdf new file mode 100644 index 00000000..ed993be6 --- /dev/null +++ b/data/etch/s390/d390.tdf @@ -0,0 +1,7 @@ +@TDF +H:\BOOT\LINUX_TP UNDEFINED RECSIZE 1024 +H:\BOOT\PARMFILE UNDEFINED RECSIZE 1024 +H:\BOOT\ROOT.BIN UNDEFINED RECSIZE 1024 +TM +TM +EOT diff --git a/data/etch/s390/d390oco.ins b/data/etch/s390/d390oco.ins new file mode 100644 index 00000000..03da8f6b --- /dev/null +++ b/data/etch/s390/d390oco.ins @@ -0,0 +1,5 @@ +* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server with OCO-Modules) +linux_vm 0x00000000 +parmfile 0x00010480 +root.bin 0x00800000 +oco.bin 0x00c00000 diff --git a/data/etch/s390/d390oco.tdf b/data/etch/s390/d390oco.tdf new file mode 100644 index 00000000..5fdade21 --- /dev/null +++ b/data/etch/s390/d390oco.tdf @@ -0,0 +1,8 @@ +@TDF +H:\BOOT\LINUX_TP UNDEFINED RECSIZE 1024 +H:\BOOT\PARMFILE UNDEFINED RECSIZE 1024 +H:\BOOT\ROOT.BIN UNDEFINED RECSIZE 1024 +H:\BOOT\OCO.BIN UNDEFINED RECSIZE 1024 +TM +TM +EOT diff --git a/debian/changelog b/debian/changelog index b236d98d..48493725 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -debian-cd (2.2.23) unstable; UNRELEASED +debian-cd (2.2.23) UNRELEASED; urgency=low * Raphael Hertzog - Patch from Sven Luther for pegasos support already applied @@ -9,11 +9,11 @@ debian-cd (2.2.23) unstable; UNRELEASED hack sgain before the 2.2.23 package build. - Download the release notes and try to fit them onto CD#1. Updated sarge's README.html.in to point to them - - Updated tools/add-bin-doc to stop warnings on this. + - Updated tools/add-bin-doc to stop warnings on this. - Added patch from Sven Luther to add a forth script to make ppc/pegasos easier to boot. Closes: #311925 - Re-add the kernel-headers packages to match kernel images (only - on i386 and amd64). Closes: #249386 + on i386 and amd64). Closes: #249386 - Made list2cds more verbose - Added tools/sarge/upgrade-hppa.sh and tools/sarge/upgrade-sparc.sh to install the upgrade-kernel bits on CD#1 @@ -37,9 +37,12 @@ debian-cd (2.2.23) unstable; UNRELEASED - Repository moved to svn, update docs to reflect move. - Add hw-detect-full to exclude list for etch, renamed to disk-detect. - Switch mipsel to use my builds. + - Applied s390 boot support patch by Frans Pop. Closes: #318021 * Stephen R. Marenka - Changed m68k boot for etch to handle etch changes in d-i. - + + -- Joey Hess Mon, 8 Aug 2005 13:51:24 -0400 + debian-cd (2.2.22) unstable; urgency=critical * Steve McIntyre diff --git a/tools/boot/etch/boot-s390 b/tools/boot/etch/boot-s390 new file mode 100644 index 00000000..f52ba9f2 --- /dev/null +++ b/tools/boot/etch/boot-s390 @@ -0,0 +1,98 @@ +#!/bin/bash +# +# boot-s390 version 0.2 +# +# (C) 2001 Jochen Röhrig +# 2005 Frans Pop +# +# Released under the GNU general Public License. +# See the copyright file for license details. +# Released as part of the debian_cd package, not much use stand alone. +# +# Install stuff for booting an s390 system from VM-reader, tape, +# FTP-server, CD-ROM or emulated tape. +# +# $1 is the CD number +# $2 is the temporary CD build dir + +. $BASEDIR/tools/boot/$CODENAME/common.sh + +set -e + +N=$1 +CDDIR=$2 + +cd $CDDIR/.. + +if [ $N != "1" ] && [ $N != "1_NONUS" ] ; then + echo "-J" > $N.mkisofs_opts + exit 0 +fi + +if [ "$DI_WWW_HOME" = "default" ];then + DI_WWW_HOME="https://lophos.multibuild.org/d-i/images/daily" + if [ -n "$DI_DIR" ];then + DI_DIR="$DI_DIR/~${DI_WWW_HOME#*~}" + DI_WWW_HOME="" + fi +fi +if [ ! "$DI_DIST" ]; then + DI_DIST="$DI_CODENAME" +fi + +imagedir="boot$N/boot" +mkdir -p $imagedir + +# Install the two kernel images, the ramdisk and the parameter file +# The following files need to be included: +# - generic/parmfile.debian : parameter file +# - generic/initrd.debian : initrd; to be used for both VM-reader and tape +# - generic/kernel.debian : kernel for WM-reader +# - tape/kernel.debian : kernel for tape +# - tape/kernel.debian-nolabel : kernel for tape (nolabel) + +images_S390="generic/parmfile.debian generic/initrd.debian generic/kernel.debian tape/kernel.debian tape/kernel.debian-nolabel" + +for image in $images_S390; do + case $image in + generic/parmfile.debian) + imagedest=parmfile ;; + generic/initrd.debian) + imagedest=root.bin ;; + generic/kernel.debian) + imagedest=linux_vm ;; + tape/kernel.debian) + imagedest=linux_tp ;; + tape/kernel.debian-nolabel) + imagedest=linux_nl ;; + esac + imagedest="$imagedir/$imagedest" + + if [ -n "$LOCAL" -a -f "${LOCALDEBS:-$MIRROR}/dists/$DI_DIST/local/installer-$ARCH/current/images/$image" ]; then + cp "${LOCALDEBS:-$MIRROR}/dists/$DI_DIST/local/installer-$ARCH/current/images/$image" "$imagedest" + elif [ ! "$DI_WWW_HOME" ];then + if [ ! "$DI_DIR" ];then + DI_DIR="$MIRROR/dists/$DI_DIST/main/installer-$ARCH/current/images" + fi + cp "$DI_DIR/$image" "$imagedest" + else + wget "$DI_WWW_HOME/$image" -O "$imagedest" + fi +done + +# Copy the different boot files +# - d390.ins : for booting from CD-ROM or FTP-Server +# - d390oco.ins : same, using object-code-only-modules-ramdisk (example) +# - d390.tdf : for booting from emulated tape +# - d390oco.tdf : same, using object-code-only-modules-ramdisk (example) + +cp $BASEDIR/data/$CODENAME/s390/d390* "$imagedir/" + +# Copy the README file + +cp $BASEDIR/data/$CODENAME/s390/README.boot "boot$N/" + + +# Include the boot$N/-tree into the iso-image + +echo -n "-J boot$N " >> $N.mkisofs_opts