/ system / nixos / server / default.nix
default.nix
 1  args@{
 2    config,
 3    inputs,
 4    lib,
 5    ...
 6  }:
 7  let
 8    inherit (lib) mkOption types;
 9  in
10  {
11    options.dusk.folders.media = {
12      root = mkOption {
13        type = types.str;
14        default = "${config.dusk.folders.downloads}/Media";
15        description = "The root folder for downloaded media, like books, movies, TV shows.";
16      };
17  
18      data = mkOption {
19        type = types.str;
20        default = "${config.dusk.folders.media.root}/_data";
21        description = "The folder where download aplications will keep their data (for easy back-up).";
22      };
23    };
24  
25    imports = [
26      inputs.agenix.nixosModules.default
27  
28      (import ./deluge.nix args)
29      (import ./gitea.nix args)
30      (import ./jellyfin.nix args)
31      (import ./lidarr.nix args)
32      (import ./navidrome.nix args)
33      (import ./prowlarr.nix args)
34      (import ./readarr.nix args)
35      (import ./traefik.nix args)
36    ];
37  }