Merge pull request #140188 from NixOS/backport-140159-to-release-21.05
[Backport release-21.05] nextcloud: misc changes
This commit is contained in:
commit
6385534d45
@ -6,7 +6,7 @@ let
|
|||||||
cfg = config.services.nextcloud;
|
cfg = config.services.nextcloud;
|
||||||
fpm = config.services.phpfpm.pools.nextcloud;
|
fpm = config.services.phpfpm.pools.nextcloud;
|
||||||
|
|
||||||
phpPackage = pkgs.php74.buildEnv {
|
phpPackage = cfg.phpPackage.buildEnv {
|
||||||
extensions = { enabled, all }:
|
extensions = { enabled, all }:
|
||||||
(with all;
|
(with all;
|
||||||
enabled
|
enabled
|
||||||
@ -94,6 +94,14 @@ in {
|
|||||||
description = "Which package to use for the Nextcloud instance.";
|
description = "Which package to use for the Nextcloud instance.";
|
||||||
relatedPackages = [ "nextcloud19" "nextcloud20" "nextcloud21" "nextcloud22" ];
|
relatedPackages = [ "nextcloud19" "nextcloud20" "nextcloud21" "nextcloud22" ];
|
||||||
};
|
};
|
||||||
|
phpPackage = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
relatedPackages = [ "php74" "php80" ];
|
||||||
|
defaultText = "pkgs.php";
|
||||||
|
description = ''
|
||||||
|
PHP package to use for Nextcloud.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
maxUploadSize = mkOption {
|
maxUploadSize = mkOption {
|
||||||
default = "512M";
|
default = "512M";
|
||||||
@ -450,6 +458,10 @@ in {
|
|||||||
else if versionOlder stateVersion "21.03" then nextcloud19
|
else if versionOlder stateVersion "21.03" then nextcloud19
|
||||||
else nextcloud21
|
else nextcloud21
|
||||||
);
|
);
|
||||||
|
|
||||||
|
services.nextcloud.phpPackage =
|
||||||
|
if versionOlder cfg.package.version "21" then pkgs.php74
|
||||||
|
else pkgs.php80;
|
||||||
}
|
}
|
||||||
|
|
||||||
{ systemd.timers.nextcloud-cron = {
|
{ systemd.timers.nextcloud-cron = {
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
import ../make-test-python.nix ({ pkgs, ...}: let
|
args@{ pkgs, nextcloudVersion ? 22, ... }:
|
||||||
|
|
||||||
|
(import ../make-test-python.nix ({ pkgs, ...}: let
|
||||||
adminpass = "notproduction";
|
adminpass = "notproduction";
|
||||||
adminuser = "root";
|
adminuser = "root";
|
||||||
in {
|
in {
|
||||||
@ -39,6 +41,7 @@ in {
|
|||||||
inherit adminpass;
|
inherit adminpass;
|
||||||
dbtableprefix = "nixos_";
|
dbtableprefix = "nixos_";
|
||||||
};
|
};
|
||||||
|
package = pkgs.${"nextcloud" + (toString nextcloudVersion)};
|
||||||
autoUpdateApps = {
|
autoUpdateApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
startAt = "20:00";
|
startAt = "20:00";
|
||||||
@ -100,4 +103,4 @@ in {
|
|||||||
)
|
)
|
||||||
assert "hi" in client.succeed("cat /mnt/dav/test-shared-file")
|
assert "hi" in client.succeed("cat /mnt/dav/test-shared-file")
|
||||||
'';
|
'';
|
||||||
})
|
})) args
|
||||||
|
@ -2,8 +2,20 @@
|
|||||||
config ? {},
|
config ? {},
|
||||||
pkgs ? import ../../.. { inherit system config; }
|
pkgs ? import ../../.. { inherit system config; }
|
||||||
}:
|
}:
|
||||||
{
|
|
||||||
basic = import ./basic.nix { inherit system pkgs; };
|
with pkgs.lib;
|
||||||
with-postgresql-and-redis = import ./with-postgresql-and-redis.nix { inherit system pkgs; };
|
|
||||||
with-mysql-and-memcached = import ./with-mysql-and-memcached.nix { inherit system pkgs; };
|
foldl
|
||||||
}
|
(matrix: ver: matrix // {
|
||||||
|
"basic${toString ver}" = import ./basic.nix { inherit system pkgs; nextcloudVersion = ver; };
|
||||||
|
"with-postgresql-and-redis${toString ver}" = import ./with-postgresql-and-redis.nix {
|
||||||
|
inherit system pkgs;
|
||||||
|
nextcloudVersion = ver;
|
||||||
|
};
|
||||||
|
"with-mysql-and-memcached${toString ver}" = import ./with-mysql-and-memcached.nix {
|
||||||
|
inherit system pkgs;
|
||||||
|
nextcloudVersion = ver;
|
||||||
|
};
|
||||||
|
})
|
||||||
|
{}
|
||||||
|
[ 20 21 22 ]
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
import ../make-test-python.nix ({ pkgs, ...}: let
|
args@{ pkgs, nextcloudVersion ? 22, ... }:
|
||||||
|
|
||||||
|
(import ../make-test-python.nix ({ pkgs, ...}: let
|
||||||
adminpass = "hunter2";
|
adminpass = "hunter2";
|
||||||
adminuser = "root";
|
adminuser = "root";
|
||||||
in {
|
in {
|
||||||
@ -18,6 +20,7 @@ in {
|
|||||||
enable = true;
|
enable = true;
|
||||||
hostName = "nextcloud";
|
hostName = "nextcloud";
|
||||||
https = true;
|
https = true;
|
||||||
|
package = pkgs.${"nextcloud" + (toString nextcloudVersion)};
|
||||||
caching = {
|
caching = {
|
||||||
apcu = true;
|
apcu = true;
|
||||||
redis = false;
|
redis = false;
|
||||||
@ -103,4 +106,4 @@ in {
|
|||||||
"${withRcloneEnv} ${diffSharedFile}"
|
"${withRcloneEnv} ${diffSharedFile}"
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
})
|
})) args
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
import ../make-test-python.nix ({ pkgs, ...}: let
|
args@{ pkgs, nextcloudVersion ? 22, ... }:
|
||||||
|
|
||||||
|
(import ../make-test-python.nix ({ pkgs, ...}: let
|
||||||
adminpass = "hunter2";
|
adminpass = "hunter2";
|
||||||
adminuser = "custom-admin-username";
|
adminuser = "custom-admin-username";
|
||||||
in {
|
in {
|
||||||
@ -17,6 +19,7 @@ in {
|
|||||||
services.nextcloud = {
|
services.nextcloud = {
|
||||||
enable = true;
|
enable = true;
|
||||||
hostName = "nextcloud";
|
hostName = "nextcloud";
|
||||||
|
package = pkgs.${"nextcloud" + (toString nextcloudVersion)};
|
||||||
caching = {
|
caching = {
|
||||||
apcu = false;
|
apcu = false;
|
||||||
redis = true;
|
redis = true;
|
||||||
@ -96,4 +99,4 @@ in {
|
|||||||
"${withRcloneEnv} ${diffSharedFile}"
|
"${withRcloneEnv} ${diffSharedFile}"
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
})
|
})) args
|
||||||
|
Loading…
Reference in New Issue
Block a user