Skip to content

Version 4.6.0

Choose a tag to compare

@andreapollastri andreapollastri released this 04 Jun 10:34

[4.6.0] — 2026-06-04

Changed

  • Supported Ubuntu releases — fresh installs via setup.sh now accept Ubuntu 24.04 or 26.04 only (no other version, including interim releases). The initial requirements check uses an exact VERSION_ID match instead of a 24.04+ floor.

Fixed

  • PHP install / apt-get update failed on Ubuntu 26.04 (resolute)setup.sh and cipi php install always added ppa:ondrej/php, but Launchpad does not publish a resolute suite yet, so apt-get update failed with Release file not found (including on re-runs at Installing base packages when a broken PPA source was left from a partial install). Cipi now probes PHP APT sources per codename: when Launchpad ondrej has a suite (noble, jammy, …) it uses the PPA as before; when it does not (resolute / Ubuntu 26.04) it configures packages.sury.org instead (same maintainer, co-installable php8.3 / php8.4 / php8.5 — multi-PHP works on 26.04); if neither repo is available, it falls back to Ubuntu main (single version). lib/php-apt.sh centralises the logic; setup.sh bootstraps it before the first apt-get update and sanitises stale broken sources; cipi php install uses the same helper. Migration 4.5.12 removes a leftover broken ondrej source and wires up packages.sury.org where needed.
  • MariaDB install failed on Ubuntu 26.04 (resolute)setup.sh always added the MariaDB.org 11.4 APT repo using $(lsb_release -cs), but that repository does not publish a resolute suite yet, so apt-get update failed with Release file not found. The installer now probes the repo for a valid Release file per codename: when the suite exists (e.g. noble, jammy) it uses MariaDB.org 11.4 as before; when it does not (e.g. resolute / Ubuntu 26.04) it skips the third-party repo and installs MariaDB from Ubuntu main (11.8.x on 26.04). A leftover broken /etc/apt/sources.list.d/mariadb.list from a failed run is removed automatically.
  • Fresh install failed after nginx.org package install — the official nginx.org DEB does not create /etc/nginx/sites-available/ or /etc/nginx/sites-enabled/ (Debian/Ubuntu convention only), so setup.sh aborted with No such file or directory when writing the default vhost. setup.sh now creates those directories (and /var/www/html) and removes the stock /etc/nginx/conf.d/default.conf so it does not conflict with Cipi's default server block. Migration 4.5.10 applies the same layout fix on existing servers (idempotent).