diff --git a/installer/v3.sh b/installer/v3.sh index 5d16dd12..c61955f5 100644 --- a/installer/v3.sh +++ b/installer/v3.sh @@ -38,7 +38,7 @@ jammy_install() VERSION_CODENAME=jammy # don't say "vera" for Linux Mint at this point : "${SRCLIST_URL:=https://dl.bluecherrydvr.com/sources.list.d/bluecherry-"$VERSION_CODENAME".list}" wget --output-document=/etc/apt/sources.list.d/bluecherry-"$VERSION_CODENAME".list "$SRCLIST_URL" - add-apt-repository ppa:ondrej/php -y + echo "deb [trusted=yes] https://ppa.launchpadcontent.net/ondrej/php/ubuntu/ jammy main" > /etc/apt/sources.list.d/ondrej-ubuntu-php-jammy.list apt -y update apt -y install php7.4-fpm php7.4-sqlite3 php7.4-curl php7.4-mysql php7.4-gd php-mail php-mail-mime php-mysql php7.4-fpm php7.4-mysql apt -y install bluecherry @@ -62,6 +62,7 @@ mantic_install() } # Ubuntu 24.04 +# Ubuntu 24.10 noble_install() { mantic_install @@ -128,10 +129,15 @@ check_distro() } check_distro +if [[ "$ID" == "ubuntu" && "$VERSION_ID" == "23.10" && "$VERSION_CODENAME" == "mantic" ]]; then + echo "This distribution release has reached its End Of Life and is not supported anymore. All users should upgrade." + exit 1 +fi + if [[ "$ID" == "ubuntu" && "$VERSION_ID" == "20.04" && "$VERSION_CODENAME" == "focal" ]]; then focal_install; elif [[ "$ID" == "ubuntu" && "$VERSION_ID" == "22.04" && "$VERSION_CODENAME" == "jammy" ]]; then jammy_install; -elif [[ "$ID" == "ubuntu" && "$VERSION_ID" == "23.10" && "$VERSION_CODENAME" == "mantic" ]]; then mantic_install; elif [[ "$ID" == "ubuntu" && "$VERSION_ID" == "24.04" && "$VERSION_CODENAME" == "noble" ]]; then noble_install; +elif [[ "$ID" == "ubuntu" && "$VERSION_ID" == "24.10" && "$VERSION_CODENAME" == "oracular" ]]; then noble_install; elif [[ "$ID" == "debian" && "$VERSION_ID" == "10" && "$VERSION_CODENAME" == "buster" ]]; then buster_install; elif [[ "$ID" == "debian" && "$VERSION_ID" == "11" && "$VERSION_CODENAME" == "bullseye" ]]; then bullseye_install; elif [[ "$ID" == "debian" && "$VERSION_ID" == "12" && "$VERSION_CODENAME" == "bookworm" ]]; then bookworm_install; @@ -139,5 +145,6 @@ elif [[ "$ID" == "linuxmint" && "$VERSION_ID" == "21.1" && "$VERSION_CODENAME" = elif [[ "$ID" == "linuxmint" && "$VERSION_ID" == "21.2" && "$VERSION_CODENAME" == "victoria" ]]; then jammy_install; # based on Ubuntu 22.04 Jammy elif [[ "$ID" == "linuxmint" && "$VERSION_ID" == "21.3" && "$VERSION_CODENAME" == "virginia" ]]; then jammy_install; # based on Ubuntu 22.04 Jammy else - echo "Currently we only support Ubuntu 20.04 (Focal), Ubuntu 22.04 (Jammy), Ubuntu 23.10 (Mantic), Ubuntu 24.04 (Noble) and Debian 10 (Buster), 11 (Bullseye), 12 (Bookworm), Linux Mint 21.1 (Vera), 21.2 (Victoria), 21.3 (Virginia) for unstable testing" + echo "Currently we only support up to date Ubuntu, Debian and Mint Linux distributions." + exit 1 fi diff --git a/misc/postinstall.sh b/misc/postinstall.sh index de52d762..7c12c867 100755 --- a/misc/postinstall.sh +++ b/misc/postinstall.sh @@ -105,6 +105,9 @@ function install_certbot elif [[ "$ID" == ubuntu ]] && [[ "$VERSION_CODENAME" == mantic ]]; then echo 'For Ubuntu 23.10 (mantic) we rely on packaged certbot' return + elif [[ "$ID" == ubuntu ]] && [[ "$VERSION_CODENAME" == oracular ]]; then + echo 'For Ubuntu 24.10 (oracular) we rely on packaged certbot' + return elif [[ "$ID" == debian ]] && [[ "$VERSION_CODENAME" == bookworm ]]; then echo 'For Debian 12 (bookworm) we rely on packaged certbot' return @@ -113,7 +116,7 @@ function install_certbot export PATH=/usr/local/bin:"$PATH" # Ubuntu 23+, Debian 12 make this step fail. Fall back to system package. - install_pip || return + install_pip || return 0 # Install pip3 dependencies pip3 install --user --upgrade setuptools_rust certbot certbot-dns-subdomain-provider diff --git a/server/signals.c b/server/signals.c index 64ee60db..7a5ee28e 100644 --- a/server/signals.c +++ b/server/signals.c @@ -58,7 +58,9 @@ void signals_setup() } // these signals are ignored: - sa.sa_sigaction = SIG_IGN; + memset(&sa, 0, sizeof(sa)); + sa.sa_flags = SA_NOCLDWAIT; + sa.sa_handler = SIG_IGN; ret = sigaction(SIGCHLD, &sa, NULL); assert(!ret); ret = sigaction(SIGPIPE, &sa, NULL);