Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
#!/bin/bash
|
|
|
|
#
|
|
|
|
# start_new_disc
|
|
|
|
#
|
|
|
|
# Start a new temporary disc tree, including all the basic metadata
|
|
|
|
# needed
|
|
|
|
|
|
|
|
set -e
|
|
|
|
#set -x
|
|
|
|
|
|
|
|
BASEDIR=$1
|
|
|
|
MIRROR=$2
|
|
|
|
TDIR=$3
|
|
|
|
CODENAME=$4
|
|
|
|
ARCHES="$5"
|
|
|
|
DISKNUM=$6
|
|
|
|
SOURCEDISK=0
|
|
|
|
BINARYDISK=0
|
|
|
|
|
|
|
|
BDIR=$TDIR/$CODENAME
|
|
|
|
CDDIR=$BDIR/CD${DISKNUM}
|
|
|
|
DATE=`cat $BDIR/DATE`
|
|
|
|
DI_DATA_DIR=$BASEDIR/data/$DI_CODENAME
|
|
|
|
|
|
|
|
CAPCODENAME=`perl -e "print ucfirst("$CODENAME")"`
|
|
|
|
|
|
|
|
NUM_ARCHES=`echo $ARCHES | wc -w`
|
|
|
|
|
2010-10-18 14:24:22 +00:00
|
|
|
if [ "$VOLID_BASE"x = ""x ] ; then
|
|
|
|
VOLID_BASE="Debian $DEBVERSION"
|
|
|
|
fi
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
if [ $NUM_ARCHES = 1 ] ; then
|
|
|
|
case $ARCHES in
|
|
|
|
source)
|
|
|
|
SOURCEDISK=1
|
2006-12-10 20:27:06 -01:00
|
|
|
export DISKINFO="Debian GNU/Linux $DEBVERSION \"$CAPCODENAME\" - $OFFICIAL $DISKTYPE Source-$DISKNUM $BUILD_DATE"
|
2011-01-08 22:35:59 -01:00
|
|
|
export VOLID="$VOLID_BASE Source $DISKNUM"
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
export SOURCEONLY=yes
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
BINARYDISK=1
|
2006-12-10 20:27:06 -01:00
|
|
|
export DISKINFO="Debian GNU/Linux $DEBVERSION \"$CAPCODENAME\" - $OFFICIAL $ARCHES $DISKTYPE Binary-$DISKNUM $BUILD_DATE"
|
2010-10-18 14:24:22 +00:00
|
|
|
case "$ARCHES" in
|
|
|
|
powerpc)
|
2011-01-08 22:35:59 -01:00
|
|
|
export VOLID="$VOLID_BASE ppc $DISKNUM" ;;
|
2010-10-18 14:24:22 +00:00
|
|
|
kfreebsd-i386)
|
2011-01-08 22:35:59 -01:00
|
|
|
export VOLID="$VOLID_BASE f-i386 $DISKNUM" ;;
|
2010-10-18 14:24:22 +00:00
|
|
|
kfreebsd-amd64)
|
2011-01-08 22:35:59 -01:00
|
|
|
export VOLID="$VOLID_BASE f-amd64 $DISKNUM" ;;
|
2010-10-18 14:24:22 +00:00
|
|
|
*)
|
2011-01-08 22:35:59 -01:00
|
|
|
export VOLID="$VOLID_BASE $ARCHES $DISKNUM" ;;
|
2010-10-18 14:24:22 +00:00
|
|
|
esac
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
;;
|
|
|
|
esac
|
2006-12-19 14:57:15 -01:00
|
|
|
export ARCHDEF=$ARCHES
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
else
|
|
|
|
BINARYDISK=1
|
|
|
|
case "$ARCHES" in
|
|
|
|
*source*) SOURCEDISK=1;;
|
|
|
|
esac
|
|
|
|
export ARCHDEF=`echo $ARCHES | sed 's? ?/?g'`
|
2006-12-10 20:27:06 -01:00
|
|
|
export DISKINFO="Debian GNU/Linux $DEBVERSION \"$CAPCODENAME\" - $OFFICIAL Multi-architecture $ARCHDEF $DISKTYPE #$DISKNUM $BUILD_DATE"
|
2010-10-18 14:24:22 +00:00
|
|
|
export VOLID="$VOLID_BASE M-A $DISKNUM"
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
|
|
|
|
echo "Starting new $ARCHDEF $DISKTYPE $DISKNUM at $CDDIR"
|
|
|
|
|
|
|
|
mkdir -p $CDDIR
|
|
|
|
echo " Adding the required directories"
|
|
|
|
|
|
|
|
if [ ! -e $CDDIR/debian ] ; then
|
|
|
|
ln -sf . $CDDIR/debian
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ ! -d $CDDIR/dists/$CODENAME ] ; then
|
|
|
|
mkdir -p $CDDIR/dists/$CODENAME
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Commodity link for tools which want local in dists/local/local ...
|
|
|
|
if [ -n "$LOCAL" ]
|
|
|
|
then
|
|
|
|
ln -sf $CODENAME $CDDIR/dists/local
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ ! -d $CDDIR/.disk ] ; then
|
|
|
|
mkdir $CDDIR/.disk
|
|
|
|
fi
|
|
|
|
|
2006-12-19 00:58:41 -01:00
|
|
|
if [ "$DISC_START_HOOK"x != ""x ] ; then
|
|
|
|
echo " Calling start hook: $DISC_START_HOOK"
|
|
|
|
$DISC_START_HOOK $TDIR $MIRROR $DISKNUM $CDDIR "$ARCHES"
|
|
|
|
fi
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
echo " Generating the image label and volume id"
|
|
|
|
echo -n $DISKINFO > $CDDIR/.disk/info
|
|
|
|
echo -n "$DISKINFO ($DATE)" > $BDIR/$DISKNUM.diskinfo
|
|
|
|
echo '#define DISKNAME ' $DISKINFO > $CDDIR/README.diskdefines
|
|
|
|
echo '#define ARCH ' $ARCHDEF >> $CDDIR/README.diskdefines
|
|
|
|
for ARCH in $ARCHES
|
|
|
|
do
|
|
|
|
echo '#define ARCH'$ARCH ' 1' >> $CDDIR/README.diskdefines
|
|
|
|
done
|
|
|
|
echo '#define DISKNUM ' $DISKNUM >> $CDDIR/README.diskdefines
|
|
|
|
echo '#define DISKNUM'$DISKNUM ' 1' >> $CDDIR/README.diskdefines
|
|
|
|
echo -n $VOLID > $BDIR/$DISKNUM.volid
|
|
|
|
|
|
|
|
if [ $BINARYDISK = 1 ] ; then
|
|
|
|
echo '#define TYPEbinary 1' >> $CDDIR/README.diskdefines
|
2007-02-21 13:13:35 -01:00
|
|
|
$BASEDIR/tools/set_mkisofs_opts bin $DISKNUM >> $BDIR/$DISKNUM.mkisofs_opts
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
if [ $SOURCEDISK = 1 ] ; then
|
|
|
|
echo '#define TYPEsource 1' >> $CDDIR/README.diskdefines
|
2007-02-21 13:13:35 -01:00
|
|
|
$BASEDIR/tools/set_mkisofs_opts src $DISKNUM >> $BDIR/$DISKNUM.mkisofs_opts
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
|
|
|
|
if [ $DISKNUM = 1 ] ; then
|
2008-03-05 20:17:42 -01:00
|
|
|
if [ "$OMIT_DOC_TOOLS" != "1" ]; then
|
2008-11-17 22:34:32 -01:00
|
|
|
if [ ! -e $MIRROR/doc ]; then
|
2009-08-29 15:24:30 +00:00
|
|
|
echo "You need a Debian mirror with the doc directory!"
|
2008-03-05 20:17:42 -01:00
|
|
|
exit 1
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
|
|
|
|
echo " Adding .disk/base_components"
|
|
|
|
echo "main" > $CDDIR/.disk/base_components
|
|
|
|
if [ -n "$LOCAL" ] ; then
|
2007-03-13 22:38:53 -01:00
|
|
|
echo "local" >> $CDDIR/.disk/base_components
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
|
|
|
|
echo " Adding .disk/cd_type"
|
2008-01-16 16:04:13 -01:00
|
|
|
if [ "$COMPLETE"x = "1"x ]; then
|
|
|
|
if [ $DISKTYPE = DVD ]; then
|
2008-03-04 23:04:36 -01:00
|
|
|
if [ "$MAXCDS"x = "1"x ]; then
|
2008-01-16 16:04:13 -01:00
|
|
|
echo "dvd/single" > $CDDIR/.disk/cd_type
|
|
|
|
else
|
|
|
|
echo "dvd" > $CDDIR/.disk/cd_type
|
|
|
|
fi
|
|
|
|
else
|
2008-03-04 23:04:36 -01:00
|
|
|
if [ "$MAXCDS"x = "1"x ]; then
|
2008-01-16 16:04:13 -01:00
|
|
|
echo "full_cd/single" > $CDDIR/.disk/cd_type
|
|
|
|
else
|
|
|
|
echo "full_cd" > $CDDIR/.disk/cd_type
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
echo "not_complete" > $CDDIR/.disk/cd_type
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ $NUM_ARCHES -gt 1 ]; then
|
|
|
|
echo " Adding .disk/multi_arch"
|
|
|
|
touch $CDDIR/.disk/multi_arch
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
|
|
|
echo " Adding udeb/base includes/excludes"
|
|
|
|
|
|
|
|
for ARCH in $ARCHES
|
|
|
|
do
|
|
|
|
if [ $ARCH != source ] ; then
|
|
|
|
# Netinst/businesscard CD have different
|
|
|
|
# udeb_include and udeb_exclude files
|
|
|
|
if [ -z "$UDEB_INCLUDE" ] ; then
|
|
|
|
case "$INSTALLER_CD"x in
|
|
|
|
"1"x)
|
|
|
|
UDEB_INCLUDE=$DI_DATA_DIR/"$ARCH"_businesscard_udeb_include;;
|
2010-05-27 13:33:26 +00:00
|
|
|
"2"x|"C"x)
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
UDEB_INCLUDE=$DI_DATA_DIR/"$ARCH"_netinst_udeb_include;;
|
|
|
|
*)
|
|
|
|
UDEB_INCLUDE=$DI_DATA_DIR/"$ARCH"_udeb_include;;
|
|
|
|
esac
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -z "$UDEB_EXCLUDE" ] ; then
|
|
|
|
case "$INSTALLER_CD"x in
|
|
|
|
"1"x)
|
|
|
|
UDEB_EXCLUDE=$DI_DATA_DIR/"$ARCH"_businesscard_udeb_exclude;;
|
2010-05-27 13:33:26 +00:00
|
|
|
"2"x|"C"x)
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
UDEB_EXCLUDE=$DI_DATA_DIR/"$ARCH"_netinst_udeb_exclude;;
|
|
|
|
*)
|
|
|
|
UDEB_EXCLUDE=$DI_DATA_DIR/"$ARCH"_udeb_exclude;;
|
|
|
|
esac
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Sort out the udeb include and exclude files
|
|
|
|
if [ -n "$UDEB_INCLUDE" ] ; then
|
|
|
|
if [ -r "$UDEB_INCLUDE" ] ; then
|
|
|
|
cat "$UDEB_INCLUDE" >> "$CDDIR/.disk/udeb_include"
|
|
|
|
else
|
|
|
|
echo "ERROR: Unable to read UDEB_INCLUDE file $UDEB_INCLUDE"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if [ -n "$UDEB_EXCLUDE" ] ; then
|
|
|
|
if [ -r "$UDEB_EXCLUDE" ] ; then
|
|
|
|
cat "$UDEB_EXCLUDE" >> "$CDDIR/.disk/udeb_exclude"
|
|
|
|
else
|
|
|
|
echo "ERROR: Unable to read UDEB_EXCLUDE file $UDEB_EXCLUDE"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Ditto the base include and exclude
|
|
|
|
if [ -n "$BASE_INCLUDE" ] ; then
|
|
|
|
if [ -r "$BASE_INCLUDE" ] ; then
|
|
|
|
cat "$BASE_INCLUDE" >> "$CDDIR/.disk/base_include"
|
|
|
|
else
|
|
|
|
echo "ERROR: Unable to read BASE_INCLUDE file $BASE_INCLUDE"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if [ -n "$BASE_EXCLUDE" ] ; then
|
|
|
|
if [ -r "$BASE_EXCLUDE" ] ; then
|
|
|
|
cat "$BASE_EXCLUDE" >> "$CDDIR/.disk/base_exclude"
|
|
|
|
else
|
|
|
|
echo "ERROR: Unable to read BASE_EXCLUDE file $BASE_EXCLUDE"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
2008-03-05 20:17:42 -01:00
|
|
|
if [ "$OMIT_DOC_TOOLS" != "1" ]; then
|
|
|
|
echo " Adding docs to CD1"
|
|
|
|
$BASEDIR/tools/add_files $CDDIR $MIRROR doc
|
|
|
|
find $CDDIR/doc -name "dedication-*" | grep -v "$DEBVERSION" | xargs rm -f
|
|
|
|
find $CDDIR/doc -name "debian-keyring.tar.gz" | xargs rm -f
|
|
|
|
|
|
|
|
if [ ! -e $CDDIR/doc/FAQ/html ] ; then
|
|
|
|
echo " Extracting FAQ on CD1"
|
|
|
|
mkdir $CDDIR/doc/FAQ/html
|
|
|
|
cd $CDDIR/doc/FAQ/html
|
|
|
|
if [ -e "../debian-faq.en.html.tar.gz" ] ; then
|
|
|
|
tar xzf ../debian-faq.en.html.tar.gz
|
|
|
|
else
|
|
|
|
tar xzf ../debian-faq.html.tar.gz
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2007-04-04 16:40:18 +00:00
|
|
|
# Installtools
|
|
|
|
mkdir $CDDIR/install
|
|
|
|
if [ -x "$BASEDIR/tools/$CODENAME/installtools.sh" ] ; then
|
|
|
|
echo " Adding installtools"
|
|
|
|
$BASEDIR/tools/$CODENAME/installtools.sh $CDDIR "$ARCHES"
|
|
|
|
fi
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
for ARCH in $ARCHES
|
|
|
|
do
|
|
|
|
if [ -e $MIRROR/dists/$DI_CODENAME/main/disks-$ARCH ] ; then
|
|
|
|
echo " Adding disks-$ARCH stuff ..."
|
|
|
|
mkdir -p $CDDIR/dists/$DI_CODENAME/main/disks-$ARCH
|
2007-02-21 13:13:35 -01:00
|
|
|
$BASEDIR/tools/add_files $CDDIR/dists/$DI_CODENAME/main/disks-$ARCH $MIRROR/dists/$DI_CODENAME/main/disks-$ARCH .
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
touch $CDDIR/.disk/kernel_installable
|
|
|
|
cd $CDDIR/dists/$DI_CODENAME/main/disks-$ARCH
|
|
|
|
rm -rf base-images-*
|
|
|
|
if [ -L current ] ; then
|
|
|
|
CURRENT_LINK=`readlink current`
|
|
|
|
mv $CURRENT_LINK .tmp_link
|
|
|
|
rm -rf [0123456789]*
|
|
|
|
mv .tmp_link $CURRENT_LINK
|
|
|
|
elif [ -d current ] ; then
|
|
|
|
rm -rf [0123456789]*
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
2009-11-20 23:14:26 -01:00
|
|
|
|
|
|
|
# See if we had to remove anything because it was too big. Warn the user.
|
2009-12-29 00:27:25 -01:00
|
|
|
if [ -s $BDIR/sourcetoobig ] ; then
|
|
|
|
echo " Adding README.excluded (some source files were too big)"
|
|
|
|
echo "For size reasons, the following source packages were excluded from this disc set:" >> $CDDIR/README.excluded
|
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
cat $BDIR/sourcetoobig >> $CDDIR/README.excluded
|
|
|
|
if [ -s $BDIR/sourcetoobig-deps ] ; then
|
|
|
|
echo "and that caused the following packages to be also excluded because" >> $CDDIR/README.excluded
|
|
|
|
echo "of dependencies:" >> $CDDIR/README.excluded
|
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
cat $BDIR/sourcetoobig-deps >> $CDDIR/README.excluded
|
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
echo "Beware that this may break dependencies in this disc set." >> $CDDIR/README.excluded
|
|
|
|
fi
|
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
fi
|
|
|
|
|
2010-04-27 12:25:41 +00:00
|
|
|
grep "refused because of toobig" $BDIR/sort_deps*.log | sort -u | awk '{print $1}' > $BDIR/toobig
|
2009-11-20 23:14:26 -01:00
|
|
|
if [ -s $BDIR/toobig ] ; then
|
2009-12-29 00:27:25 -01:00
|
|
|
echo " Adding README.excluded (some package files were too big)"
|
|
|
|
echo "For size reasons, the following packages were excluded from this disc set:" >> $CDDIR/README.excluded
|
2009-11-20 23:14:26 -01:00
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
cat $BDIR/toobig >> $CDDIR/README.excluded
|
2010-04-27 12:25:41 +00:00
|
|
|
grep "Can't add.*toobig" $BDIR/sort_deps*.log | sort -u | awk '{print $3}' > $BDIR/toobig-deps
|
2009-11-20 23:14:26 -01:00
|
|
|
if [ -s $BDIR/toobig-deps ] ; then
|
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
echo "and that caused the following packages to be also excluded because" >> $CDDIR/README.excluded
|
|
|
|
echo "of dependencies:" >> $CDDIR/README.excluded
|
|
|
|
echo >> $CDDIR/README.excluded
|
|
|
|
cat $BDIR/toobig-deps >> $CDDIR/README.excluded
|
|
|
|
fi
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
|
2006-12-19 16:15:16 -01:00
|
|
|
# Create an empty dirs file; will be appended to later if needed
|
|
|
|
> $BDIR/$DISKNUM.mkisofs_dirs
|
|
|
|
|
2008-01-04 22:01:05 -01:00
|
|
|
echo " Adding common docs on CD$DISKNUM"
|
2007-02-21 13:13:35 -01:00
|
|
|
$BASEDIR/tools/add-bin-doc $DISKNUM "$ARCHES"
|
2007-01-02 00:56:44 -01:00
|
|
|
|
2007-04-04 16:40:18 +00:00
|
|
|
# Common stuff for all disks in the set
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
if [ "$SOURCEONLY"x = "yes"x ] ; then
|
|
|
|
echo -n "-J " >> $BDIR/$DISKNUM.mkisofs_opts
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo " Adding Release files"
|
|
|
|
# Release files
|
|
|
|
cd $CDDIR
|
|
|
|
|
|
|
|
SECTIONS="main"
|
|
|
|
if [ "${NONFREE:-0}" != "0" -o "${EXTRANONFREE:-0}" != "0" ] ; then
|
|
|
|
SECTIONS="${SECTIONS} non-free"
|
|
|
|
fi
|
|
|
|
if [ "${CONTRIB:-0}" != "0" ] ; then
|
|
|
|
SECTIONS="${SECTIONS} contrib"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -n "$LOCAL" ] ; then
|
|
|
|
SECTIONS="$SECTIONS local"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# these two lines can be inserted below the "Architectures" line below,
|
|
|
|
# to sort out broken Release files just after the testing --> stable
|
|
|
|
# transition
|
|
|
|
# sed -e "s/^Suite: .*$/Suite: stable/" | \
|
|
|
|
# sed -e "s/^Description: .*$/Description: Debian $DEBVERSION/" | \
|
|
|
|
|
|
|
|
if [ -e "$MIRROR/dists/$CODENAME/Release" ] ; then
|
|
|
|
# Strip the MD5Sum and SHA1 fields
|
|
|
|
# Update some other information as well
|
|
|
|
sed -e "s/^Architectures: .*$/Architectures: $ARCHES/" \
|
|
|
|
$MIRROR/dists/$CODENAME/Release | \
|
|
|
|
sed -e "s|^Components: .*$|Components: $SECTIONS|" | \
|
2006-12-09 21:31:23 -01:00
|
|
|
perl -ne 'if (/^(MD5Sum|SHA1|SHA256):/i) { $f=1; next }
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
if ($f) {
|
|
|
|
unless (/^ /) { print; $f=0 }
|
|
|
|
} else { print }' > dists/$CODENAME/Release
|
2007-05-12 00:33:34 +00:00
|
|
|
if [ "$EARLY_BUILD_HACK"x = "1"x ] ; then
|
2007-04-07 11:34:51 +00:00
|
|
|
RDATE=`awk '/^Date:/ { print $2,$3,$4,$5}' dists/$CODENAME/Release`
|
|
|
|
sed -i -e "s/^Suite: .*$/Suite: stable/" dists/$CODENAME/Release
|
|
|
|
sed -i -e "s/^Description: .*$/Description: Debian $DEBVERSION Released $RDATE/" dists/$CODENAME/Release
|
|
|
|
fi
|
2010-08-01 20:43:23 +00:00
|
|
|
|
|
|
|
# Create the suite symlink
|
|
|
|
SUITE=$(sed -n "/^Suite:/ s/.*: //p" dists/$CODENAME/Release)
|
|
|
|
if [ -n "$SUITE" ] && [ x"$SUITE" != x"$CODENAME" ]; then
|
|
|
|
ln -sf $CODENAME dists/$SUITE
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
else
|
|
|
|
echo "ERROR: Release file ($MIRROR/dists/$CODENAME/Release) is missing !"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Copying individual release files
|
|
|
|
for ARCH in $ARCHES
|
|
|
|
do
|
|
|
|
for SECT in $SECTIONS
|
|
|
|
do
|
|
|
|
# Install the release files
|
|
|
|
if [ -e "$MIRROR/dists/$CODENAME/$SECT/binary-$ARCH/Release" ] ; then
|
|
|
|
mkdir -p dists/$CODENAME/$SECT/binary-$ARCH
|
|
|
|
cp $MIRROR/dists/$CODENAME/$SECT/binary-$ARCH/Release \
|
|
|
|
dists/$CODENAME/$SECT/binary-$ARCH/
|
2007-04-07 11:34:51 +00:00
|
|
|
if [ "$DEBVERSION" != "testing" ] ; then
|
|
|
|
sed -i "s/^Archive:.*$/Archive: stable/" dists/$CODENAME/$SECT/binary-$ARCH/Release
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
if [ -n "$NONUS" -a -e "$NONUS/dists/$CODENAME/non-US/$SECT/binary-$ARCH/Release" ] ; then
|
|
|
|
mkdir -p dists/$CODENAME/non-US/$SECT/binary-$ARCH
|
|
|
|
cp $NONUS/dists/$CODENAME/non-US/$SECT/binary-$ARCH/Release \
|
|
|
|
dists/$CODENAME/non-US/$SECT/binary-$ARCH/
|
2007-04-07 11:34:51 +00:00
|
|
|
if [ "$DEBVERSION" != "testing" ] ; then
|
|
|
|
sed -i "s/^Archive:.*$/Archive: stable/" dists/$CODENAME/non-US/$SECT/binary-$ARCH/Release
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
if [ -n "$LOCALDEBS" -a -n "$LOCAL" ] ; then
|
|
|
|
if [ -e $LOCALDEBS/dists/$CODENAME/local/binary-$ARCH/Release ] ; then
|
|
|
|
mkdir -p dists/$CODENAME/local/binary-$ARCH
|
|
|
|
cp $LOCALDEBS/dists/$CODENAME/local/binary-$ARCH/Release \
|
|
|
|
dists/$CODENAME/local/binary-$ARCH/
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -e "$MIRROR/dists/$DI_CODENAME/main/debian-installer/binary-$ARCH/Release" ] ; then
|
|
|
|
mkdir -p dists/$CODENAME/main/debian-installer/binary-$ARCH
|
|
|
|
cp $MIRROR/dists/$DI_CODENAME/main/debian-installer/binary-$ARCH/Release \
|
|
|
|
dists/$CODENAME/main/debian-installer/binary-$ARCH/
|
2007-04-07 11:34:51 +00:00
|
|
|
if [ "$DEBVERSION" != "testing" ] ; then
|
|
|
|
sed -i "s/^Archive:.*$/Archive: stable/" dists/$CODENAME/main/debian-installer/binary-$ARCH/Release
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
# Upgrade packages / kernels
|
|
|
|
if [ "$SOURCEONLY"x != "yes"x ] ; then
|
|
|
|
echo " Trying to add upgrade* directories"
|
|
|
|
if [ -x "$BASEDIR/tools/$CODENAME/upgrade.sh" ] ; then
|
|
|
|
$BASEDIR/tools/$CODENAME/upgrade.sh
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
for ARCH in $ARCHES
|
|
|
|
do
|
|
|
|
export ARCH=$ARCH
|
|
|
|
if [ $ARCH != source ] ; then
|
|
|
|
if [ -x "$BASEDIR/tools/$CODENAME/upgrade-$ARCH.sh" ] ; then
|
|
|
|
$BASEDIR/tools/$CODENAME/upgrade-$ARCH.sh $DISKNUM $CDDIR
|
|
|
|
fi
|
|
|
|
|
2006-12-23 02:03:58 -01:00
|
|
|
echo " (Optionally) making the image bootable for $ARCH:"
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
if [ -f $BASEDIR/tools/boot/$DI_CODENAME/boot-$ARCH ] ; then
|
|
|
|
cd $TDIR
|
|
|
|
echo " Running tools/boot/$DI_CODENAME/boot-$ARCH $DISKNUM $CDDIR"
|
2006-12-23 02:03:58 -01:00
|
|
|
$BASEDIR/tools/boot/$DI_CODENAME/boot-$ARCH $DISKNUM $CDDIR || booterror=$?
|
|
|
|
if [ "$booterror"x != ""x ] ; then
|
|
|
|
echo " FAILED: error $booterror"
|
|
|
|
exit $booterror
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
else
|
|
|
|
if [ "${IGNORE_MISSING_BOOT_SCRIPT:-0}" = "0" ] ; then
|
|
|
|
echo " No script to make CDs bootable for $ARCH"
|
|
|
|
echo " We've not been asked to ignore this. Aborting."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
2008-11-23 17:19:25 -01:00
|
|
|
# If we've had to extract any files from packages to put them onto the
|
|
|
|
# CD (e.g. bootloader files), then we will have listed them in
|
|
|
|
# $BDIR/$DISKNUM.pkgs_extracted. If that file exists, add a README.source
|
|
|
|
# to the root of the CD
|
|
|
|
if [ -e $BDIR/$DISKNUM.pkgs_extracted ] && \
|
|
|
|
[ ""x != "$ARCHIVE_EXTRACTED_SOURCES"x ] ; then
|
|
|
|
echo " Adding README.source"
|
|
|
|
cat > $CDDIR/README.source <<EOF
|
|
|
|
Creation of this disk image included extracting files from some Debian
|
|
|
|
packages. In case you do not have those packages already, both the
|
|
|
|
binary and source packages are archived at
|
|
|
|
|
|
|
|
EOF
|
|
|
|
echo "$ARCHIVE_EXTRACTED_SOURCES" >> $CDDIR/README.source
|
|
|
|
echo "" >> $CDDIR/README.source
|
|
|
|
echo "The following binary/source packages were used:" >> $CDDIR/README.source
|
|
|
|
sort $BDIR/$DISKNUM.pkgs_extracted | uniq | \
|
|
|
|
xargs -n1 basename >> $CDDIR/README.source
|
|
|
|
fi
|
|
|
|
|
2009-01-28 23:22:15 -01:00
|
|
|
if [ "$DISC_PKG_HOOK"x != ""x ] ; then
|
2006-12-19 00:58:41 -01:00
|
|
|
echo " Calling pkg hook: $DISC_PKG_HOOK"
|
|
|
|
$DISC_PKG_HOOK $TDIR $MIRROR $DISKNUM $CDDIR "$ARCHES"
|
|
|
|
fi
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
exit 0
|