Compare commits
2 Commits
50fd0cc57f
...
24c1731071
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
24c1731071 | ||
|
|
ab94e2c1eb |
@@ -15,7 +15,6 @@ in
|
|||||||
nginx.enable = true;
|
nginx.enable = true;
|
||||||
syncthing.enable = true;
|
syncthing.enable = true;
|
||||||
restic.enable = true;
|
restic.enable = true;
|
||||||
transmission.enable = true;
|
|
||||||
audiobookshelf.enable = true;
|
audiobookshelf.enable = true;
|
||||||
calibre-web.enable = true;
|
calibre-web.enable = true;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,87 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
nginxEnabled = config.mod.nginx.enable;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
fileSystems."/home/alex/media" = {
|
|
||||||
device = "/dev/disk/by-uuid/ad4acc0f-172c-40f8-8473-777c957e8764";
|
|
||||||
fsType = "ext4";
|
|
||||||
options = [ "nofail" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
# 1. enable vaapi on OS-level
|
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
|
||||||
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware = {
|
|
||||||
graphics = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
extraPackages = with pkgs; [
|
|
||||||
intel-media-driver
|
|
||||||
intel-vaapi-driver # previously vaapiIntel
|
|
||||||
vaapiVdpau
|
|
||||||
libvdpau-va-gl
|
|
||||||
intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in)
|
|
||||||
vpl-gpu-rt # QSV on 11th gen or newer
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
|
||||||
jellyfin = {
|
|
||||||
enable = true;
|
|
||||||
openFirewall = true;
|
|
||||||
|
|
||||||
user = "alex";
|
|
||||||
group = "users";
|
|
||||||
|
|
||||||
dataDir = "/home/alex/media/jellyfin";
|
|
||||||
};
|
|
||||||
|
|
||||||
prowlarr.enable = true;
|
|
||||||
|
|
||||||
sonarr = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
user = "alex";
|
|
||||||
group = "users";
|
|
||||||
};
|
|
||||||
|
|
||||||
radarr = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
user = "alex";
|
|
||||||
group = "users";
|
|
||||||
};
|
|
||||||
|
|
||||||
jellyseerr.enable = true;
|
|
||||||
|
|
||||||
nginx = lib.mkIf nginxEnabled {
|
|
||||||
virtualHosts."jelly.ppp.pm" = {
|
|
||||||
locations = {
|
|
||||||
"/" = {
|
|
||||||
proxyPass = "http://127.0.0.1:8096";
|
|
||||||
};
|
|
||||||
|
|
||||||
"/socket" = {
|
|
||||||
proxyPass = "http://127.0.0.1:8096";
|
|
||||||
proxyWebsockets = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages = [
|
|
||||||
pkgs.jellyfin
|
|
||||||
pkgs.jellyfin-web
|
|
||||||
pkgs.jellyfin-ffmpeg
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
enabled = config.mod.transmission.enable;
|
|
||||||
|
|
||||||
nginxEnabled = config.mod.nginx.enable;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options = {
|
|
||||||
mod.transmission = {
|
|
||||||
enable = lib.mkEnableOption "enable transmission module";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf enabled {
|
|
||||||
services = {
|
|
||||||
transmission = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.transmission_4;
|
|
||||||
|
|
||||||
user = "alex";
|
|
||||||
group = "users";
|
|
||||||
|
|
||||||
home = "/home/alex/media/ts-home";
|
|
||||||
downloadDirPermissions = "775";
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
rpc-bind-address = "0.0.0.0";
|
|
||||||
rpc-port = 9191;
|
|
||||||
|
|
||||||
incomplete-dir-enabled = false;
|
|
||||||
download-dir = "/home/alex/media/downloads";
|
|
||||||
|
|
||||||
rpc-authentication-required = true;
|
|
||||||
rpc-whitelist-enabled = false;
|
|
||||||
rpc-username = "transmission";
|
|
||||||
rpc-password = "{55d884e4042db67313da49e05d7089a368eb64b3Br.3X.Xi";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nginx = lib.mkIf nginxEnabled {
|
|
||||||
virtualHosts."ts.ppp.pm" = {
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "http://localhost:9191";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user