nextcloud25: init

This commit is contained in:
Maximilian Bosch 2022-10-23 16:31:22 +02:00
parent 5fe6c0f869
commit 40b7f52b8f
No known key found for this signature in database
GPG Key ID: 9A6EEA275CA5BE0A
7 changed files with 71 additions and 26 deletions

View File

@ -975,6 +975,48 @@
re-enabled it.
</para>
</listitem>
<listitem>
<para>
Nextcloud has been updated to version
<emphasis role="strong">25</emphasis>. Additionally the
following things have changed for Nextcloud in NixOS:
</para>
<itemizedlist spacing="compact">
<listitem>
<para>
For Nextcloud <emphasis role="strong">&gt;=24</emphasis>,
the default PHP version is 8.1.
</para>
</listitem>
<listitem>
<para>
Nextcloud <emphasis role="strong">23</emphasis> has been
removed since it will reach its
<link xlink:href="https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule/d76576a12a626d53305d480a6065b57cab705d3d">end
of life in December 2022</link>.
</para>
</listitem>
<listitem>
<para>
For <literal>system.stateVersion</literal> being
<emphasis role="strong">&gt;=22.11</emphasis>, Nextcloud
25 will be installed by default. For older versions,
Nextcloud 24 will be installed.
</para>
</listitem>
<listitem>
<para>
Please ensure that you only upgrade on major release at a
time! Nextcloud doesnt support upgrades across multiple
versions, i.e. an upgrade from
<emphasis role="strong">23</emphasis> to
<emphasis role="strong">25</emphasis> is only possible
when upgrading to <emphasis role="strong">24</emphasis>
first.
</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>
Add udev rules for the Teensy family of microcontrollers.

View File

@ -306,6 +306,16 @@ Available as [services.patroni](options.html#opt-services.patroni.enable).
- The udisks2 service, available at `services.udisks2.enable`, is now disabled by default. It will automatically be enabled through services and desktop environments as needed.
This also means that polkit will now actually be disabled by default. The default for `security.polkit.enable` was already flipped in the previous release, but udisks2 being enabled by default re-enabled it.
- Nextcloud has been updated to version **25**. Additionally the following things have changed
for Nextcloud in NixOS:
- For Nextcloud **>=24**, the default PHP version is 8.1.
- Nextcloud **23** has been removed since it will reach its [end of life in December 2022](https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule/d76576a12a626d53305d480a6065b57cab705d3d).
- For `system.stateVersion` being **>=22.11**, Nextcloud 25 will be installed by default. For older versions,
Nextcloud 24 will be installed.
- Please ensure that you only upgrade on major release at a time! Nextcloud doesn't support
upgrades across multiple versions, i.e. an upgrade from **23** to **25** is only possible
when upgrading to **24** first.
- Add udev rules for the Teensy family of microcontrollers.
- systemd-oomd is enabled by default. Depending on which systemd units have

View File

@ -156,7 +156,7 @@ in {
package = mkOption {
type = types.package;
description = lib.mdDoc "Which package to use for the Nextcloud instance.";
relatedPackages = [ "nextcloud23" "nextcloud24" ];
relatedPackages = [ "nextcloud24" "nextcloud25" ];
};
phpPackage = mkOption {
type = types.package;
@ -637,10 +637,9 @@ in {
Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release.
Please migrate your configuration to config.services.nextcloud.poolSettings.
'')
++ (optional (versionOlder cfg.package.version "21") (upgradeWarning 20 "21.05"))
++ (optional (versionOlder cfg.package.version "22") (upgradeWarning 21 "21.11"))
++ (optional (versionOlder cfg.package.version "23") (upgradeWarning 22 "22.05"))
++ (optional (versionOlder cfg.package.version "24") (upgradeWarning 23 "22.05"))
++ (optional (versionOlder cfg.package.version "25") (upgradeWarning 24 "22.11"))
++ (optional isUnsupportedMariadb ''
You seem to be using MariaDB at an unsupported version (i.e. at least 10.6)!
Please note that this isn't supported officially by Nextcloud. You can either
@ -661,19 +660,13 @@ in {
nextcloud defined in an overlay, please set `services.nextcloud.package` to
`pkgs.nextcloud`.
''
else if versionOlder stateVersion "22.05" then nextcloud22
else nextcloud24
else if versionOlder stateVersion "22.11" then nextcloud24
else nextcloud25
);
services.nextcloud.phpPackage =
if versionOlder cfg.package.version "24" then pkgs.php80
# FIXME: Use PHP 8.1 with Nextcloud 24 and higher, once issues like this one are fixed:
#
# https://github.com/nextcloud/twofactor_totp/issues/1192
#
# else if versionOlder cfg.package.version "24" then pkgs.php80
# else pkgs.php81;
else pkgs.php80;
else pkgs.php81;
}
{ assertions = [

View File

@ -11,7 +11,7 @@
desktop client is packaged at <literal>pkgs.nextcloud-client</literal>.
</para>
<para>
The current default by NixOS is <package>nextcloud24</package> which is also the latest
The current default by NixOS is <package>nextcloud25</package> which is also the latest
major version available.
</para>
<section xml:id="module-services-nextcloud-basic-usage">

View File

@ -22,4 +22,4 @@ foldl
};
})
{ }
[ 23 24 ]
[ 24 25 ]

View File

@ -35,28 +35,28 @@ let
};
};
in {
nextcloud22 = throw ''
Nextcloud v22 has been removed from `nixpkgs` as the support for is dropped
by upstream in 2022-07. Please upgrade to at least Nextcloud v23 by declaring
nextcloud23 = throw ''
Nextcloud v23 has been removed from `nixpkgs` as the support for is dropped
by upstream in 2022-12. Please upgrade to at least Nextcloud v24 by declaring
services.nextcloud.package = pkgs.nextcloud23;
services.nextcloud.package = pkgs.nextcloud24;
in your NixOS config.
WARNING: if you were on Nextcloud 21 on NixOS 21.11 you have to upgrade to Nextcloud 22
first on 21.11 because Nextcloud doesn't support upgrades accross multiple major versions!
WARNING: if you were on Nextcloud 22 on NixOS 22.05 you have to upgrade to Nextcloud 23
first on 22.05 because Nextcloud doesn't support upgrades accross multiple major versions!
'';
nextcloud23 = generic {
version = "23.0.10";
sha256 = "c68cff7f40b1e73e8d173f068e7d9c02d37e3f94a6a36a556a49c3ff5def4267";
};
nextcloud24 = generic {
version = "24.0.6";
sha256 = "b26dff9980a47e7e722805fdbbf87e07f59a3817b03ecc32698e028e9baf0301";
};
nextcloud25 = generic {
version = "25.0.0";
sha256 = "2c05ac9d7b72b44ef8b3d2ae03ff0fd6121e254b8054556f5163bd8760dd8f49";
};
# tip: get the sha with:
# curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
}

View File

@ -9481,7 +9481,7 @@ with pkgs;
grocy = callPackage ../servers/grocy { };
inherit (callPackage ../servers/nextcloud {})
nextcloud22 nextcloud23 nextcloud24;
nextcloud23 nextcloud24 nextcloud25;
nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { };