diff --git a/modules/mpv/hm.nix b/modules/mpv/hm.nix new file mode 100644 index 00000000..0606cc33 --- /dev/null +++ b/modules/mpv/hm.nix @@ -0,0 +1,33 @@ +{ lib, config, ... }: +{ + options.stylix.targets.mpv.enable = config.lib.stylix.mkEnableTarget "mpv" true; + + config = lib.mkIf (config.stylix.enable && config.stylix.targets.mpv.enable) { + programs.mpv = { + config = with config.lib.stylix.colors.withHashtag; { + osd-font = config.stylix.fonts.monospace.name; + sub-font = config.stylix.fonts.monospace.name; + osd-font-size = config.stylix.fonts.sizes.applications; + sub-font-size = config.stylix.fonts.sizes.applications; + + background-color = base00; + osd-back-color = base01; + osd-border-color = base01; + osd-color = base05; + osd-shadow-color = base00; + }; + + scriptOpts.uosc.color = + with config.lib.stylix.colors; + lib.concatMapAttrsStringSep "," (name: value: "${name}=${value}") { + background = base00; + background_text = base05; + foreground = base05; + foreground_text = base00; + curtain = base0D; + success = base0A; + error = base0F; + }; + }; + }; +} diff --git a/modules/mpv/testbeds/default.nix b/modules/mpv/testbeds/default.nix new file mode 100644 index 00000000..ae1ff164 --- /dev/null +++ b/modules/mpv/testbeds/default.nix @@ -0,0 +1,18 @@ +{ lib, pkgs, ... }: +let + package = pkgs.mpv; +in +{ + stylix.testbed.application = { + enable = true; + name = "mpv"; + inherit package; + }; + + home-manager.sharedModules = lib.singleton { + programs.mpv = { + enable = true; + inherit package; + }; + }; +} diff --git a/modules/mpv/testbeds/uosc.nix b/modules/mpv/testbeds/uosc.nix new file mode 100644 index 00000000..5f2cda35 --- /dev/null +++ b/modules/mpv/testbeds/uosc.nix @@ -0,0 +1,19 @@ +{ lib, pkgs, ... }: +let + package = pkgs.mpv; +in +{ + stylix.testbed.application = { + enable = true; + name = "mpv"; + inherit package; + }; + + home-manager.sharedModules = lib.singleton { + programs.mpv = { + enable = true; + inherit package; + scripts = [ pkgs.mpvScripts.uosc ]; + }; + }; +}