distro specific prep

This commit is contained in:
2023-05-08 11:08:25 +02:00
parent 01454e6521
commit d3f1349838
5 changed files with 59 additions and 34 deletions

View File

@@ -1,17 +1,22 @@
#!/bin/sh
DIR="$(cd "$(dirname "$0")" && pwd)"
LS="$(which ls)" # this prevents bugs when aliasing ls to tools like exa
DIR="$(cd "$(dirname "$0")" && pwd)"
REPODIR="$1"
ARCHS="$($LS -l $REPODIR/apt-repo/dists/stable/main/ | awk '{print $9}' | awk NF | awk -F - '{print $2}')"
DISTRO="$3"
if [ !$DISTRO ]; then
DISTRO="stable"
fi
ARCHS="$($LS -l $REPODIR/apt-repo/dists/$DISTRO/main/ | awk '{print $9}' | awk NF | awk -F - '{print $2}')"
# generate Packages file
for ARCH in $ARCHS; do
dpkg-scanpackages --multiversion --arch $ARCH "$REPODIR/apt-repo/pool/" > "$REPODIR/apt-repo/dists/stable/main/binary-$ARCH/Packages"
dpkg-scanpackages --multiversion --arch $ARCH "$REPODIR/apt-repo/pool/" > "$REPODIR/apt-repo/dists/$DISTRO/main/binary-$ARCH/Packages"
# compress Packages file
cat "$REPODIR/apt-repo/dists/stable/main/binary-$ARCH/Packages" | gzip -9 > "$REPODIR/apt-repo/dists/stable/main/binary-$ARCH/Packages.gz"
cat "$REPODIR/apt-repo/dists/$DISTRO/main/binary-$ARCH/Packages" | gzip -9 > "$REPODIR/apt-repo/dists/$DISTRO/main/binary-$ARCH/Packages.gz"
done
# generate Release file
cd "$REPODIR/apt-repo/dists/stable/"
$DIR/generate-release.sh > "Release"
cd "$REPODIR/apt-repo/dists/$DISTRO/"
$DIR/generate-release.sh $DISTRO > "Release"

View File

@@ -2,6 +2,15 @@
set -e
. ../../config # this file is in /apt-repo/config
if [ ! $DISTRO ]; then
DISTRO="stable"
fi
if [ ! -f "../../config" ]; then
echo "error - config file does not exists"
exit 1;
fi
do_hash() {
HASH_NAME=$1
HASH_CMD=$2
@@ -15,17 +24,11 @@ do_hash() {
done
}
if [ ! -f "../../config" ]; then
echo "error - config file does not exists"
exit 1;
fi
cat << EOF
Origin: $ORIGIN
Label: $LABEL
Suite: $SUITE
Codename: $CODENAME
Codename: $DISTRO
Version: $VERSION
Architectures: $ARCHITECTURES
Components: $COMPONENTS

View File

@@ -1,21 +1,11 @@
#!/bin/sh
REPODIR="$1"
DISTRO="$3"
. $REPODIR/apt-repo/config
#KEY="$2"
#echo $KEY
#if [ $KEY = "--repodir" ]; then
# KEY=""
#fi
#
#if [ $KEY ]; then
# continue
#elif [ $DEFAULT_GPG ]; then
# KEY="$DEFAULT_GPG"
#else
# echo "error: no gpg key provided"
# exit 1
#fi
if [ ! $DISTRO ]; then
DISTRO="stable"
fi
if [ ! $DEFAULT_GPG ]; then
echo "error: no gpg key provided in config file"
@@ -23,10 +13,8 @@ if [ ! $DEFAULT_GPG ]; then
fi
KEY=$DEFAULT_GPG
echo "debrepo: signing using $KEY"
cat $REPODIR/apt-repo/dists/stable/Release | gpg --default-key $KEY -abs > $REPODIR/apt-repo/dists/stable/Release.gpg
cat $REPODIR/apt-repo/dists/stable/Release | gpg --default-key $KEY -abs --clearsign > $REPODIR/apt-repo/dists/stable/InRelease
cat $REPODIR/apt-repo/dists/$DISTRO/Release | gpg --default-key $KEY -abs > $REPODIR/apt-repo/dists/$DISTRO/Release.gpg
cat $REPODIR/apt-repo/dists/$DISTRO/Release | gpg --default-key $KEY -abs --clearsign > $REPODIR/apt-repo/dists/$DISTRO/InRelease

View File

@@ -9,3 +9,21 @@ fi
mkdir -p $1/apt-repo/dists/stable/main/binary-amd64/
mkdir -p $1/apt-repo/pool/main/
# make config file
echo \
"#!/bin/sh
# Repository preferences
DEFAULT_GPG=\"\"
# Repository info
ORIGIN=\"example.com\"
LABEL=\"example repository\"
SUITE=\"stable\"
CODENAME=\"stable\"
VERSION=\"1.0\"
ARCHITECTURES=\"amd64\"
COMPONENTS=\"main\"
DESCRIPTION=\"example repository\"
" > $1/apt-repo/config