56 lines
1 KiB
Markdown
56 lines
1 KiB
Markdown
# Nextcloud
|
|
|
|
Example:
|
|
|
|
```nix
|
|
{ config, ... }:
|
|
{
|
|
sops.secrets = {
|
|
nextcloud-jwt = { };
|
|
nextcloud-oidc = { };
|
|
nextcloud-admin-password = { };
|
|
};
|
|
|
|
custom.nextcloud = {
|
|
enable = true;
|
|
|
|
hostName = "cloud.example.com";
|
|
adminUser = "administrator";
|
|
useAuthentikSSO = true;
|
|
|
|
secrets = {
|
|
adminPasswordFile = config.sops.secrets.nextcloud-admin-password.path;
|
|
jwtFile = config.sops.secrets.nextcloud-jwt.path;
|
|
oidcClientSecretFile = config.sops.secrets.nextcloud-oidc.path;
|
|
};
|
|
|
|
nginx.useACMEHost = "example.com";
|
|
|
|
anubis.enable = true;
|
|
|
|
authentik = {
|
|
hostName = "auth.example.com";
|
|
providerName = "My authentik provider";
|
|
blueprint.enable = true;
|
|
};
|
|
|
|
addons = {
|
|
apps = [
|
|
"mail"
|
|
"deck"
|
|
];
|
|
|
|
whiteboard = {
|
|
enable = true;
|
|
hostName = "whiteboad.example.com";
|
|
disableRecording = true;
|
|
};
|
|
|
|
eurooffice = {
|
|
enable = true;
|
|
hostName = "eurooffice.example.com";
|
|
};
|
|
};
|
|
};
|
|
}
|
|
```
|