Merge: nextcloud31: init at 31.0.0 (#385060)

This commit is contained in:
Maximilian Bosch
2025-03-01 13:47:45 +01:00
committed by GitHub
9 changed files with 504 additions and 103 deletions
@@ -188,6 +188,14 @@
- `binwalk` was updated to 3.1.0, which has been rewritten in rust. The python module is no longer available.
See the release notes of [3.1.0](https://github.com/ReFirmLabs/binwalk/releases/tag/v3.1.0) for more information.
- The latest available version of Nextcloud is v31 (available as `pkgs.nextcloud31`). 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 >=24.11, `pkgs.nextcloud30` will be installed by default.
- If [`system.stateVersion`](#opt-system.stateVersion) is >=24.05, `pkgs.nextcloud31` will be installed by default.
- Please note that an upgrade from v29 (or older) to v31 directly is not possible. Please upgrade to `nextcloud30` (or earlier) first. Nextcloud prohibits skipping major versions while upgrading. You can upgrade by declaring [`services.nextcloud.package = pkgs.nextcloud30;`](options.html#opt-services.nextcloud.package).
- `pkgs.nextcloud28` has been removed since it's out of support upstream.
- `buildGoModule` now passes environment variables via the `env` attribute. `CGO_ENABLED` should now be specified with `env.CGO_ENABLED` when passing to buildGoModule. Direct specification of `CGO_ENABLED` is now redirected by a compatibility layer with a warning, but will become an error in future releases.
Go-related environment variables previously shadowed by `buildGoModule` now results in errors when specified directly. Such variables include `GOOS` and `GOARCH`.
+1 -1
View File
@@ -5,7 +5,7 @@ self-hostable cloud platform. The server setup can be automated using
[services.nextcloud](#opt-services.nextcloud.enable). A
desktop client is packaged at `pkgs.nextcloud-client`.
The current default by NixOS is `nextcloud30` which is also the latest
The current default by NixOS is `nextcloud31` which is also the latest
major version available.
## Basic usage {#module-services-nextcloud-basic-usage}
@@ -303,7 +303,7 @@ in {
package = mkOption {
type = types.package;
description = "Which package to use for the Nextcloud instance.";
relatedPackages = [ "nextcloud29" "nextcloud30" ];
relatedPackages = [ "nextcloud29" "nextcloud30" "nextcloud31" ];
};
phpPackage = mkPackageOption pkgs "php" {
example = "php82";
@@ -838,7 +838,7 @@ in {
config = mkIf cfg.enable (mkMerge [
{ warnings = let
latest = 30;
latest = 31;
upgradeWarning = major: nixos:
''
A legacy Nextcloud install (from before NixOS ${nixos}) may be installed.
@@ -868,7 +868,9 @@ in {
++ (optional (versionOlder cfg.package.version "27") (upgradeWarning 26 "23.11"))
++ (optional (versionOlder cfg.package.version "28") (upgradeWarning 27 "24.05"))
++ (optional (versionOlder cfg.package.version "29") (upgradeWarning 28 "24.11"))
++ (optional (versionOlder cfg.package.version "30") (upgradeWarning 29 "24.11"));
++ (optional (versionOlder cfg.package.version "30") (upgradeWarning 29 "24.11"))
++ (optional (versionOlder cfg.package.version "31") (upgradeWarning 30 "25.05"))
;
services.nextcloud.package = with pkgs;
mkDefault (
@@ -880,7 +882,8 @@ in {
''
else if versionOlder stateVersion "24.05" then nextcloud27
else if versionOlder stateVersion "24.11" then nextcloud29
else nextcloud30
else if versionOlder stateVersion "25.05" then nextcloud30
else nextcloud31
);
services.nextcloud.phpPackage =
+1 -1
View File
@@ -110,4 +110,4 @@ let
./with-objectstore.nix
];
in
listToAttrs (concatMap genTests [ 29 30 ])
listToAttrs (concatMap genTests [ 29 30 31 ])
+7
View File
@@ -5,6 +5,7 @@
nixosTests,
nextcloud29Packages,
nextcloud30Packages,
nextcloud31Packages,
}:
let
@@ -70,6 +71,12 @@ in
packages = nextcloud30Packages;
};
nextcloud31 = generic {
version = "31.0.0";
hash = "sha256-b76weze7nPp8kb8bLfvPAxkFi25gSHweqht3frl2LZE=";
packages = nextcloud31Packages;
};
# tip: get the sha with:
# curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2 -1
View File
@@ -4283,10 +4283,11 @@ with pkgs;
nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { };
inherit (callPackages ../servers/nextcloud {})
nextcloud29 nextcloud30;
nextcloud29 nextcloud30 nextcloud31;
nextcloud29Packages = callPackage ../servers/nextcloud/packages { ncVersion = "29"; };
nextcloud30Packages = callPackage ../servers/nextcloud/packages { ncVersion = "30"; };
nextcloud31Packages = callPackage ../servers/nextcloud/packages { ncVersion = "31"; };
nextcloud-news-updater = callPackage ../servers/nextcloud/news-updater.nix { };