feat: Added jellyfin for shiro

This commit is contained in:
uttarayan21
2025-06-13 21:46:40 +05:30
parent 4708f79799
commit 7b87c7071f
4 changed files with 47 additions and 38 deletions

View File

@@ -1,13 +1,13 @@
{...}: {
# imports = [../../../modules/jellyfin.nix];
# services = {
# jellyfin = {
# enable = false;
# };
# # caddy = {
# # virtualHosts."media.darksailor.dev".extraConfig = ''
# # reverse_proxy localhost:8096
# # '';
# # };
# };
imports = [../../../modules/macos/jellyfin.nix];
services = {
jellyfin = {
enable = true;
};
# caddy = {
# virtualHosts."media.darksailor.dev".extraConfig = ''
# reverse_proxy localhost:8096
# '';
# };
};
}

View File

@@ -1,4 +1,10 @@
{pkgs, ...}: {
{pkgs, ...}: let
mkScript = scriptFile: deps: (pkgs.writeShellApplication {
runtimeInputs = deps;
name = builtins.baseNameOf scriptFile;
text = builtins.readFile scriptFile;
});
in {
home.packages = [
(pkgs.writeShellApplication
{
@@ -26,5 +32,7 @@
exec $EDITOR "$1"
'';
})
(mkScript ../scripts/yt-dlp.sh (with pkgs; [yt-dlp]))
(mkScript ../scripts/autossh.sh (with pkgs; [autossh openssh]))
];
}

View File

@@ -37,39 +37,40 @@ in {
};
config = mkIf cfg.enable {
users.users.jellyfin = {
name = "jellyfin";
uid = mkDefault 601;
gid = mkDefault config.users.groups.jellyfin.gid;
home = cfg.dataDir;
createHome = true;
shell = "/bin/bash";
description = "Jellyfin runner user account";
};
users.groups.jellyfin = {
name = "jellyfin";
gid = mkDefault 602;
description = "Jellyfin runner group";
};
# users.users.jellyfin = {
# name = "jellyfin";
# uid = mkDefault 601;
# gid = mkDefault config.users.groups.jellyfin.gid;
# home = cfg.dataDir;
# createHome = true;
# shell = "/bin/bash";
# description = "Jellyfin runner user account";
# };
# users.groups.jellyfin = {
# name = "jellyfin";
# gid = mkDefault 602;
# description = "Jellyfin runner group";
# };
environment.systemPackages = [cfg.package];
launchd.daemons.jellyfin = {
environment = {
HOME = cfg.dataDir;
};
# environment = {
# HOME = cfg.dataDir;
# };
path = [cfg.package pkgs.coreutils pkgs.darwin.DarwinTools];
command = "${lib.getExe cfg.package}";
serviceConfig = {
UserName = "servius";
# ProcessType = "Background";
Label = "org.jellyfin.server";
RunAtLoad = true;
# KeepAlive = true;
UserName = "${config.users.users.jellyfin.name}";
GroupName = "${config.users.groups.jellyfin.name}";
StandardOutPath = "${cfg.dataDir}/log/jellyfin.log";
StandardErrorPath = "${cfg.dataDir}/log/jellyfin.error.log";
WorkingDirectory = cfg.dataDir;
# Label = "org.jellyfin.server";
# RunAtLoad = true;
KeepAlive = true;
# UserName = "${config.users.users.jellyfin.name}";
# GroupName = "${config.users.groups.jellyfin.name}";
# StandardOutPath = "${cfg.dataDir}/log/jellyfin.log";
# StandardErrorPath = "${cfg.dataDir}/log/jellyfin.error.log";
# WorkingDirectory = cfg.dataDir;
};
};
};

View File

@@ -1,2 +1,2 @@
#!/bin/bash
yt-dlp --proxy socks5://127.0.0.1:1080 $@
yt-dlp --proxy socks5://127.0.0.1:1080 "$@"