This repository has no description
1.1 kB
43 lines
1{
2 self,
3 lib,
4 ...
5}:
6{
7 flake.wrapperModules.mpv = self.wrapLib.mkWrapper (
8 wlib:
9 { config, ... }:
10 {
11 options = {
12 scripts = lib.mkOption {
13 type = lib.types.listOf lib.types.package;
14 default = [ ];
15 description = "Scripts to add to mpv via override.";
16 };
17 "mpv.input" = lib.mkOption {
18 type = wlib.types.file config.pkgs;
19 default.content = "";
20 };
21 "mpv.conf" = lib.mkOption {
22 type = wlib.types.file config.pkgs;
23 default.content = "";
24 };
25 extraFlags = lib.mkOption {
26 type = lib.types.attrsOf lib.types.unspecified; # TODO add list handling
27 default = { };
28 description = "Extra flags to pass to mpv.";
29 };
30 };
31 config.flags = {
32 "--input-conf" = config."mpv.input".path;
33 "--include" = config."mpv.conf".path;
34 }
35 // config.extraFlags;
36 config.package = lib.mkDefault (
37 config.pkgs.mpv.override {
38 scripts = config.scripts;
39 }
40 );
41 }
42 );
43}