This repository has been archived by the owner on Jan 12, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathnextcloud.nix
80 lines (79 loc) · 2.26 KB
/
nextcloud.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
{ config, pkgs, ... }:
{
imports = [
"${
fetchTarball {
url = "https://github.com/onny/nixos-nextcloud-testumgebung/archive/fa6f062830b4bc3cedb9694c1dbf01d5fdf775ac.tar.gz";
sha256 = "0gzd0276b8da3ykapgqks2zhsqdv4jjvbv97dsxg0hgrhb74z0fs";
}
}/nextcloud-extras.nix"
];
age.secrets.smtpnextcloud = {
file = ./secrets/smtp.age;
owner = "nextcloud";
group = "nextcloud";
};
age.secrets.nextcloud = {
file = ./secrets/nextcloud.age;
owner = "nextcloud";
group = "nextcloud";
};
age.secrets.nextcloud-secrets = {
file = ./secrets/nextcloud-secrets.age;
owner = "nextcloud";
group = "nextcloud";
};
services.nextcloud = {
enable = true;
configureRedis = true;
package = pkgs.nextcloud30;
hostName = "cloud.pilz.foo";
appstoreEnable = true;
autoUpdateApps.enable = true;
database.createLocally = true;
secretFile = config.age.secrets.nextcloud-secrets.path;
extraApps = {
inherit (config.services.nextcloud.package.packages.apps) contacts calendar;
};
extraAppsEnable = true;
# ensureUsers = {
# pilz = {
# email = "marie0@riseup.net";
# passwordFile = config.age.secrets.nextcloud.path;
# };
# ${config.services.prometheus.exporters.nextcloud.username} = {
# email = "nextcloud-exporter@ketamin.trade";
# passwordFile = config.age.secrets.nextcloud-exporter.path;
# };
# };
settings = {
mail_smtpmode = "smtp";
mail_smtphost = "mail.cock.li";
mail_smtpport = 465;
mail_smtptimeout = 30;
mail_smtpsecure = "ssl";
mail_smtpauth = true;
mail_smtpname = "t3st1ng1312@cock.li";
mail_domain = "cock.li";
mail_from_address = "t3st1ng1312";
# mail_smtppassword = builtins.readFile config.age.secrets.smtpnextcloud.path; # set via secretfile
};
config = {
adminpassFile = config.age.secrets.nextcloud.path;
adminuser = "admin";
};
settings = {
trustedProxies = [
"localhost"
"127.0.0.1"
"[::1]"
"${config.services.nextcloud.hostName}"
];
extraTrustedDomains = [
"${config.services.nextcloud.hostName}"
"localhost"
];
overwriteProtocol = "https";
};
};
}