Skip to content

Commit 0807162

Browse files
authored
Merge pull request #323 from JedMeister/php-sury-tweak
PHP sury tweak
2 parents 64c5e38 + 35bd09a commit 0807162

1 file changed

Lines changed: 33 additions & 19 deletions

File tree

conf/bootstrap_apt

Lines changed: 33 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22

33
# create apt sources
44
# environment variables:
5-
# - RELEASE <required>:
5+
# - RELEASE <optional>:
66
# - OS distro and codename to use (e.g. 'debian/bookworm')
7+
# - will fallback to host system if not set
78
# - NONFREE <optional>:
89
# - set to enable non-free by default
910
# - TKL_TESTING <optional>:
@@ -29,31 +30,41 @@
2930
# - add to plan & pin package(s) to backports (via prefs file); or
3031
# - install via apt using '-t $CODENAME-backports' switch
3132

32-
fatal() { echo "fatal: $@" 1>&2; exit 1; }
33+
warning() { echo "warning: $*" 1>&2; }
34+
fatal() { echo "fatal: $*" 1>&2; exit 1; }
3335

34-
[ ! -f /turnkey-buildenv ] || source /turnkey-buildenv
35-
[ -n "$RELEASE" ] || fatal "RELEASE is not set"
36-
CODENAME=$(basename $RELEASE)
37-
[ -n "$CODENAME" ] || fatal "CODENAME is not set"
38-
distro=$(dirname $RELEASE)
36+
if [[ -f /turnkey-buildenv ]]; then
37+
# shellcheck source=/dev/null
38+
source /turnkey-buildenv
39+
fi
40+
41+
if [[ -z "$RELEASE" ]]; then
42+
CODENAME=$(lsb_release -sc)
43+
_distro=$(lsb_release -si)
44+
distro=${_distro,,}
45+
warning "RELEASE not set - falling back to host: $distro/$CODENAME"
46+
else
47+
CODENAME=$(basename "$RELEASE")
48+
distro=$(dirname "$RELEASE")
49+
fi
3950
if [[ "$distro" != 'debian' ]] && [[ "$distro" != 'ubuntu' ]]; then
4051
fatal "Only supported distros are 'debian' and 'ubuntu' (got '{$distro}')"
4152
fi
4253
rm -rf /turnkey-buildenv
4354

4455
case $CODENAME in
45-
buster|bullseye|bookworm)
56+
bullseye|bookworm|trixie)
4657
MIRROR_URL=http://deb.debian.org/debian
4758
SEC_MIRROR=http://security.debian.org/
4859
KEY_CODENAME=$CODENAME
4960
CONTRIB="contrib"
5061
NON_FREE="non-free"
5162
;;&
52-
bookworm)
63+
bookworm|trixie)
5364
SEC_MIRROR="${SEC_MIRROR}debian-security"
5465
;;
5566
# Note - only Ubuntu LTS
56-
focal|jammy)
67+
focal|jammy|noble)
5768
MIRROR_URL=http://archive.ubuntu.com/ubuntu
5869
SEC_MIRROR=$MIRROR_URL
5970
CONTRIB="universe"
@@ -65,6 +76,9 @@ case $CODENAME in
6576
jammy)
6677
KEY_CODENAME="bookworm"
6778
;;
79+
noble)
80+
KEY_CODENAME="trixie"
81+
;;
6882
*)
6983
fatal "Codename '$CODENAME' not supported"
7084
;;
@@ -127,16 +141,16 @@ if [[ -z "$NO_TURNKEY_APT_REPO" ]]; then
127141
# gpg keyring files
128142
key_dir=/usr/share/keyrings
129143
repos=(main security testing)
130-
for repo in ${repos[@]}; do
144+
for repo in "${repos[@]}"; do
131145
full_path=$key_dir/tkl-$CODENAME-$repo
132146
keyring=$full_path.gpg
133147
keyfile=$full_path.asc
134-
gpg --no-default-keyring --keyring $keyring --import $keyfile
135-
rm $keyfile
148+
gpg --no-default-keyring --keyring "$keyring" --import "$keyfile"
149+
rm "$keyfile"
136150
done
137151
# ensure that gpg-agent is killed after processing keys
138-
kill -9 $(pidof gpg-agent) || true
139-
rm -rf $HOME/.gnupg
152+
kill -9 "$(pidof gpg-agent)" || true
153+
rm -rf "$HOME/.gnupg"
140154
fi
141155

142156
cat > $SOURCES_LIST/sources.list <<EOF
@@ -191,15 +205,15 @@ if [[ -n "$NO_TURNKEY_APT_REPO" ]]; then
191205
find $SOURCES_LIST -type f -exec sed -i '/archive.turnkeylinux.org/ s/^/#/g' {} \;
192206
fi
193207

194-
if [ -n "$PHP_VERSION" ]; then
208+
if [[ -n "$PHP_VERSION" ]]; then
195209
# Use 3rd party sury.org repo
196210
# install support for https repo & wget (to download gpg key)
197-
PKGS="lsb-release ca-certificates wget"
211+
PKGS=(lsb-release ca-certificates wget)
198212
apt-get update --allow-releaseinfo-change
199-
DEBIAN_FRONTEND=noninteractive apt-get install -y $PKGS
213+
DEBIAN_FRONTEND=noninteractive apt-get install --yes "${PKGS[@]}"
200214

201215
# download keyfile
202-
keyfile=/usr/share/keyrings/php-sury.org.gpg
216+
keyfile=/usr/share/keyrings/debsuryorg-archive-keyring.gpg
203217
wget -O $keyfile https://packages.sury.org/php/apt.gpg
204218

205219
cat > $SOURCES_LIST/php.list <<EOF

0 commit comments

Comments
 (0)