Add support for debian 13 (trixie).

This commit is contained in:
2026-03-31 01:21:14 +02:00
parent d22d8a70b5
commit 5024b4480e
3 changed files with 340 additions and 60 deletions

View File

@@ -119,7 +119,13 @@ blank_line() {
detect_os () {
if $(which lsb_release > /dev/null 2>&1) ; then
if [ -r /etc/os-release ]; then
. /etc/os-release
DIST="${ID:-unknown}"
DIST_VERSION="${VERSION_ID:-unknown}"
DIST_CODENAME="${VERSION_CODENAME:-unknown}"
elif $(which lsb_release > /dev/null 2>&1) ; then
DIST="$(lsb_release -i | awk '{print tolower($3)}')"
DIST_VERSION="$(lsb_release -r | awk '{print tolower($2)}')"
@@ -131,12 +137,11 @@ detect_os () {
fi
fi
elif [[ -e "/etc/os-release" ]]; then
else
. /etc/os-release
DIST=$ID
DIST_VERSION=${VERSION_ID}
DIST="unknown"
DIST_VERSION="unknown"
DIST_CODENAME="unknown"
fi
@@ -711,31 +716,22 @@ echo
echo -e "\033[37m\033[1mRepository stuff..\033[m"
echo
if ! dpkg-query -W -f='${Status}\n' extrepo 2>/dev/null | grep -q "install ok installed"; then
echononl "Update Repository.."
apt-get update > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
echononl "Add the '$JITSI_REPOSITORY_VERSION' Jitsi package repository.."
echo "deb https://download.jitsi.org ${JITSI_REPOSITORY_VERSION}/" > /etc/apt/sources.list.d/jitsi-${JITSI_REPOSITORY_VERSION}.list
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
if [[ "$JITSI_REPOSITORY_VERSION" = "stable" ]]; then
if [[ -f "/etc/apt/sources.list.d/jitsi-unstable.list" ]]; then
echononl "Remove Repository List for 'unstable' jitsi packages.."
rm "/etc/apt/sources.list.d/jitsi-unstable.list" > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
fi
else
if [[ -f "/etc/apt/sources.list.d/jitsi-stable.list" ]]; then
echononl "Remove Repository List for 'stable' jitsi packages.."
rm "/etc/apt/sources.list.d/jitsi-stable.list" > "$log_file" 2>&1
echononl "Install debian package 'extrepo'.."
if $(dpkg -s extrepo > "$log_file" 2>&1) ; then
echo_skipped
else
apt-get install -y extrepo > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
@@ -743,15 +739,138 @@ else
echo_ok
fi
fi
fi
echononl "Add the Jitsi Maintainer gpg key.."
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key 2> "$log_file" | sudo apt-key add - > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
_found_extrepo_jitsi=false
echononl "Check if extern repositors for jitsi-meet is listed by 'extrepo'.."
#jitsi_repo_name="$(
# extrepo search jitsi 2>/dev/null \
# | awk '/^Found / { sub(/^Found /, "", $0); sub(/:$/, "", $0); print; exit }'
#)"
# or
#
# Search specifically for 'jitsi-stable'
#
jitsi_repo_name="$(
extrepo search '^jitsi-stable$' 2>/dev/null \
| awk '/^Found / { sub(/^Found /, "", $0); sub(/:$/, "", $0); print; exit }'
)"
if [ -n "$jitsi_repo_name" ]; then
echo_ok
_found_extrepo_jitsi=true
else
echo_failed
#error "No jitsi repository found by extrepo!"
error "no repository 'jitsi-stable' found by extrepo!"
echononl "\033[1mcontinue anyway\033[m [yes/no]: "
read OK
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
echononl "Wrong entry! - repeat [yes/nno]: "
read OK
done
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
fi
if $_found_extrepo_jitsi ; then
echononl "Enable extern repository for 'jitsi-stable'.."
extrepo enable "$jitsi_repo_name" > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
echononl "\033[1mcontinue anyway\033[m [yes/no]: "
read OK
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
echononl "Wrong entry! - repeat [yes/nno]: "
read OK
done
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
else
echo_ok
fi
else
echononl "Add the Jitsi Maintainer gpg key.."
curl https://download.jitsi.org/jitsi-key.gpg.key 2> "$log_file" \
| sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg' 2> "$log_file"
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
echononl "\033[1mcontinue anyway\033[m [yes/no]: "
read OK
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
echononl "Wrong entry! - repeat [yes/nno]: "
read OK
done
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
else
echo_ok
fi
echononl "Add the '$JITSI_REPOSITORY_VERSION' Jitsi package repository.."
cat <<EOF > "/etc/apt/sources.list.d/jitsi-${JITSI_REPOSITORY_VERSION}.sources"
Suites: ${JITSI_REPOSITORY_VERSION}/
Uris: https://download.jitsi.org
Architectures: amd64 i386
Types: deb deb-src
Signed-By: /usr/share/keyrings/jitsi-keyring.gpg
EOF
# echo "deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org ${JITSI_REPOSITORY_VERSION}/" > /etc/apt/sources.list.d/jitsi-${JITSI_REPOSITORY_VERSION}.list
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
if [[ "$JITSI_REPOSITORY_VERSION" = "stable" ]]; then
if [[ -f "/etc/apt/sources.list.d/jitsi-unstable.list" ]]; then
echononl "Remove Repository List for 'unstable' jitsi packages.."
rm "/etc/apt/sources.list.d/jitsi-unstable.list" > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
fi
else
if [[ -f "/etc/apt/sources.list.d/jitsi-stable.list" ]]; then
echononl "Remove Repository List for 'stable' jitsi packages.."
rm "/etc/apt/sources.list.d/jitsi-stable.list" > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
fi
fi
fi
echononl "Update Repository.."
@@ -763,21 +882,105 @@ else
echo_ok
fi
# Ensure support is available for apt repositories served via HTTPS
#
echononl "Install 'apt-transport-https'.."
if $(dpkg -s apt-transport-https > "$log_file" 2>&1) ; then
echo_skipped
else
apt-get install -y apt-transport-https > "$log_file" 2>&1
if $_found_extrepo_jitsi ; then
# Ensure support is available for apt repositories served via HTTPS
#
echononl "Install 'apt-transport-https'.."
if $(dpkg -s apt-transport-https > "$log_file" 2>&1) ; then
echo_skipped
else
apt-get install -y apt-transport-https > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
fi
fi
if [ "$DIST" = "debian" ] && [[ "$DIST_VERSION" == 13* ]]; then
echo
echo -e "\033[37m\033[1mCurrently, jitsi-meet on Debian 13 (trixie) still requires version '17' of 'openjdk'\033[m"
echo
echononl "Temporarily add the Bookworm repository"
echo "deb http://deb.debian.org/debian bookworm main" > /etc/apt/sources.list.d/bookworm.list 2> "$log_file"
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
echononl "Pinning to prevent everything from being pulled from Bookworm.."
cat > /etc/apt/preferences.d/bookworm-java <<EOF
Package: openjdk-17-jre openjdk-17-jre-headless openjdk-17-jdk openjdk-17-jdk-headless
Pin: release n=bookworm
Pin-Priority: 900
Package: *
Pin: release n=bookworm
Pin-Priority: -1
EOF
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
echononl "Update Repository.."
apt-get update > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
_openjdk_17_installed=ffalse
echononl "Install 'openjdk-17-jre-headless'.."
if $(dpkg -s openjdk-17-jre-headless > "$log_file" 2>&1) ; then
echo_skipped
else
apt-get install -y openjdk-17-jre-headless > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
_openjdk_17_installed=true
fi
fi
echononl "Remove previosly added Bookworm repository.."
rm -f "/etc/apt/sources.list.d/bookworm.list" > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
echononl "Update Repository.."
apt-get update > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then
echo_failed
error "$(cat "$log_file")"
else
echo_ok
fi
fi
info "To ensure, your system is fully prepared for installing Jitsi Meet, it is
recommend to \033[1mreboot the system before installing Jitsi Meet\033[m."