From 2cb89c0aeffc13c550bbf023a5c5bed2f7570b7e Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Fri, 3 Oct 2025 23:24:47 +0200 Subject: [PATCH] postfixadmin: remove, doesn't support php >8.1 In newer versions it does, but there's zero effort to package it by the maintainer and it's not the job of the PHP team to pick that up. --- .../manual/release-notes/rl-2111.section.md | 2 +- nixos/modules/module-list.nix | 1 - nixos/modules/rename.nix | 4 + nixos/modules/services/mail/postfixadmin.nix | 215 ------------------ nixos/tests/all-tests.nix | 1 - nixos/tests/postfixadmin.nix | 34 --- pkgs/by-name/po/postfixadmin/package.nix | 40 ---- pkgs/top-level/aliases.nix | 1 + 8 files changed, 6 insertions(+), 292 deletions(-) delete mode 100644 nixos/modules/services/mail/postfixadmin.nix delete mode 100644 nixos/tests/postfixadmin.nix delete mode 100644 pkgs/by-name/po/postfixadmin/package.nix diff --git a/nixos/doc/manual/release-notes/rl-2111.section.md b/nixos/doc/manual/release-notes/rl-2111.section.md index aefc50cf9063..bf39afd98627 100644 --- a/nixos/doc/manual/release-notes/rl-2111.section.md +++ b/nixos/doc/manual/release-notes/rl-2111.section.md @@ -127,7 +127,7 @@ In addition to numerous new and upgraded packages, this release has the followin - [sx](https://github.com/earnestly/sx), a simple alternative to both xinit and startx for starting a Xorg server. Available as [services.xserver.displayManager.sx](#opt-services.xserver.displayManager.sx.enable) -- [postfixadmin](https://postfixadmin.sourceforge.io/), a web based virtual user administration interface for Postfix mail servers. Available as [postfixadmin](#opt-services.postfixadmin.enable). +- [postfixadmin](https://postfixadmin.sourceforge.io/), a web based virtual user administration interface for Postfix mail servers. - [prowlarr](https://wiki.servarr.com/prowlarr), an indexer manager/proxy built on the popular arr .net/reactjs base stack [services.prowlarr](#opt-services.prowlarr.enable). diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 2d714329c313..3fcad7ff745d 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -752,7 +752,6 @@ ./services/mail/pfix-srsd.nix ./services/mail/postfix-tlspol.nix ./services/mail/postfix.nix - ./services/mail/postfixadmin.nix ./services/mail/postgrey.nix ./services/mail/postsrsd.nix ./services/mail/protonmail-bridge.nix diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix index 5f6913975f5b..e67c2a3726a7 100644 --- a/nixos/modules/rename.nix +++ b/nixos/modules/rename.nix @@ -398,6 +398,10 @@ in services.invoiceplane has been removed since the service only supported PHP 8.1 which is EOL and removed from nixpkgs. '') + (mkRemovedOptionModule [ "services" "postfixadmin" ] '' + services.postfixadmin has been removed since it was unmaintained in nixpkgs and the version + available only supported PHP 8.1 which is EOL. + '') # Do NOT add any option renames here, see top of the file ]; } diff --git a/nixos/modules/services/mail/postfixadmin.nix b/nixos/modules/services/mail/postfixadmin.nix deleted file mode 100644 index bb3a6c81658d..000000000000 --- a/nixos/modules/services/mail/postfixadmin.nix +++ /dev/null @@ -1,215 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: -let - cfg = config.services.postfixadmin; - fpm = config.services.phpfpm.pools.postfixadmin; - localDB = cfg.database.host == "localhost"; - pgsql = config.services.postgresql; - user = if localDB then cfg.database.username else "nginx"; -in -{ - options.services.postfixadmin = { - enable = lib.mkOption { - type = lib.types.bool; - default = false; - description = '' - Whether to enable postfixadmin. - - Also enables nginx virtual host management. - Further nginx configuration can be done by adapting `services.nginx.virtualHosts.`. - See [](#opt-services.nginx.virtualHosts) for further information. - ''; - }; - - hostName = lib.mkOption { - type = lib.types.str; - example = "postfixadmin.example.com"; - description = "Hostname to use for the nginx vhost"; - }; - - adminEmail = lib.mkOption { - type = lib.types.str; - example = "postmaster@example.com"; - description = '' - Defines the Site Admin's email address. - This will be used to send emails from to create mailboxes and - from Send Email / Broadcast message pages. - ''; - }; - - setupPasswordFile = lib.mkOption { - type = lib.types.path; - description = '' - Password file for the admin. - Generate with `php -r "echo password_hash('some password here', PASSWORD_DEFAULT);"` - ''; - }; - - database = { - username = lib.mkOption { - type = lib.types.str; - default = "postfixadmin"; - description = '' - Username for the postgresql connection. - If `database.host` is set to `localhost`, a unix user and group of the same name will be created as well. - ''; - }; - - host = lib.mkOption { - type = lib.types.str; - default = "localhost"; - description = '' - Host of the postgresql server. If this is not set to - `localhost`, you have to create the - postgresql user and database yourself, with appropriate - permissions. - ''; - }; - - passwordFile = lib.mkOption { - type = lib.types.path; - description = "Password file for the postgresql connection. Must be readable by user `nginx`."; - }; - - dbname = lib.mkOption { - type = lib.types.str; - default = "postfixadmin"; - description = "Name of the postgresql database"; - }; - }; - - extraConfig = lib.mkOption { - type = lib.types.lines; - default = ""; - description = "Extra configuration for the postfixadmin instance, see postfixadmin's config.inc.php for available options."; - }; - }; - - config = lib.mkIf cfg.enable { - environment.etc."postfixadmin/config.local.php".text = '' - 8.1"; # Added 2025-10-03 presage = throw "presage has been removed, as it has been unmaintained since 2018"; # Added 2024-03-24 preserves-nim = throw "'preserves-nim' has been removed due to a hostile upstream moving tags and breaking src FODs"; # Added 2025-09-01 projectm = throw "Since version 4, 'projectm' has been split into 'libprojectm' (the library) and 'projectm-sdl-cpp' (the SDL2 frontend). ProjectM 3 has been moved to 'projectm_3'"; # Added 2024-11-10