nixos/nextcloud: doc improvements, remove httpd parts from manual (#451407)

This commit is contained in:
Maximilian Bosch
2025-10-13 10:11:39 +00:00
committed by GitHub
5 changed files with 8 additions and 98 deletions

View File

@@ -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.

View File

@@ -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 = ''
<Directory "${config.services.nextcloud.package}">
<FilesMatch "\.php$">
<If "-f %{REQUEST_FILENAME}">
SetHandler "proxy:unix:${config.services.phpfpm.pools.nextcloud.socket}|fcgi://localhost/"
</If>
</FilesMatch>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
DirectoryIndex index.php
Require all granted
Options +FollowSymLinks
</Directory>
'';
};
};
}
```
[`phpfpm` pool `nextcloud`](#opt-services.phpfpm.pools).
## Installing Apps and PHP extensions {#installing-apps-php-extensions-nextcloud}

View File

@@ -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