48 lines
1.1 KiB
Nix
48 lines
1.1 KiB
Nix
{ lib, config, pkgs, ... }:
|
|
let
|
|
serviceBase = {
|
|
enable = true;
|
|
group = "piracy";
|
|
};
|
|
enableDocker = lib.any (opt: opt) [
|
|
config.my.servers.collabora.enable
|
|
config.my.servers.go-vod.enable
|
|
];
|
|
in {
|
|
imports = [
|
|
(import ./servers/jellyfin.nix { inherit lib config pkgs serviceBase; })
|
|
(import ./servers/nextcloud.nix { inherit lib config pkgs serviceBase; })
|
|
];
|
|
options.my.servers.settings = {
|
|
localhost = "127.0.0.1";
|
|
domain = "servidos.lat";
|
|
postgresSocket = "/run/postgresql";
|
|
};
|
|
config = {
|
|
my.servers = {
|
|
jellyfin = {
|
|
enable = lib.mkDefault false;
|
|
enableCron = lib.mkDefault false;
|
|
};
|
|
nextcloud = {
|
|
enable = lib.mkDefault false;
|
|
enableCron = lib.mkDefault false;
|
|
};
|
|
collabora.enable = lib.mkDefault false;
|
|
go-vod.enable = lib.mkDefault false;
|
|
};
|
|
virtualisation = lib.mkIf enableDocker {
|
|
oci-containers.backend = "docker";
|
|
docker = {
|
|
enable = true;
|
|
enableNvidia = true;
|
|
autoPrune = {
|
|
enable = true;
|
|
flags = [ "--all" ];
|
|
dates = "weekly";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|