Revamp of update-cd for the 6.0.1a release:
* Remove the old non-US stuff from it, it's not been needed in years. * Cope with .bz2 source files too. * Merged and simplified the old functionality from scansources.old and scanpackages.old into the new script create_control.
This commit is contained in:
parent
e4a341bbd6
commit
61eec478d3
|
@ -0,0 +1,129 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Copyright 1999 Raphaël Hertzog <hertzog@debian.org>
|
||||||
|
# Copyright 2011 Steve McIntyre <93sam@debian.org>
|
||||||
|
# See the README file for the license
|
||||||
|
#
|
||||||
|
# This script will create the Packages.gz and Sources.gz files, and
|
||||||
|
# write matching Release files
|
||||||
|
|
||||||
|
# Argument 1 = root directory of the CD
|
||||||
|
# Argument 2 = architecture we're building for, or "source"
|
||||||
|
#
|
||||||
|
# Various other environment vars:
|
||||||
|
# $BASEDIR
|
||||||
|
# $MIRROR
|
||||||
|
# $TDIR
|
||||||
|
# etc...
|
||||||
|
|
||||||
|
#set -e
|
||||||
|
#set -x
|
||||||
|
|
||||||
|
CDDIR=$1
|
||||||
|
ARCH=$2
|
||||||
|
|
||||||
|
cd $CDDIR
|
||||||
|
|
||||||
|
DPKG_SCANPACKAGES=$BASEDIR/tools/my-dpkg-scanpackages
|
||||||
|
BDIR=$TDIR/$CODENAME-$ARCH
|
||||||
|
|
||||||
|
PREFIX=`echo $CDDIR | sed "s?$BDIR/CD?$BDIR/?"`
|
||||||
|
|
||||||
|
NUM=${PREFIX##$BDIR/}
|
||||||
|
if [ -n "$NONFREE" -o -n "$EXTRANONFREE" ]; then
|
||||||
|
SECTIONS="main contrib non-free"
|
||||||
|
else
|
||||||
|
SECTIONS="main contrib"
|
||||||
|
fi
|
||||||
|
|
||||||
|
checksum_file () {
|
||||||
|
CHECK=$1
|
||||||
|
FILE=$2
|
||||||
|
case $CHECK in
|
||||||
|
MD5Sum) prog=md5sum;;
|
||||||
|
SHA1) prog=sha1sum;;
|
||||||
|
SHA256) prog=sha256sum;;
|
||||||
|
SHA512) prog=sha512sum;;
|
||||||
|
*) echo "Unknown checksum algorithm $CHECK. Exit."; exit 1;;
|
||||||
|
esac
|
||||||
|
checksum=`$prog $file | awk '{print $1}'`
|
||||||
|
echo $checksum
|
||||||
|
}
|
||||||
|
|
||||||
|
case $ARCH in
|
||||||
|
|
||||||
|
source)
|
||||||
|
#### SOURCE
|
||||||
|
for SECT in $SECTIONS; do
|
||||||
|
if [ -d "pool/$SECT" ]; then
|
||||||
|
mkdir -p dists/$CODENAME/$SECT/source
|
||||||
|
dpkg-scansources pool/$SECT > dists/$CODENAME/$SECT/source/Sources
|
||||||
|
if [ -f dists/$CODENAME/$SECT/source/Sources ] ; then
|
||||||
|
gzip --best dists/$CODENAME/$SECT/source/Sources
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
cp $MIRROR/dists/$CODENAME/Release Release.in
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
#### BINARY
|
||||||
|
# Create an override file for dpkg-scanpackages
|
||||||
|
if [ ! -e "../overrides" ]; then
|
||||||
|
# Create an override file with all sections
|
||||||
|
for SECT in $SECTIONS; do
|
||||||
|
zcat $MIRROR/indices/override.$CODENAME.$SECT.gz >> ../overrides
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Now create a Packages file for all packages on the CD, just
|
||||||
|
# looking in pool/
|
||||||
|
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH pool ../overrides > $PREFIX.Packages 2>/dev/null
|
||||||
|
|
||||||
|
# Split the Packages file by section, and install matching
|
||||||
|
# Release files
|
||||||
|
for SECT in $SECTIONS; do
|
||||||
|
mkdir -p dists/$CODENAME/$SECT/binary-$ARCH
|
||||||
|
grep-dctrl -FFilename -e "/$SECT/" $PREFIX.Packages | \
|
||||||
|
grep -v ^X-Medium > dists/$CODENAME/$SECT/binary-$ARCH/Packages
|
||||||
|
gzip --best -c < dists/$CODENAME/$SECT/binary-$ARCH/Packages \
|
||||||
|
> dists/$CODENAME/$SECT/binary-$ARCH/Packages.gz
|
||||||
|
cp $MIRROR/dists/$CODENAME/$SECT/binary-$ARCH/Release \
|
||||||
|
dists/$CODENAME/$SECT/binary-$ARCH/
|
||||||
|
done
|
||||||
|
rm -f $PREFIX.Packages
|
||||||
|
sed -e "s/^Architectures: .*$/Architectures: $ARCH/" \
|
||||||
|
$MIRROR/dists/$CODENAME/Release > Release.in
|
||||||
|
;;
|
||||||
|
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Munge the Release file from the archive
|
||||||
|
if [ -e "$MIRROR/dists/$CODENAME/Release" ]; then
|
||||||
|
# Strip the MD5Sum and SHA* fields, update some other information
|
||||||
|
# as well
|
||||||
|
cat Release.in | sed -e "s|^Components: .*$|Components: $SECTIONS|" | \
|
||||||
|
perl -ne 'if (/^(MD5Sum|SHA\d+):/i) { $f=1; next }
|
||||||
|
if ($f) {
|
||||||
|
unless (/^ /) { print; $f=0 }
|
||||||
|
} else { print }' > dists/$CODENAME/Release
|
||||||
|
rm -f Release.in
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Now update the Release file with checksums etc.
|
||||||
|
cd dists/$CODENAME
|
||||||
|
for check in MD5Sum SHA1 SHA256 SHA512; do
|
||||||
|
echo "$check:" >> Release
|
||||||
|
for SECT in $SECTIONS; do
|
||||||
|
if [ -d $SECT ] ; then
|
||||||
|
for file in $SECT/*/*; do
|
||||||
|
cksum=`checksum_file $check $file`
|
||||||
|
size=`stat -c %s $file`
|
||||||
|
printf " %s %8d %s\n" $cksum $size $file >> Release
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
cd ../..
|
||||||
|
|
||||||
|
exit 0
|
|
@ -1,238 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# Copyright 1999 Raphaël Hertzog <hertzog@debian.org>
|
|
||||||
# See the README file for the license
|
|
||||||
|
|
||||||
# This script will create the Packages.gz and the Packages.cd files
|
|
||||||
# First arg = "scan" or "install"
|
|
||||||
# Second arg = directory of the CD
|
|
||||||
|
|
||||||
#set -e
|
|
||||||
|
|
||||||
CDPACKAGES=1
|
|
||||||
DPKG_SCANPACKAGES=$BASEDIR/tools/my-dpkg-scanpackages
|
|
||||||
|
|
||||||
if [ "$1"x = "-noPackages.cd"x ] ; then
|
|
||||||
shift 1
|
|
||||||
CDPACKAGES=0
|
|
||||||
fi
|
|
||||||
|
|
||||||
BDIR=$TDIR/$CODENAME-$ARCH
|
|
||||||
|
|
||||||
PREFIX=`echo $2 | sed "s?$BDIR/CD?$BDIR/?"`
|
|
||||||
|
|
||||||
NUM=${PREFIX##$BDIR/}
|
|
||||||
NUM=`echo $NUM | sed 's/_NONUS//g'`
|
|
||||||
if [ -n "$NONFREE" -o -n "$EXTRANONFREE" ]; then
|
|
||||||
SECTIONS="main contrib non-free"
|
|
||||||
SECTIONSNONUS="non-US/main non-US/contrib non-US/non-free"
|
|
||||||
else
|
|
||||||
SECTIONS="main contrib"
|
|
||||||
SECTIONSNONUS="non-US/main non-US/contrib"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd "$2"
|
|
||||||
|
|
||||||
if [ "$1" = "install" ]; then
|
|
||||||
|
|
||||||
if [ -e "$MIRROR/dists/$CODENAME/Release" ]; then
|
|
||||||
# Strip the MD5Sum and SHA1 fields
|
|
||||||
# Update some other information as well
|
|
||||||
sed -e "s/^Architectures: .*$/Architectures: $ARCH/" \
|
|
||||||
$MIRROR/dists/$CODENAME/Release | \
|
|
||||||
sed -e "s|^Components: .*$|Components: $SECTIONS|" | \
|
|
||||||
perl -ne 'if (/^(MD5Sum|SHA1):/i) { $f=1; next }
|
|
||||||
if ($f) {
|
|
||||||
unless (/^ /) { print; $f=0 }
|
|
||||||
} else { print }' > dists/$CODENAME/Release
|
|
||||||
fi
|
|
||||||
if [ -n "$NONUS" -a -e "$NONUS/dists/$CODENAME/non-US/Release" ]; then
|
|
||||||
# Strip the MD5Sum and SHA1 fields
|
|
||||||
# Update some other information as well
|
|
||||||
sed -e "/^ /d" -e "s/^Architectures: .*$/Architectures: $ARCH/" \
|
|
||||||
$NONUS/dists/$CODENAME/non-US/Release | \
|
|
||||||
sed -e "s|^Components: .*$|Components: $SECTIONSNONUS|" | \
|
|
||||||
perl -ne 'if (/^(MD5Sum|SHA1):/i) { $f=1; next }
|
|
||||||
if ($f) {
|
|
||||||
unless (/^ /) { print; $f=0 }
|
|
||||||
} else { print }' > dists/$CODENAME/non-US/Release
|
|
||||||
fi
|
|
||||||
|
|
||||||
for SECT in $SECTIONS; do
|
|
||||||
# Install the release files
|
|
||||||
cp $MIRROR/dists/$CODENAME/$SECT/binary-$ARCH/Release \
|
|
||||||
dists/$CODENAME/$SECT/binary-$ARCH/
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
cp $NONUS/dists/$CODENAME/non-US/$SECT/binary-$ARCH/Release \
|
|
||||||
dists/$CODENAME/non-US/$SECT/binary-$ARCH/
|
|
||||||
fi
|
|
||||||
# Install the Packages and Packages.gz files
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-$SECT \
|
|
||||||
>dists/$CODENAME/$SECT/binary-$ARCH/Packages
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-$SECT | gzip --best \
|
|
||||||
>dists/$CODENAME/$SECT/binary-$ARCH/Packages.gz
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-non-US-$SECT \
|
|
||||||
>dists/$CODENAME/non-US/$SECT/binary-$ARCH/Packages
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-non-US-$SECT | gzip --best \
|
|
||||||
>dists/$CODENAME/non-US/$SECT/binary-$ARCH/Packages.gz
|
|
||||||
fi
|
|
||||||
# Install the Packages.cd and Packages.cd.gz files
|
|
||||||
# Each CD know about all prior CDs
|
|
||||||
# We use "?.packages" here so that we always use US-safe
|
|
||||||
# packages files only - we don't want later (supposedly
|
|
||||||
# common) CDs having dependencies on a non-US CD#1...
|
|
||||||
if [ $CDPACKAGES -eq 1 ] ; then
|
|
||||||
for i in $TDIR/$CODENAME-$ARCH/?.packages; do
|
|
||||||
dir=${i%%.packages}
|
|
||||||
n=${dir##$TDIR/$CODENAME-$ARCH/}
|
|
||||||
if [ $n -le $NUM ]; then
|
|
||||||
cat $dir.Packages-$SECT \
|
|
||||||
>>dists/$CODENAME/$SECT/binary-$ARCH/Packages.cd
|
|
||||||
cat $dir.Packages-$SECT | gzip --best \
|
|
||||||
>>dists/$CODENAME/$SECT/binary-$ARCH/Packages.cd.gz
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
cat $dir.Packages-non-US-$SECT \
|
|
||||||
>>dists/$CODENAME/non-US/$SECT/binary-$ARCH/Packages.cd
|
|
||||||
cat $dir.Packages-non-US-$SECT | gzip --best \
|
|
||||||
>>dists/$CODENAME/non-US/$SECT/binary-$ARCH/Packages.cd.gz
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" = "slink" ]; then
|
|
||||||
cp $NONUS/dists/$CODENAME/non-US/binary-$ARCH/Release \
|
|
||||||
dists/$CODENAME/non-US/binary-$ARCH/
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-non-US \
|
|
||||||
>dists/$CODENAME/non-US/binary-$ARCH/Packages
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-non-US | gzip --best \
|
|
||||||
>dists/$CODENAME/non-US/binary-$ARCH/Packages.gz
|
|
||||||
for i in $TDIR/$CODENAME-$ARCH/?.packages; do
|
|
||||||
dir=${i%%.packages}
|
|
||||||
n=${dir##$TDIR/$CODENAME-$ARCH/}
|
|
||||||
if [ $n -le $NUM ]; then
|
|
||||||
cat $dir.Packages-non-US \
|
|
||||||
>>dists/$CODENAME/non-US/binary-$ARCH/Packages.cd
|
|
||||||
cat $dir.Packages-non-US | gzip --best \
|
|
||||||
>>dists/$CODENAME/non-US/binary-$ARCH/Packages.cd.gz
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$LOCAL" ]; then
|
|
||||||
if [ -e ${LOCALDEBS:-$MIRROR}/dists/$CODENAME/local/binary-$ARCH/Release ]; then
|
|
||||||
cp ${LOCALDEBS:-$MIRROR}/dists/$CODENAME/local/binary-$ARCH/Release \
|
|
||||||
dists/$CODENAME/local/binary-$ARCH/
|
|
||||||
fi
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-local \
|
|
||||||
>dists/$CODENAME/local/binary-$ARCH/Packages
|
|
||||||
grep -v ^X-Medium $PREFIX.Packages-local | gzip --best \
|
|
||||||
>dists/$CODENAME/local/binary-$ARCH/Packages.gz
|
|
||||||
|
|
||||||
for i in $TDIR/$CODENAME-$ARCH/?.packages; do
|
|
||||||
dir=${i%%.packages}
|
|
||||||
n=${dir##$TDIR/$CODENAME-$ARCH/}
|
|
||||||
if [ $n -le $NUM ]; then
|
|
||||||
cat $dir.Packages-local \
|
|
||||||
>>dists/$CODENAME/local/binary-$ARCH/Packages.cd
|
|
||||||
cat $dir.Packages-local | gzip --best \
|
|
||||||
>>dists/$CODENAME/local/binary-$ARCH/Packages.cd.gz
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Creates the temp Packages-$SECT files
|
|
||||||
if [ "$1" != "scan" ]; then exit 0; fi
|
|
||||||
|
|
||||||
|
|
||||||
if [ ! -e "../overrides" ]; then
|
|
||||||
# Create an override file with all sections
|
|
||||||
for SECT in $SECTIONS; do
|
|
||||||
zcat $MIRROR/indices/override.$CODENAME.$SECT.gz >> ../overrides
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
zcat $NONUS/indices-non-US/override.$CODENAME.$SECT.gz \
|
|
||||||
>> ../overrides
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Create a Packages file for all packages on the CD
|
|
||||||
#
|
|
||||||
if [ -d pool ]; then
|
|
||||||
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH pool ../overrides \
|
|
||||||
> $PREFIX.Packages-BOTH
|
|
||||||
fi
|
|
||||||
# We have to scan all possible dists where packages can be
|
|
||||||
DISTS=""
|
|
||||||
DISTSNONUS=""
|
|
||||||
for i in `cd dists; echo *; cd ..`; do
|
|
||||||
if [ ! -L "dists/$i" -a -d "dists/$i" ]; then
|
|
||||||
if [ -d "dists/$i/main/binary-$ARCH" -o \
|
|
||||||
-d "dists/$i/non-free/binary-$ARCH" -o \
|
|
||||||
-d "dists/$i/contrib/binary-$ARCH" ]; then
|
|
||||||
DISTS="$DISTS $i"
|
|
||||||
fi
|
|
||||||
if [ -d "dists/$i/non-US/main/binary-$ARCH" -o \
|
|
||||||
-d "dists/$i/non-US/non-free/binary-$ARCH" -o \
|
|
||||||
-d "dists/$i/non-US/contrib/binary-$ARCH" ]; then
|
|
||||||
DISTSNONUS="$DISTSNONUS $i"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
for SECT in $SECTIONS; do
|
|
||||||
for DIST in $DISTS; do
|
|
||||||
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH dists/$DIST/$SECT/binary-$ARCH \
|
|
||||||
../overrides >> $PREFIX.Packages-BOTH
|
|
||||||
done
|
|
||||||
for DIST in $DISTSNONUS; do
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH \
|
|
||||||
dists/$DIST/non-US/$SECT/binary-$ARCH \
|
|
||||||
../overrides >> $PREFIX.Packages-BOTH
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done
|
|
||||||
# Separate non-US from the rest
|
|
||||||
grep-dctrl -FFilename -e '/non-[Uu][Ss]/' $PREFIX.Packages-BOTH \
|
|
||||||
> $PREFIX.Packages-ALLNONUS
|
|
||||||
grep-dctrl -v -FFilename -e '/non-[Uu][Ss]/' $PREFIX.Packages-BOTH \
|
|
||||||
> $PREFIX.Packages-ALL
|
|
||||||
|
|
||||||
# Split the Packages file by section
|
|
||||||
for SECT in $SECTIONS; do
|
|
||||||
grep-dctrl -FFilename -e "/$SECT/" $PREFIX.Packages-ALL \
|
|
||||||
> $PREFIX.Packages-$SECT
|
|
||||||
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
grep-dctrl -FFilename -e "/$SECT/" $PREFIX.Packages-ALLNONUS \
|
|
||||||
> $PREFIX.Packages-non-US-$SECT
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Slink special case
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" = "slink" ]; then
|
|
||||||
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH \
|
|
||||||
dists/$CODENAME/non-US/binary-$ARCH \
|
|
||||||
$NONUS/indices-non-US/override.$CODENAME.gz \
|
|
||||||
> $PREFIX.Packages-non-US
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$LOCAL" ]; then
|
|
||||||
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH \
|
|
||||||
dists/$CODENAME/local/binary-$ARCH \
|
|
||||||
/dev/null > $PREFIX.Packages-local
|
|
||||||
|
|
||||||
if [ -d pool/local ]
|
|
||||||
then
|
|
||||||
$DPKG_SCANPACKAGES -m "`cat .disk/info`" -a $ARCH \
|
|
||||||
pool/local /dev/null >> $PREFIX.Packages-local
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,100 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# Copyright 1999 Raphaël Hertzog <hertzog@debian.org>
|
|
||||||
# See the README file for the license
|
|
||||||
|
|
||||||
# This script will create the Sources.gz files
|
|
||||||
# First arg = directory of the CD
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
PREFIX=$1
|
|
||||||
if [ -n "$NONFREE" -o -n "$EXTRANONFREE" ]; then
|
|
||||||
SECTIONS="main contrib non-free"
|
|
||||||
else
|
|
||||||
SECTIONS="main contrib"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd $PREFIX
|
|
||||||
|
|
||||||
# We have to scan all possible dists where sources can be
|
|
||||||
DISTS=""
|
|
||||||
DISTSNONUS=""
|
|
||||||
for i in `cd dists; echo *; cd ..`; do
|
|
||||||
if [ ! -L "dists/$i" -a -d "dists/$i" ]; then
|
|
||||||
if [ -d "dists/$i/main/source" -o \
|
|
||||||
-d "dists/$i/non-free/source" -o \
|
|
||||||
-d "dists/$i/contrib/source" ]; then
|
|
||||||
DISTS="$DISTS $i"
|
|
||||||
fi
|
|
||||||
if [ -d "dists/$i/non-US/main/source" -o \
|
|
||||||
-d "dists/$i/non-US/non-free/source" -o \
|
|
||||||
-d "dists/$i/non-US/contrib/source" ]; then
|
|
||||||
DISTSNONUS="$DISTSNONUS $i"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -e "$MIRROR/dists/$CODENAME/Release" ]; then
|
|
||||||
# Strip the MD5Sum and SHA1 field
|
|
||||||
perl -ne 'if (/^(MD5Sum|SHA1):/) { $f=1; next; }
|
|
||||||
if ($f) {
|
|
||||||
unless (/^ /) { print; $f=0 }
|
|
||||||
} else { print }' \
|
|
||||||
$MIRROR/dists/$CODENAME/Release > dists/$CODENAME/Release
|
|
||||||
fi
|
|
||||||
if [ -n "$NONUS" -a -e "$NONUS/dists/$CODENAME/non-US/Release" ]; then
|
|
||||||
# Strip the MD5Sum and SHA1 field
|
|
||||||
perl -ne 'if (/^(MD5Sum|SHA1):/) { $f=1; next; }
|
|
||||||
if ($f) {
|
|
||||||
unless (/^ /) { print; $f=0 }
|
|
||||||
} else { print }' \
|
|
||||||
$NONUS/dists/$CODENAME/non-US/Release \
|
|
||||||
> dists/$CODENAME/non-US/Release
|
|
||||||
fi
|
|
||||||
|
|
||||||
for SECT in $SECTIONS; do
|
|
||||||
|
|
||||||
if [ -d "pool/$SECT" ]; then
|
|
||||||
dpkg-scansources pool/$SECT > dists/$CODENAME/$SECT/source/Sources
|
|
||||||
fi
|
|
||||||
for DIST in $DISTS; do
|
|
||||||
if [ -d "dists/$DIST/$SECT/source" ] ; then
|
|
||||||
dpkg-scansources dists/$DIST/$SECT/source \
|
|
||||||
>> dists/$CODENAME/$SECT/source/Sources
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ -f dists/$CODENAME/$SECT/source/Sources ] ; then
|
|
||||||
gzip --best dists/$CODENAME/$SECT/source/Sources
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" != "slink" ]; then
|
|
||||||
if [ -d "pool/non-US/$SECT" ]; then
|
|
||||||
dpkg-scansources pool/non-US/$SECT \
|
|
||||||
> dists/$CODENAME/non-US/$SECT/source/Sources
|
|
||||||
fi
|
|
||||||
for DIST in $DISTSNONUS; do
|
|
||||||
if [ -d "dists/$DIST/non-US/$SECT/source" ] ; then
|
|
||||||
dpkg-scansources dists/$DIST/non-US/$SECT/source \
|
|
||||||
>> dists/$CODENAME/non-US/$SECT/source/Sources
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ -f dists/$CODENAME/non-US/$SECT/source/Sources ] ; then
|
|
||||||
gzip --best dists/$CODENAME/non-US/$SECT/source/Sources
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
done
|
|
||||||
|
|
||||||
# Slink special case
|
|
||||||
if [ -n "$NONUS" -a "$CODENAME" = "slink" ]; then
|
|
||||||
dpkg-scansources dists/$CODENAME/non-US/source \
|
|
||||||
| gzip --best > dists/$CODENAME/non-US/source/Sources.gz
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$LOCAL" ]; then
|
|
||||||
dpkg-scansources dists/$CODENAME/local/source \
|
|
||||||
| gzip --best > dists/$CODENAME/local/source/Sources.gz
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -17,14 +17,11 @@ set -e
|
||||||
MIRROR_NORM=/org/cdbuilder.debian.org/src/ftp/debian
|
MIRROR_NORM=/org/cdbuilder.debian.org/src/ftp/debian
|
||||||
MIRROR_AMD64=/org/cdbuilder.debian.org/src/ftp/debian-amd64/debian
|
MIRROR_AMD64=/org/cdbuilder.debian.org/src/ftp/debian-amd64/debian
|
||||||
|
|
||||||
# If you have a non-US mirror, where is it? Leave blank if you don't have one.
|
|
||||||
# NONUS=${NONUS:-/mirror/debian-non-US}
|
|
||||||
|
|
||||||
# Do you want non-free? 1 for yes, 0 for no
|
# Do you want non-free? 1 for yes, 0 for no
|
||||||
NONFREE=0
|
NONFREE=0
|
||||||
|
|
||||||
# What release version is this?
|
# What release version is this?
|
||||||
VER=6.0.1
|
VER=6.0.1a
|
||||||
|
|
||||||
# Is this an official CD?
|
# Is this an official CD?
|
||||||
OFFICIAL=Official
|
OFFICIAL=Official
|
||||||
|
@ -72,14 +69,13 @@ esac
|
||||||
DIFF=/home/debian-cd/lists/squeeze/r0-r1.diff
|
DIFF=/home/debian-cd/lists/squeeze/r0-r1.diff
|
||||||
|
|
||||||
if [ "$TYPE" = "cd" ] ; then
|
if [ "$TYPE" = "cd" ] ; then
|
||||||
CDSIZE=640 # megabytes, leaving space for metadata
|
CDSIZE=644 # megabytes, leaving space for metadata
|
||||||
else
|
else
|
||||||
CDSIZE=4300 # megabytes, leaving space for metadata
|
CDSIZE=4300 # megabytes, leaving space for metadata
|
||||||
fi
|
fi
|
||||||
|
|
||||||
REL=Debian"$VER"
|
REL=Debian"$VER"
|
||||||
CLOG=dists/$CODENAME/ChangeLog
|
CLOG=dists/$CODENAME/ChangeLog
|
||||||
NUCLOG=dists/$CODENAME/non-US/ChangeLog
|
|
||||||
UPD=$TDIR/$CODENAME-update
|
UPD=$TDIR/$CODENAME-update
|
||||||
DATE=`date +%Y%m%d`
|
DATE=`date +%Y%m%d`
|
||||||
BASEDIR=`pwd`
|
BASEDIR=`pwd`
|
||||||
|
@ -97,50 +93,14 @@ if [ "$ARCHLIST"x = ""x ] ; then
|
||||||
ARCHLIST="armel amd64 i386 ia64 mips mipsel powerpc s390 sparc source kfreebsd-amd64 kfreebsd-i386" # amd64 # all dealt with specially
|
ARCHLIST="armel amd64 i386 ia64 mips mipsel powerpc s390 sparc source kfreebsd-amd64 kfreebsd-i386" # amd64 # all dealt with specially
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export TDIR NONFREE NONUS VER MIRROR CODENAME OUT BASEDIR
|
export TDIR NONFREE VER MIRROR CODENAME OUT BASEDIR
|
||||||
|
|
||||||
CDSIZE=$(($CDSIZE * 1024))
|
CDSIZE=$(($CDSIZE * 1024))
|
||||||
|
|
||||||
scanpackages=$BASEDIR/tools/scanpackages.old
|
create_control=$BASEDIR/tools/create_control
|
||||||
scansources=$BASEDIR/tools/scansources.old
|
|
||||||
set_mkisofs_opts=$BASEDIR/tools/set_mkisofs_opts
|
set_mkisofs_opts=$BASEDIR/tools/set_mkisofs_opts
|
||||||
addfiles=$BASEDIR/tools/add_files
|
addfiles=$BASEDIR/tools/add_files
|
||||||
|
|
||||||
create_control_files () {
|
|
||||||
CDDIR=$1
|
|
||||||
shift
|
|
||||||
ARCHES=$*
|
|
||||||
echo " Creating control files for \"$ARCHES\" on $CDDIR"
|
|
||||||
for ARCH in $ARCHES
|
|
||||||
do
|
|
||||||
case "$ARCH" in
|
|
||||||
source)
|
|
||||||
echo " source"
|
|
||||||
for SECT in $SECTS
|
|
||||||
do
|
|
||||||
mkdir -p $CDDIR/dists/$CODENAME/$SECT/source
|
|
||||||
mkdir -p $CDDIR/dists/$CODENAME/non-US/$SECT/source
|
|
||||||
done
|
|
||||||
cd $UPD
|
|
||||||
$scansources $CDDIR >/dev/null 2>&1
|
|
||||||
;;
|
|
||||||
all)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo " $ARCH"
|
|
||||||
for SECT in $SECTS
|
|
||||||
do
|
|
||||||
mkdir -p $CDDIR/dists/$CODENAME/$SECT/binary-$ARCH
|
|
||||||
mkdir -p $CDDIR/dists/$CODENAME/non-US/$SECT/binary-$ARCH
|
|
||||||
done
|
|
||||||
ARCH=$ARCH $scanpackages scan $CDDIR >/dev/null 2>&1
|
|
||||||
ARCH=$ARCH $scanpackages -noPackages.cd install $CDDIR >/dev/null 2>&1
|
|
||||||
rm -f $CDDIR/*.Packages* >/dev/null 2>&1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
copy_file () {
|
copy_file () {
|
||||||
ROOTDIR=$1
|
ROOTDIR=$1
|
||||||
shift
|
shift
|
||||||
|
@ -151,8 +111,6 @@ copy_file () {
|
||||||
fi
|
fi
|
||||||
if [ -e $MIRROR/$FILE ] ; then
|
if [ -e $MIRROR/$FILE ] ; then
|
||||||
cp -l $MIRROR/$FILE $ROOTDIR/$FILE
|
cp -l $MIRROR/$FILE $ROOTDIR/$FILE
|
||||||
elif [ -e $NONUS/$FILE ] ; then
|
|
||||||
cp -l $NONUS/$FILE $ROOTDIR/$FILE
|
|
||||||
else
|
else
|
||||||
echo
|
echo
|
||||||
echo "File $FILE not found!"
|
echo "File $FILE not found!"
|
||||||
|
@ -175,7 +133,7 @@ make_cd () {
|
||||||
echo
|
echo
|
||||||
echo " Creating Packages and Sources files for CD$CDNUM"
|
echo " Creating Packages and Sources files for CD$CDNUM"
|
||||||
cd $UPD
|
cd $UPD
|
||||||
create_control_files CD$CDNUM $THISARCH
|
$create_control CD$CDNUM $THISARCH
|
||||||
echo " Creating image for CD$CDNUM ($SRCFILES source files, $ARCHFILES $ARCH debs, $ALLFILES all debs)"
|
echo " Creating image for CD$CDNUM ($SRCFILES source files, $ARCHFILES $ARCH debs, $ALLFILES all debs)"
|
||||||
echo -n " "
|
echo -n " "
|
||||||
if [ ! -d $OUT/$THISARCH/iso-$TYPE ] ; then
|
if [ ! -d $OUT/$THISARCH/iso-$TYPE ] ; then
|
||||||
|
@ -190,7 +148,6 @@ make_cd () {
|
||||||
-jigdo-jigdo $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo \
|
-jigdo-jigdo $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo \
|
||||||
-jigdo-template $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.template \
|
-jigdo-template $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.template \
|
||||||
-jigdo-map Debian=$MIRROR/ \
|
-jigdo-map Debian=$MIRROR/ \
|
||||||
-jigdo-map Non-US=$NONUS/ \
|
|
||||||
-jigdo-force-md5 /pool/ \
|
-jigdo-force-md5 /pool/ \
|
||||||
-md5-list $UPD/md5-check \
|
-md5-list $UPD/md5-check \
|
||||||
$UPD/CD$CDNUM 2>&1 | grep "extents written"
|
$UPD/CD$CDNUM 2>&1 | grep "extents written"
|
||||||
|
@ -218,7 +175,7 @@ make_cd () {
|
||||||
echo "$SHA debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.iso" >> $OUT/$THISARCH/iso-$TYPE/SHA${SHA_SIZE}SUMS.update
|
echo "$SHA debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.iso" >> $OUT/$THISARCH/iso-$TYPE/SHA${SHA_SIZE}SUMS.update
|
||||||
done
|
done
|
||||||
gzip -9 $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo
|
gzip -9 $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo
|
||||||
mv -v $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo.gz \
|
mv $OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo.gz \
|
||||||
$OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo
|
$OUT/$THISARCH/jigdo-$TYPE/debian-update-$VER-$THISARCH-$TYPEUP-$THISNUM.jigdo
|
||||||
else
|
else
|
||||||
${MKISOFS} -J -r -V "Debian $VER update $TYPEUP" -o \
|
${MKISOFS} -J -r -V "Debian $VER update $TYPEUP" -o \
|
||||||
|
@ -233,7 +190,7 @@ add_file () {
|
||||||
case "$THISARCH" in
|
case "$THISARCH" in
|
||||||
source)
|
source)
|
||||||
case "$file" in
|
case "$file" in
|
||||||
*.gz|*.dsc)
|
*.gz|*.bz2|*.dsc)
|
||||||
copy_file $UPD/CD$CDNUM $file
|
copy_file $UPD/CD$CDNUM $file
|
||||||
SRCFILES=$(($SRCFILES + 1))
|
SRCFILES=$(($SRCFILES + 1))
|
||||||
;;
|
;;
|
||||||
|
@ -269,11 +226,6 @@ if [ ! -e $DIFF ] ; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp $DIFF $UPD/list
|
cp $DIFF $UPD/list
|
||||||
if [ "$NONUS"x == ""x ] ; then
|
|
||||||
echo "Removing non-US files from the list"
|
|
||||||
grep -v non-US $UPD/list > $UPD/list1
|
|
||||||
mv -f $UPD/list1 $UPD/list
|
|
||||||
fi
|
|
||||||
if [ "$NONFREE"x != "1"x ] ; then
|
if [ "$NONFREE"x != "1"x ] ; then
|
||||||
echo "Removing non-free files from the list"
|
echo "Removing non-free files from the list"
|
||||||
grep -v non-free $UPD/list > $UPD/list1
|
grep -v non-free $UPD/list > $UPD/list1
|
||||||
|
@ -281,9 +233,6 @@ if [ "$NONFREE"x != "1"x ] ; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$GRAB_MD5 $MIRROR_NORM "$ARCHLIST" $CODENAME $CODENAME $UPD/md5-check
|
$GRAB_MD5 $MIRROR_NORM "$ARCHLIST" $CODENAME $CODENAME $UPD/md5-check
|
||||||
if [ "$NONUS"x != ""x ] ; then
|
|
||||||
$GRAB_MD5 $NONUS "$ARCHLIST" $CODENAME $CODENAME $UPD/md5-check
|
|
||||||
fi
|
|
||||||
|
|
||||||
for THISARCH in $ARCHLIST
|
for THISARCH in $ARCHLIST
|
||||||
do
|
do
|
||||||
|
@ -324,9 +273,10 @@ do
|
||||||
SIZE_USED=`du -sk $UPD/CD$CDNUM | awk '{print $1}'`
|
SIZE_USED=`du -sk $UPD/CD$CDNUM | awk '{print $1}'`
|
||||||
if [ $SIZE_USED -gt $CDSIZE ] ; then
|
if [ $SIZE_USED -gt $CDSIZE ] ; then
|
||||||
# Back out the last file added
|
# Back out the last file added
|
||||||
echo
|
size=`stat -c %s $UPD/CD$CDNUM/$file`
|
||||||
echo " Overfull: back out $file"
|
|
||||||
rm -f $UPD/CD$CDNUM/$file
|
rm -f $UPD/CD$CDNUM/$file
|
||||||
|
echo
|
||||||
|
echo " Overfull: back out $file ($size bytes)"
|
||||||
DIR=`dirname $file`
|
DIR=`dirname $file`
|
||||||
rmdir $DIR > /dev/null 2>&1 || true
|
rmdir $DIR > /dev/null 2>&1 || true
|
||||||
BACKOUT_FILE=$file
|
BACKOUT_FILE=$file
|
||||||
|
|
Loading…
Reference in New Issue