nextcloud20: drop
The version 20 of Nextcloud will be EOLed by the end of this month[1]. Since the recommended default (that didn't raise an eval-warning) on 21.05 was Nextcloud 21, this shouldn't affect too many people. In order to ensure that nobody does a (not working) upgrade across several major-versions of Nextcloud, I replaced the derivation of `nextcloud20` with a `throw` that provides instructions how to proceed. The only case that I consider "risky" is a setup upgraded from 21.05 (or older) with a `system.stateVersion` <21.11 and with `services.nextcloud.package` not explicitly declared in its config. To avoid that, I also left the `else-if` for `stateVersion < 21.03` which now sets `services.nextcloud.package` to `pkgs.nextcloud20` and thus leads to an eval-error. This condition can be removed as soon as 21.05 is EOL because then it's safe to assume that only 21.11. is used as stable release where no Nextcloud <=20 exists that can lead to such an issue. It can't be removed earlier because then every `system.stateVersion < 21.11` would lead to `nextcloud21` which is a problem if `nextcloud19` is still used. [1] https://docs.nextcloud.com/server/20/admin_manual/release_schedule.html
This commit is contained in:
parent
6b23e8fc78
commit
e1e15974f8
@ -1146,6 +1146,12 @@ Superuser created successfully.
|
||||
will no longer work and must be updated.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Nextcloud 20 (<literal>pkgs.nextcloud20</literal>) has been
|
||||
dropped because it was EOLed by upstream in 2021-10.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section xml:id="sec-release-21.11-notable-changes">
|
||||
|
@ -354,6 +354,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
- The `services.mosquitto` module has been rewritten to support multiple listeners and per-listener configuration.
|
||||
Module configurations from previous releases will no longer work and must be updated.
|
||||
|
||||
- Nextcloud 20 (`pkgs.nextcloud20`) has been dropped because it was EOLed by upstream in 2021-10.
|
||||
|
||||
## Other Notable Changes {#sec-release-21.11-notable-changes}
|
||||
|
||||
|
||||
|
@ -153,7 +153,7 @@ in {
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
description = "Which package to use for the Nextcloud instance.";
|
||||
relatedPackages = [ "nextcloud20" "nextcloud21" "nextcloud22" ];
|
||||
relatedPackages = [ "nextcloud21" "nextcloud22" ];
|
||||
};
|
||||
phpPackage = mkOption {
|
||||
type = types.package;
|
||||
@ -547,7 +547,6 @@ 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 "20") (upgradeWarning 19 "21.05"))
|
||||
++ (optional (versionOlder cfg.package.version "21") (upgradeWarning 20 "21.05"))
|
||||
++ (optional (versionOlder cfg.package.version "22") (upgradeWarning 21 "21.11"))
|
||||
++ (optional isUnsupportedMariadb ''
|
||||
@ -574,7 +573,11 @@ in {
|
||||
# This versionOlder statement remains set to 21.03 for backwards compatibility.
|
||||
# See https://github.com/NixOS/nixpkgs/pull/108899 and
|
||||
# https://github.com/NixOS/rfcs/blob/master/rfcs/0080-nixos-release-schedule.md.
|
||||
else if versionOlder stateVersion "21.03" then nextcloud19
|
||||
# FIXME(@Ma27) remove this else-if as soon as 21.05 is EOL! This is only here
|
||||
# to ensure that users who are on Nextcloud 19 with a stateVersion <21.05 with
|
||||
# no explicit services.nextcloud.package don't upgrade to v21 by accident (
|
||||
# nextcloud20 throws an eval-error because it's dropped).
|
||||
else if versionOlder stateVersion "21.03" then nextcloud20
|
||||
else if versionOlder stateVersion "21.11" then nextcloud21
|
||||
else nextcloud22
|
||||
);
|
||||
|
@ -18,4 +18,4 @@ foldl
|
||||
};
|
||||
})
|
||||
{}
|
||||
[ 20 21 22 ]
|
||||
[ 21 22 ]
|
||||
|
@ -33,20 +33,17 @@ let
|
||||
};
|
||||
};
|
||||
in {
|
||||
nextcloud19 = throw ''
|
||||
Nextcloud v19 has been removed from `nixpkgs` as the support for it was dropped
|
||||
by upstream in 2021-06. Please upgrade to at least Nextcloud v20 by
|
||||
declaring
|
||||
nextcloud20 = throw ''
|
||||
Nextcloud v20 has been removed from `nixpkgs` as the support for it was dropped
|
||||
by upstream in 2021-10. Please upgrade to at least Nextcloud v21 by declaring
|
||||
|
||||
services.nextcloud.package = pkgs.nextcloud20;
|
||||
services.nextcloud.package = pkgs.nextcloud21;
|
||||
|
||||
in your NixOS config.
|
||||
'';
|
||||
|
||||
nextcloud20 = generic {
|
||||
version = "20.0.13";
|
||||
sha256 = "15mi51aayi3m8brxc0w51mbxp4h3hjv14gr5mm7ch2930x655gg9";
|
||||
};
|
||||
WARNING: if you were on Nextcloud 19 on NixOS 21.05 you have to upgrade to Nextcloud 20
|
||||
first on 21.05 because Nextcloud doesn't support upgrades accross multiple major versions!
|
||||
'';
|
||||
|
||||
nextcloud21 = generic {
|
||||
version = "21.0.5";
|
||||
|
@ -7768,7 +7768,7 @@ with pkgs;
|
||||
grocy = callPackage ../servers/grocy { };
|
||||
|
||||
inherit (callPackage ../servers/nextcloud {})
|
||||
nextcloud19 nextcloud20 nextcloud21 nextcloud22;
|
||||
nextcloud20 nextcloud21 nextcloud22;
|
||||
|
||||
nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user