about summary refs log tree commit diff
path: root/modules/mpv.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/mpv.nix')
-rw-r--r--modules/mpv.nix252
1 files changed, 128 insertions, 124 deletions
diff --git a/modules/mpv.nix b/modules/mpv.nix
index f8278e1..7fb692b 100644
--- a/modules/mpv.nix
+++ b/modules/mpv.nix
@@ -95,138 +95,142 @@ in
         audio ++ video ++ image;
     };
 
-    hm.programs.mpv = {
-      enable = true;
-
-      package = pkgs.mpv.override {
-        scripts = with pkgs.mpvScripts; [
-          autoload
-          mpv-cheatsheet
-          mpv-webm
-          sponsorblock
-          thumbfast
-          uosc
-          webtorrent-mpv-hook
-        ];
-      };
-
-      bindings = {
-        "RIGHT" = "seek 10";
-        "LEFT" = "seek -10";
-        "UP" = "seek 60";
-        "DOWN" = "seek -60";
-
-        "Shift+RIGHT" = "no-osd seek 1 exact";
-        "Shift+LEFT" = "no-osd seek -1 exact";
-        "Shift+UP" = "no-osd seek 5 exact";
-        "Shift+DOWN" = "no-osd seek -5 exact";
+    hm = {
+      stylix.targets.mpv.enable = false;
+
+      programs.mpv = {
+        enable = true;
+
+        package = pkgs.mpv.override {
+          scripts = with pkgs.mpvScripts; [
+            autoload
+            mpv-cheatsheet
+            mpv-webm
+            sponsorblock
+            thumbfast
+            uosc
+            webtorrent-mpv-hook
+          ];
+        };
 
-        "Alt+h" = "add sub-delay +1";
-        "Alt+l" = "add sub-delay -1";
+        bindings = {
+          "RIGHT" = "seek 10";
+          "LEFT" = "seek -10";
+          "UP" = "seek 60";
+          "DOWN" = "seek -60";
 
-        "Alt+k" = "add sub-scale +0.1";
-        "Alt+j" = "add sub-scale -0.1";
+          "Shift+RIGHT" = "no-osd seek 1 exact";
+          "Shift+LEFT" = "no-osd seek -1 exact";
+          "Shift+UP" = "no-osd seek 5 exact";
+          "Shift+DOWN" = "no-osd seek -5 exact";
 
-        "B" = ''cycle-values background "#000000" "#ffffff"'';
-      };
+          "Alt+h" = "add sub-delay +1";
+          "Alt+l" = "add sub-delay -1";
 
-      profiles = {
-        "protocol.http".force-window = "immediate";
-        "protocol.https".profile = "protocol.http";
+          "Alt+k" = "add sub-scale +0.1";
+          "Alt+j" = "add sub-scale -0.1";
 
-        "extension.gif" = {
-          cache = false;
-          loop-file = true;
-        };
-        "extension.png" = {
-          profile = "extension.gif";
-          video-aspect-override = 0;
+          "B" = ''cycle-values background "#000000" "#ffffff"'';
         };
-        "extension.jpeg".profile = "extension.png";
-        "extension.jpg".profile = "extension.png";
-      };
 
-      config =
-        let
-          lang = lib.concatStringsSep "," [
-            "Japanese"
-            "japanese"
-            "jp"
-            "jpn"
-            "jaJP"
-            "ja-JP"
-            "English"
-            "english"
-            "en"
-            "eng"
-            "enUS"
-            "en-US"
-            "Russian"
-            "russian"
-            "ru"
-            "rus"
-            "ruRU"
-            "ru-RU"
-          ];
-        in
-        {
-          autofit-larger = "100%x95%";
-          cache = true;
-          cursor-autohide = 1000;
-          cursor-autohide-fs-only = true;
-          demuxer-max-back-bytes = "20M";
-          demuxer-max-bytes = "20M";
-          force-seekable = true;
-          fullscreen = true;
-          msg-color = true;
-          msg-module = true;
-          prefetch-playlist = true;
-          save-position-on-quit = true;
-          screenshot-format = "png";
-          screenshot-template = "%F [%p]";
-          stop-screensaver = true;
-          term-osd-bar = true;
-          use-filedir-conf = true;
-
-          osd-bar-align-y = 0;
-          osd-bar-h = 2;
-          osd-bar-w = 60;
-          osd-border-color = "#FF262626";
-          osd-border-size = 2;
-          osd-color = "#FFFFFFFF";
-          osd-duration = 1000;
-          osd-font-size = 40;
-          osd-fractions = true;
-          osd-level = 1;
-          osd-shadow-color = "#33000000";
-
-          blend-subtitles = true;
-          embeddedfonts = false;
-          sub-ass-force-margins = true;
-          sub-ass-force-style = "kerning=yes";
-          sub-auto = "fuzzy";
-          sub-border-color = "#FF262626";
-          sub-border-size = 2.5;
-          sub-color = "#FFFFFFFF";
-          sub-file-paths-append = "srt";
-          sub-fix-timing = true;
-          sub-font-size = 40;
-          sub-scale-with-window = true;
-          sub-shadow-color = "#33000000";
-          sub-shadow-offset = 1;
-          sub-spacing = 0.5;
-          sub-use-margins = true;
-
-          audio-file-auto = "fuzzy";
-          volume = 100;
-          volume-max = 200;
-
-          alang = lang;
-          slang = lang;
-
-          ytdl = true;
-          ytdl-raw-options = ''sub-lang="${lang}",write-sub='';
+        profiles = {
+          "protocol.http".force-window = "immediate";
+          "protocol.https".profile = "protocol.http";
+
+          "extension.gif" = {
+            cache = false;
+            loop-file = true;
+          };
+          "extension.png" = {
+            profile = "extension.gif";
+            video-aspect-override = 0;
+          };
+          "extension.jpeg".profile = "extension.png";
+          "extension.jpg".profile = "extension.png";
         };
+
+        config =
+          let
+            lang = lib.concatStringsSep "," [
+              "Japanese"
+              "japanese"
+              "jp"
+              "jpn"
+              "jaJP"
+              "ja-JP"
+              "English"
+              "english"
+              "en"
+              "eng"
+              "enUS"
+              "en-US"
+              "Russian"
+              "russian"
+              "ru"
+              "rus"
+              "ruRU"
+              "ru-RU"
+            ];
+          in
+          {
+            autofit-larger = "100%x95%";
+            cache = true;
+            cursor-autohide = 1000;
+            cursor-autohide-fs-only = true;
+            demuxer-max-back-bytes = "20M";
+            demuxer-max-bytes = "20M";
+            force-seekable = true;
+            fullscreen = true;
+            msg-color = true;
+            msg-module = true;
+            prefetch-playlist = true;
+            save-position-on-quit = true;
+            screenshot-format = "png";
+            screenshot-template = "%F [%p]";
+            stop-screensaver = true;
+            term-osd-bar = true;
+            use-filedir-conf = true;
+
+            osd-bar-align-y = 0;
+            osd-bar-h = 2;
+            osd-bar-w = 60;
+            osd-border-color = "#FF262626";
+            osd-border-size = 2;
+            osd-color = "#FFFFFFFF";
+            osd-duration = 1000;
+            osd-font-size = 40;
+            osd-fractions = true;
+            osd-level = 1;
+            osd-shadow-color = "#33000000";
+
+            blend-subtitles = true;
+            embeddedfonts = false;
+            sub-ass-force-margins = true;
+            sub-ass-force-style = "kerning=yes";
+            sub-auto = "fuzzy";
+            sub-border-color = "#FF262626";
+            sub-border-size = 2.5;
+            sub-color = "#FFFFFFFF";
+            sub-file-paths-append = "srt";
+            sub-fix-timing = true;
+            sub-font-size = 40;
+            sub-scale-with-window = true;
+            sub-shadow-color = "#33000000";
+            sub-shadow-offset = 1;
+            sub-spacing = 0.5;
+            sub-use-margins = true;
+
+            audio-file-auto = "fuzzy";
+            volume = 100;
+            volume-max = 200;
+
+            alang = lang;
+            slang = lang;
+
+            ytdl = true;
+            ytdl-raw-options = ''sub-lang="${lang}",write-sub='';
+          };
+      };
     };
   };
 }

Consider giving Nix/NixOS a try! <3