Commit 7aeca28

HPCesia <me@hpcesia.com>
2025-10-01 15:04:45
refactor: mpv config
1 parent e64ea69
Changed files (6)
home
base
linux
modules
desktop
home/base/gui/mpv/profiles/default.nix
@@ -1,3 +0,0 @@
-{mylib, ...}: {
-  imports = mylib.scanModules ./.;
-}
home/base/gui/mpv/scriptOpts/default.nix
@@ -1,3 +0,0 @@
-{mylib, ...}: {
-  imports = mylib.scanModules ./.;
-}
home/base/gui/mpv/scriptOpts/uosc.nix
@@ -1,8 +0,0 @@
-{...}: {
-  # programs.mpv.extraInput = ''
-  #   MBTN_RIGHT script-binding uosc/menu
-  # '';
-  programs.mpv.scriptOpts.uosc = {
-    languages = "slang,zh-hans";
-  };
-}
home/base/gui/mpv/default.nix
@@ -1,53 +0,0 @@
-{pkgs, ...}: {
-  imports = [./scriptOpts];
-
-  programs.mpv = {
-    enable = true;
-    defaultProfiles = ["gpu-hq"];
-    scripts = with pkgs.mpvScripts; [
-      mpris
-      uosc
-      thumbfast
-      autoload
-      reload
-      mpv-playlistmanager
-    ];
-    config = {
-      vo = "gpu-next";
-      hwdec = "auto-copy";
-      scale = "ewa_lanczossharp";
-      # --- 动态范围与色彩管理 --- #
-      target-colorspace-hint = "auto";
-      tone-mapping = "hable";
-      dither = "fruit";
-      dither-depth = "auto";
-      # --- 音频质量配置 --- #
-      ao = "pipewire";
-      audio-resample-filter-size = 64;
-      audio-resample-phase-shift = 10;
-      # --- 字幕配置 --- #
-      sub-auto = "fuzzy";
-      sub-bold = "yes";
-      sub-outline-size = 2.25;
-      sub-outline-color = "#111111";
-      sub-color = "#FEFEFE";
-      sub-font-size = "36";
-      sub-use-margins = "yes";
-      sub-ass-override = "force";
-      # --- 用户体验 --- #
-      save-position-on-quit = true;
-      keep-open = "yes";
-      osd-bar = "no"; # use uosc
-      # 音量控制
-      volume = 80;
-      volume-max = 120;
-      # OSD 显示
-      osd-duration = 2500;
-      osd-font-size = 32;
-      # 截图设置
-      screenshot-format = "png";
-      screenshot-dir = "~/Pictures/mpv";
-      screenshot-template = "%F-%P";
-    };
-  };
-}
home/linux/gui/xdg.nix
@@ -7,9 +7,6 @@
 
         "application/pdf" = ["okularApplication_pdf.desktop"];
         "application/epub+zip" = ["okularApplication_epub.desktop"];
-
-        "audio/*" = ["mpv.desktop" "deadbeef.desktop"];
-        "video/*" = ["mpv.desktop"];
       };
     };
   };
modules/desktop/apps/mpv.nix
@@ -0,0 +1,62 @@
+{
+  flake.modules.homeManager.desktop = {pkgs, ...}: {
+    programs.mpv = {
+      enable = true;
+      defaultProfiles = ["gpu-hq"];
+      scripts = with pkgs.mpvScripts; [
+        mpris
+        uosc
+        thumbfast
+        autoload
+        reload
+        mpv-playlistmanager
+      ];
+      config = {
+        vo = "gpu-next";
+        hwdec = "auto-copy";
+        scale = "ewa_lanczossharp";
+        # --- 动态范围与色彩管理 --- #
+        target-colorspace-hint = "auto";
+        tone-mapping = "hable";
+        dither = "fruit";
+        dither-depth = "auto";
+        # --- 音频质量配置 --- #
+        ao = "pipewire";
+        audio-resample-filter-size = 64;
+        audio-resample-phase-shift = 10;
+        # --- 字幕配置 --- #
+        sub-auto = "fuzzy";
+        sub-bold = "yes";
+        sub-outline-size = 2.25;
+        sub-outline-color = "#111111";
+        sub-color = "#FEFEFE";
+        sub-font-size = "36";
+        sub-use-margins = "yes";
+        sub-ass-override = "force";
+        # --- 用户体验 --- #
+        save-position-on-quit = true;
+        keep-open = "yes";
+        osd-bar = "no"; # use uosc
+        # 音量控制
+        volume = 80;
+        volume-max = 120;
+        # OSD 显示
+        osd-duration = 2500;
+        osd-font-size = 32;
+        # 截图设置
+        screenshot-format = "png";
+        screenshot-dir = "~/Pictures/mpv";
+        screenshot-template = "%F-%P";
+      };
+
+      scriptOpts.uosc = {
+        languages = "slang,zh-hans";
+      };
+    };
+
+    xdg.mimeApps.defaultApplications = {
+      "audio/*" = ["mpv.desktop"];
+      "video/*" = ["mpv.desktop"];
+    };
+  };
+}