diff --git a/roles/kodi/default.nix b/roles/kodi/default.nix index 5b8ef9a..b65a7b2 100644 --- a/roles/kodi/default.nix +++ b/roles/kodi/default.nix @@ -14,6 +14,11 @@ in wayland = mkOption { default = true; }; + jellyfinScaleFactor = mkOption { + type = types.nullOr types.float; + default = null; + description = "Scale factor for Jellyfin Media Player UI (e.g., 1.5 for 150% scaling)"; + }; appLauncherServer = { enable = mkOption { type = types.bool; @@ -37,6 +42,19 @@ in steam-library youtube ]); + + jellyfinMediaPlayerPkg = + if cfg.jellyfinScaleFactor != null + then pkgs.symlinkJoin { + name = "jellyfin-media-player-scaled"; + paths = [ pkgs.jellyfin-media-player ]; + buildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/jellyfinmediaplayer \ + --add-flags "--scale-factor ${toString cfg.jellyfinScaleFactor}" + ''; + } + else pkgs.jellyfin-media-player; in mkIf cfg.enable { users.extraUsers.kodi = { @@ -50,7 +68,7 @@ in }; environment.systemPackages = with pkgs; [ - jellyfin-media-player + jellyfinMediaPlayerPkg kodiPkg wget firefox