nixos/nextcloud: drop nextcloud17, deprecate nextcloud18

Both packages will get EOLed within the lifetime of 20.09. `nextcloud17`
can be removed entirely (the attribute-path is kept however to provide
meaningful errors), however `nextcloud18` must be kept as `insecure` to
make sure that users from `nextcloud17` can properly upgrade to
`nextcloud19` on NixOS 20.09.
This commit is contained in:
Maximilian Bosch 2020-09-20 19:06:37 +02:00
parent 731d55baad
commit 6b48deee54
No known key found for this signature in database
GPG key ID: 091DBF4D1FC46B8E
3 changed files with 39 additions and 6 deletions

View file

@ -834,6 +834,31 @@ CREATE ROLE postgres LOGIN SUPERUSER;
functionally redundent. functionally redundent.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The package <package>nextcloud17</package> has been removed and <package>nextcloud18</package> was marked as insecure
since both of them will <link xlink:href="https://docs.nextcloud.com/server/19/admin_manual/release_schedule.html">
will be EOL (end of life) within the lifetime of 20.09</link>.
</para>
<para>
It's necessary to upgrade to <package>nextcloud19</package>:
<itemizedlist>
<listitem>
<para>
From <package>nextcloud17</package>, you have to upgrade to <package>nextcloud18</package> first as
Nextcloud doesn't allow going multiple major revisions forward in a single upgrade. This is possible
by setting <xref linkend="opt-services.nextcloud.package" /> to <package>nextcloud18</package>.
</para>
</listitem>
<listitem>
<para>
From <package>nextcloud18</package>, it's possible to directly upgrade to <package>nextcloud19</package>
by setting <xref linkend="opt-services.nextcloud.package" /> to <package>nextcloud19</package>.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View file

@ -85,7 +85,7 @@ in {
package = mkOption { package = mkOption {
type = types.package; type = types.package;
description = "Which package to use for the Nextcloud instance."; description = "Which package to use for the Nextcloud instance.";
relatedPackages = [ "nextcloud17" "nextcloud18" "nextcloud19" ]; relatedPackages = [ "nextcloud18" "nextcloud19" ];
}; };
maxUploadSize = mkOption { maxUploadSize = mkOption {
@ -354,7 +354,7 @@ in {
recommended to upgrade to nextcloud19 after that. recommended to upgrade to nextcloud19 after that.
'') '')
++ (optional (versionOlder cfg.package.version "19") '' ++ (optional (versionOlder cfg.package.version "19") ''
A legacy Nextcloud install (from before NixOS 20.09/unstable) may be installed. A legacy Nextcloud install (from before NixOS 20.09) may be installed.
If/After nextcloud18 is installed successfully, you can safely upgrade to If/After nextcloud18 is installed successfully, you can safely upgrade to
nextcloud19. If not, please upgrade to nextcloud18 first since Nextcloud doesn't nextcloud19. If not, please upgrade to nextcloud18 first since Nextcloud doesn't

View file

@ -27,14 +27,22 @@ let
}; };
}; };
in { in {
nextcloud17 = generic { nextcloud17 = throw ''
version = "17.0.6"; Nextcloud v17 has been removed from `nixpkgs` as the support for it will be dropped
sha256 = "0qq7lkgzsn1zakfym5bjqzpcisxmgfcdd927ddqlhddy3zvgxrxx"; by upstream within the lifetime of NixOS 20.09[1]. Please upgrade to Nextcloud v18 by
}; declaring
services.nextcloud.package = pkgs.nextcloud18;
in your NixOS config.
[1] https://docs.nextcloud.com/server/18/admin_manual/release_schedule.html
'';
nextcloud18 = generic { nextcloud18 = generic {
version = "18.0.9"; version = "18.0.9";
sha256 = "0rigg5pv2vnxgmjznlvxfc41s00raxa8jhib5vsznhj55qn99jm1"; sha256 = "0rigg5pv2vnxgmjznlvxfc41s00raxa8jhib5vsznhj55qn99jm1";
insecure = true;
}; };
nextcloud19 = generic { nextcloud19 = generic {