diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix
index a4b886821eb..b44d8cbbba3 100644
--- a/nixos/modules/services/web-apps/nextcloud.nix
+++ b/nixos/modules/services/web-apps/nextcloud.nix
@@ -153,11 +153,11 @@ in {
package = mkOption {
type = types.package;
description = "Which package to use for the Nextcloud instance.";
- relatedPackages = [ "nextcloud22" "nextcloud23" ];
+ relatedPackages = [ "nextcloud22" "nextcloud23" "nextcloud24"];
};
phpPackage = mkOption {
type = types.package;
- relatedPackages = [ "php74" "php80" ];
+ relatedPackages = [ "php74" "php80" "php81"];
defaultText = "pkgs.php";
description = ''
PHP package to use for Nextcloud.
@@ -555,7 +555,7 @@ in {
config = mkIf cfg.enable (mkMerge [
{ warnings = let
- latest = 23;
+ latest = 24;
upgradeWarning = major: nixos:
''
A legacy Nextcloud install (from before NixOS ${nixos}) may be installed.
@@ -613,14 +613,15 @@ in {
''
else if versionOlder stateVersion "21.11" then nextcloud21
else if versionOlder stateVersion "22.05" then nextcloud22
- else nextcloud23
+ else nextcloud24
);
services.nextcloud.datadir = mkOptionDefault config.services.nextcloud.home;
services.nextcloud.phpPackage =
if versionOlder cfg.package.version "21" then pkgs.php74
- else pkgs.php80;
+ else if versionOlder cfg.package.version "24" then pkgs.php80
+ else pkgs.php81;
}
{ assertions = [
diff --git a/nixos/modules/services/web-apps/nextcloud.xml b/nixos/modules/services/web-apps/nextcloud.xml
index 8f55086a2bd..b46f34420a7 100644
--- a/nixos/modules/services/web-apps/nextcloud.xml
+++ b/nixos/modules/services/web-apps/nextcloud.xml
@@ -11,7 +11,7 @@
desktop client is packaged at pkgs.nextcloud-client.
- The current default by NixOS is nextcloud23 which is also the latest
+ The current default by NixOS is nextcloud24 which is also the latest
major version available.
diff --git a/nixos/tests/nextcloud/default.nix b/nixos/tests/nextcloud/default.nix
index b7b1c5c6600..76feac314d5 100644
--- a/nixos/tests/nextcloud/default.nix
+++ b/nixos/tests/nextcloud/default.nix
@@ -18,4 +18,4 @@ foldl
};
})
{ }
- [ 22 23 ]
+ [ 22 23 24 ]
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index e71fb9db115..5b88481d1d2 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -54,6 +54,12 @@ in {
version = "23.0.4";
sha256 = "67191c2b8b41591ae42accfb32216313fde0e107201682cb39029f890712bc6a";
};
+
+ nextcloud24 = generic {
+ version = "24.0.0";
+ sha256 = "176cb5620f20465fb4759bdf3caaebeb7acff39d6c8630351af9f8738c173780";
+ };
+
# tip: get she sha with:
# curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8172605a210..2ec1dbc6a02 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8600,7 +8600,7 @@ with pkgs;
grocy = callPackage ../servers/grocy { };
inherit (callPackage ../servers/nextcloud {})
- nextcloud21 nextcloud22 nextcloud23;
+ nextcloud21 nextcloud22 nextcloud23 nextcloud24;
nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { };