nextcloud: expose nextcloudXXPackages as nextcloudXX.packages

That way you can add packages like this in your `configuration.nix(8)`:

    extraApps = with config.services.nextcloud.package.packages.apps; {
      inherit calendar contacts;
    };

I.e. it's not necessary anymore to update the reference anymore when
upgrading to a new major.
This commit is contained in:
Maximilian Bosch 2023-06-16 16:46:29 +02:00
parent 3c7af053f2
commit 67d1f272af
No known key found for this signature in database
GPG key ID: 9A6EEA275CA5BE0A

View file

@ -1,9 +1,14 @@
{ lib, stdenv, fetchurl, nixosTests }:
{ lib, stdenv, fetchurl, nixosTests
, nextcloud27Packages
, nextcloud26Packages
, nextcloud25Packages
}:
let
generic = {
version, sha256,
eol ? false, extraVulnerabilities ? []
version, sha256
, eol ? false, extraVulnerabilities ? []
, packages
}: let
major = lib.versions.major version;
in stdenv.mkDerivation rec {
@ -18,7 +23,10 @@ let
# This patch is only necessary for NC version <26.
patches = lib.optional (lib.versionOlder major "26") (./patches + "/v${major}/0001-Setup-remove-custom-dbuser-creation-behavior.patch");
passthru.tests = nixosTests.nextcloud;
passthru = {
tests = nixosTests.nextcloud;
inherit packages;
};
installPhase = ''
runHook preInstall
@ -54,16 +62,19 @@ in {
nextcloud25 = generic {
version = "25.0.7";
sha256 = "sha256-LpAUcSXW1riFpW3PnAC774tKE1PNE6ypVRXZlnZvNF8=";
packages = nextcloud25Packages;
};
nextcloud26 = generic {
version = "26.0.2";
sha256 = "sha256-89sOxeCq/3wIjrNPdS1315kTvGeE4PxHqEzaoo5WejM=";
packages = nextcloud26Packages;
};
nextcloud27 = generic {
version = "27.0.0";
sha256 = "sha256-PTEqCbk0WsBYdY3XtAWb888LHw8ddHJRtvrDWFumUz8=";
packages = nextcloud27Packages;
};
# tip: get the sha with: