From 6e416f8cc293e6913a4c7597ebc2207d753fc301 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 12 Oct 2025 19:09:09 +0200 Subject: [PATCH 1/3] nixos/nextcloud: drop httpd configuration from manual Closes #243203 This hasn't changed in years because nobody maintains it. Considering the amount of updates in the meantime to the nginx configuration, I'm pretty sure that this doesn't work anymore. I think it's OK to keep the part about how to really disable nginx, but that's it. The reason this also closes #243203 is that config in the manual saw zero maintenance and I don't expect that to change. This should really be maintained by interested people in a community wiki. --- nixos/modules/services/web-apps/nextcloud.md | 53 +------------------- 1 file changed, 1 insertion(+), 52 deletions(-) diff --git a/nixos/modules/services/web-apps/nextcloud.md b/nixos/modules/services/web-apps/nextcloud.md index 72cae63c8b22..e142630d8b98 100644 --- a/nixos/modules/services/web-apps/nextcloud.md +++ b/nixos/modules/services/web-apps/nextcloud.md @@ -232,58 +232,7 @@ By default, `nginx` is used as reverse-proxy for `nextcloud`. However, it's possible to use e.g. `httpd` by explicitly disabling `nginx` using [](#opt-services.nginx.enable) and fixing the settings `listen.owner` & `listen.group` in the -[corresponding `phpfpm` pool](#opt-services.phpfpm.pools). - -An exemplary configuration may look like this: -```nix -{ - config, - lib, - pkgs, - ... -}: -{ - services.nginx.enable = false; - services.nextcloud = { - enable = true; - hostName = "localhost"; - - # further, required options - }; - services.phpfpm.pools.nextcloud.settings = { - "listen.owner" = config.services.httpd.user; - "listen.group" = config.services.httpd.group; - }; - services.httpd = { - enable = true; - adminAddr = "webmaster@localhost"; - extraModules = [ "proxy_fcgi" ]; - virtualHosts."localhost" = { - documentRoot = config.services.nextcloud.package; - extraConfig = '' - - - - SetHandler "proxy:unix:${config.services.phpfpm.pools.nextcloud.socket}|fcgi://localhost/" - - - - RewriteEngine On - RewriteBase / - RewriteRule ^index\.php$ - [L] - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - RewriteRule . /index.php [L] - - DirectoryIndex index.php - Require all granted - Options +FollowSymLinks - - ''; - }; - }; -} -``` +[`phpfpm` pool `nextcloud`](#opt-services.phpfpm.pools). ## Installing Apps and PHP extensions {#installing-apps-php-extensions-nextcloud} From 82e895c6e39a46f8d550d0019c45ab87a872ca64 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 12 Oct 2025 19:24:56 +0200 Subject: [PATCH 2/3] nixos/release-notes: add notes about Nextcloud Use the same template as every year to guide people through the upgrade. Also, put the stuff into the NixOS release notes: the only deployment way for the package that we truly support is via the module. I think this shows again what a remarkably bad idea this separation is IMHO. --- doc/release-notes/rl-2511.section.md | 6 ------ nixos/doc/manual/release-notes/rl-2511.section.md | 7 +++++++ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/doc/release-notes/rl-2511.section.md b/doc/release-notes/rl-2511.section.md index c1e01105f417..2c32eb82e32b 100644 --- a/doc/release-notes/rl-2511.section.md +++ b/doc/release-notes/rl-2511.section.md @@ -191,8 +191,6 @@ of the [4.3 release](https://github.com/netbox-community/netbox/releases/tag/v4.2.0), make the required changes to your database, if needed, then upgrade by setting `services.netbox.package = pkgs.netbox_4_3;` in your configuration. -- `pkgs.nextcloud30` has been removed since it's out of support upstream. - - `privatebin` has been updated to `2.0.0`. This release changes configuration defaults including switching the template and removing legacy features. See the [v2.0.0 changelog entry](https://github.com/PrivateBin/PrivateBin/releases/tag/2.0.0) for details on how to upgrade. - `rocmPackages.triton` has been removed in favor of `python3Packages.triton`. @@ -328,7 +326,3 @@ See the neovim help page [`:help startup`](https://neovim.io/doc/user/starting.html#startup) for more information, as well as [the nixpkgs neovim wrapper documentation](#neovim-custom-configuration). - `cloudflare-ddns`: Added package cloudflare-ddns. - -- `nextcloud32`: Added for the Nextcloud 32 major release. - - See https://nextcloud.com/blog/nextcloud-hub25-autumn/ for more details on the new major version. diff --git a/nixos/doc/manual/release-notes/rl-2511.section.md b/nixos/doc/manual/release-notes/rl-2511.section.md index 6f1c79dac79d..13e67bfe3244 100644 --- a/nixos/doc/manual/release-notes/rl-2511.section.md +++ b/nixos/doc/manual/release-notes/rl-2511.section.md @@ -304,6 +304,13 @@ - `services.clamsmtp` is unmaintained and was removed from Nixpkgs. +- The latest available version of Nextcloud is v32 (available as `pkgs.nextcloud32`). The installation logic is as follows: + - If [`services.nextcloud.package`](#opt-services.nextcloud.package) is specified explicitly, this package will be installed (**recommended**) + - If [`system.stateVersion`](#opt-system.stateVersion) is >=25.05, `pkgs.nextcloud32` will be installed by default. + - If [`system.stateVersion`](#opt-system.stateVersion) is >=24.11, `pkgs.nextcloud31` will be installed by default. + - `nextcloud30` is EOL and was thus removed. + - Please note that an upgrade from v30 (or older) to v32 directly is not possible. Please upgrade to `nextcloud31` (or earlier) first. Nextcloud prohibits skipping major versions while upgrading. You can upgrade by declaring [`services.nextcloud.package = pkgs.nextcloud30;`](#opt-services.nextcloud.package). + - `services.eris-server` was removed from Nixpkgs due to a hostile upstream. - `prosody` gained a config check option named `services.prosody.checkConfig` which runs `prosodyctl check config` and is turned on by default. From ddb91270715c1b8d709374de01455fa3a229d2d1 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 12 Oct 2025 19:26:07 +0200 Subject: [PATCH 3/3] nixos/nextcloud: remove ancient stateVersion conditions --- nixos/modules/services/web-apps/nextcloud.nix | 4 --- pkgs/top-level/aliases.nix | 36 ------------------- 2 files changed, 40 deletions(-) diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix index da5e02e27479..87e69c402e10 100644 --- a/nixos/modules/services/web-apps/nextcloud.nix +++ b/nixos/modules/services/web-apps/nextcloud.nix @@ -1070,10 +1070,6 @@ in nextcloud defined in an overlay, please set `services.nextcloud.package` to `pkgs.nextcloud`. '' - else if lib.versionOlder stateVersion "24.05" then - pkgs.nextcloud27 - else if lib.versionOlder stateVersion "24.11" then - pkgs.nextcloud29 else if lib.versionOlder stateVersion "25.05" then pkgs.nextcloud30 else if lib.versionOlder stateVersion "25.11" then diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index bead703c539d..4fe5e72327d5 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1850,42 +1850,6 @@ mapAliases { first on 25.05 because Nextcloud doesn't support upgrades across multiple major versions! ''; # Added 2025-09-25 nextcloud30Packages = throw "Nextcloud 30 is EOL!"; # Added 2025-09-25 - nextcloud29 = throw '' - Nextcloud v29 has been removed from `nixpkgs` as the support for is dropped - by upstream in 2025-04. Please upgrade to at least Nextcloud v30 by declaring - - services.nextcloud.package = pkgs.nextcloud30; - - in your NixOS config. - - WARNING: if you were on Nextcloud 28 you have to upgrade to Nextcloud 29 - first on 24.11 because Nextcloud doesn't support upgrades across multiple major versions! - ''; # Added 2025-04-11 - nextcloud29Packages = throw "Nextcloud 29 is EOL!"; # Added 2025-04-11 - nextcloud28 = throw '' - Nextcloud v28 has been removed from `nixpkgs` as the support for is dropped - by upstream in 2025-01. Please upgrade to at least Nextcloud v29 by declaring - - services.nextcloud.package = pkgs.nextcloud29; - - in your NixOS config. - - WARNING: if you were on Nextcloud 27 you have to upgrade to Nextcloud 28 - first on 24.11 because Nextcloud doesn't support upgrades across multiple major versions! - ''; # Added 2025-01-19 - nextcloud28Packages = throw "Nextcloud 28 is EOL!"; # Added 2025-01-19 - nextcloud27 = throw '' - Nextcloud v27 has been removed from `nixpkgs` as the support for is dropped - by upstream in 2024-06. Please upgrade to at least Nextcloud v28 by declaring - - services.nextcloud.package = pkgs.nextcloud28; - - in your NixOS config. - - WARNING: if you were on Nextcloud 26 you have to upgrade to Nextcloud 27 - first on 24.05 because Nextcloud doesn't support upgrades across multiple major versions! - ''; # Added 2024-06-25 - nextcloud27Packages = throw "Nextcloud27 is EOL!"; # Added 2024-06-25 nextcloud-news-updater = throw "nextcloud-news-updater has been removed because the project is unmaintained"; # Added 2025-03-28 nixForLinking = throw "nixForLinking has been removed, use `nixVersions.nixComponents_` instead"; # Added 2025-08-14 nagiosPluginsOfficial = monitoring-plugins; # Added 2017-08-07