#!/bin/bash # Run this script with "(sudo) bash ". # Exit on error. set -e # We'll use the debian binaries provided by sury.org, we need some # packages to add the repo. # # Most of this is taken from https://packages.sury.org/php/README.txt # but I've modified one or two lines. apt install -y apt-transport-https lsb-release ca-certificates curl # PHP packages to install. PHP_PKGS='php8.1-fpm php8.1-readline php8.1-mbstring php8.1-gd php8.1-curl php8.1-zip php8.1-mysql php8.1-dom' # Apt format. DEB_FMT='deb %s %s %s' # Repo URL. DEB_URL='https://packages.sury.org/php/' DEB_KEY_URL='https://packages.sury.org/php/apt.gpg' # Distro codename. DISTRO_CODE="$(lsb_release -sc)" REPO_SUITE='main' curl -o /etc/apt/trusted.gpg.d/packages.sury.org.gpg "${DEB_KEY_URL:-}" printf "${DEB_FMT:-}\n" "$DEB_URL" "$DISTRO_CODE" "$REPO_SUITE" | tee /etc/apt/sources.list.d/php-packages.sury.list apt update apt install -y $PHP_PKGS