aboutsummaryrefslogtreecommitdiff
path: root/modules/media/default.nix
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-06-08 17:11:30 +0530
committerAkshay Nair <phenax5@gmail.com>2025-06-10 16:18:26 +0530
commit969a9a311d24548c6632ddcdc4f903ffa48c5ca6 (patch)
tree9e508610c3e077647cc39ceb398a8226be8c21d0 /modules/media/default.nix
parent93179e7a79ca08464b9e443df41383b487bda7e8 (diff)
downloadhomeserver-nixos-config-969a9a311d24548c6632ddcdc4f903ffa48c5ca6.tar.gz
homeserver-nixos-config-969a9a311d24548c6632ddcdc4f903ffa48c5ca6.zip
Init commit with shit that does it
Diffstat (limited to '')
-rw-r--r--modules/media/default.nix73
1 files changed, 73 insertions, 0 deletions
diff --git a/modules/media/default.nix b/modules/media/default.nix
new file mode 100644
index 0000000..0708d8e
--- /dev/null
+++ b/modules/media/default.nix
@@ -0,0 +1,73 @@
+{ pkgs, ... }:
+let
+ config = import ./config.nix;
+in
+{
+ systemd.tmpfiles.rules = [
+ "d ${config.mediaBaseDir} 0770 - ${config.group} - -"
+ "d ${config.downloadsDir} 0770 - ${config.group} - -"
+ "d ${config.tvDownloads} 0770 - ${config.group} - -"
+ "d ${config.moviesDownloads} 0770 - ${config.group} - -"
+ ];
+ users.groups."${config.group}" = { };
+ users.users.bacchus.extraGroups = [ config.group ];
+
+ services.sonarr = {
+ enable = true;
+ openFirewall = true;
+ group = config.group;
+ settings = {
+ server.port = config.sonarrPort;
+ auth.enabled = false;
+ };
+ };
+
+ services.radarr = {
+ enable = true;
+ openFirewall = true;
+ group = config.group;
+ settings = {
+ server.port = config.radarrPort;
+ auth.enabled = false;
+ };
+ };
+
+ services.prowlarr = {
+ enable = true;
+ openFirewall = true;
+ settings = {
+ server.port = config.prowlarrPort;
+ };
+ };
+
+ services.jellyfin = {
+ enable = true;
+ openFirewall = true;
+ group = config.group;
+ };
+
+ services.transmission = {
+ enable = true;
+ group = config.group;
+ settings = {
+ "download-dir" = config.downloadsDir;
+ "download-queue-enabled" = true;
+ "download-queue-size" = 5;
+ "peer-port" = 51413;
+ "peer-port-random-high" = 65535;
+ "peer-port-random-low" = 49152;
+ "prefetch-enabled" = true;
+ "rename-partial-files" = true;
+ "rpc-authentication-required" = false;
+ "rpc-bind-address" = "127.0.0.1";
+ "rpc-enabled" = true;
+ "rpc-port" = 9091;
+ "rpc-whitelist-enabled" = true;
+ "script-torrent-done-enabled" = false;
+ "start-added-torrents" = true;
+ "trash-original-torrent-files" = false;
+ "umask" = 18;
+ "utp-enabled" = true;
+ };
+ };
+}