add(jellyfin): immersion mode

immersion turns off all other monitor. great for movies
This commit is contained in:
kenji
2026-07-03 20:54:02 -05:00
parent fd1bea0e6e
commit 1b06c411ef
3 changed files with 63 additions and 7 deletions
+11 -7
View File
@@ -1,15 +1,18 @@
{pkgs, ...}: {
imports = [
./immersion.nix
];
services.jellyfin-mpv-shim = {
enable = true;
package = pkgs.jellyfin-mpv-shim;
mpvConfig = {
osc = false;
osd-bar = false;
load-scripts = true;
input-vo-keyboard = true;
input-default-bindings = true;
# Automatic subtitle selection logic:
# Prefer English subtitles
slang = "eng,en";
@@ -29,12 +32,12 @@
use_mpv_config = false;
enable_osc = false;
menu_mouse = true;
# Shim specific auto-sub logic
# "subs-fallback" is a known good setting for the shim to handle this
subtitle_color = "#FFFFFFFF";
subtitle_size = 100;
audio_output = "hdmi";
auto_play = true;
fullscreen = true;
@@ -54,14 +57,14 @@
home.file.".config/jellyfin-mpv-shim/scripts/autocrop.lua" = {
source = "${pkgs.mpvScripts.autocrop}/share/mpv/scripts/autocrop.lua";
};
home.file.".config/jellyfin-mpv-shim/fonts" = {
source = "${pkgs.mpvScripts.uosc}/share/fonts";
recursive = true;
};
wayland.windowManager.hyprland.settings = {
exec-once = [ "systemctl --user start jellyfin-mpv-shim" ];
exec-once = ["systemctl --user start jellyfin-mpv-shim"];
windowrule = [
# --- JELLYFIN MPV SHIM ---
"match:class ^(jellyfin-mpv-shim)$, float on"
@@ -72,4 +75,5 @@
"match:class ^(jellyfin-mpv-shim)$, no_blur on"
];
};
}
}