48 lines
1.4 KiB
Nix
48 lines
1.4 KiB
Nix
{ pkgs
|
|
, ...}: let
|
|
host = "cloud.sf.514fpv.io";
|
|
in {
|
|
services.nextcloud = {
|
|
enable = true;
|
|
package = pkgs.nextcloud28;
|
|
extraApps = {
|
|
inherit (pkgs.nextcloud28Packages.apps)
|
|
notify_push impersonate spreed
|
|
contacts bookmarks deck polls notes forms
|
|
twofactor_webauthn;
|
|
};
|
|
home = "/nix/persist/service/nextcloud";
|
|
configureRedis = true;
|
|
webfinger = true;
|
|
maxUploadSize = "128G";
|
|
fastcgiTimeout = 300;
|
|
hostName = host;
|
|
phpExtraExtensions = all: with all; [ bz2 ];
|
|
database.createLocally = true;
|
|
config.dbtype = "pgsql";
|
|
config.adminuser = "koishi";
|
|
config.adminpassFile = builtins.toString (pkgs.writeText "password" "initial_password");
|
|
settings.overwriteprotocol = "https";
|
|
settings.maintenance_window_start = 17;
|
|
settings.default_phone_region = "US";
|
|
settings.default_language = "zh";
|
|
settings.default_locale = "zh_Hans_CN";
|
|
caching.redis = true;
|
|
phpOptions.upload_max_filesize = "128G";
|
|
phpOptions.post_max_size = "128G";
|
|
phpOptions.output_buffering = "0";
|
|
phpOptions."opcache.interned_strings_buffer" = "32";
|
|
https = true;
|
|
};
|
|
|
|
users.users.nextcloud.uid = 1022;
|
|
users.groups.nextcloud.gid = 1022;
|
|
|
|
services.nginx.virtualHosts.${host} = {
|
|
useACMEHost = ".sf.514fpv.io";
|
|
addSSL = true;
|
|
};
|
|
|
|
global.fs.zfs.mountpoints."/nix/persist/service/nextcloud" = "service/nextcloud";
|
|
}
|