diff options
Diffstat (limited to 'pkgs/larbs-scripts/displayselect/wrapper.nix')
-rw-r--r-- | pkgs/larbs-scripts/displayselect/wrapper.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/larbs-scripts/displayselect/wrapper.nix b/pkgs/larbs-scripts/displayselect/wrapper.nix new file mode 100644 index 0000000..bcc051b --- /dev/null +++ b/pkgs/larbs-scripts/displayselect/wrapper.nix @@ -0,0 +1,40 @@ +{ stdenv, buildEnv, callPackage, lib, xrandr, libnotify, arandr }: + +displayselect: + +let + + mapCase = options: + builtins.concatStringsSep "\n" + (builtins.map + (option: "\t\"${option}\") ${builtins.getAttr option options} ;;") + (builtins.attrNames options)); + + wrapper = { moreOptions ? {} }: + let + dmenu = callPackage ../../larbs/dmenu { }; + in + buildEnv { + name = "displayselect-env"; + + paths = [ + xrandr + arandr + libnotify + dmenu + ]; + + postBuild = '' + mkdir -p $out/bin + cp ${displayselect}/bin/displayselect $out/bin + echo ${mapCase moreOptions} >> $out/bin/test + ''; + + + meta = { + description = "A fancy monitor configuration menu."; + homepage = "https://github.com/LukeSmithXYZ/voidrice"; + }; + }; +in + lib.makeOverridable wrapper |