nix/home/modules/menu.nix
2024-08-03 18:31:13 +01:00

41 lines
872 B
Nix

{
lib,
pkgs,
config,
...
}: let
cfg = config.programs.menu;
terminal = config.programs.terminal;
termcmd = "${terminal}/bin/${terminal.pname}";
menucmd = config.programs.menu.drunCommand;
inherit (lib) mkPackageOption mkOption;
in {
options.programs = {
menu = {
package = mkPackageOption pkgs "wofi" {
example = "pkgs.dmenu-wayland";
};
dmenuCommand = mkOption {
default = "/bin/wofi --show dmenu";
example = "/bin/dmenu";
};
drunCommand = mkOption {
default = "/bin/wofi --show drun";
};
};
};
config = {
programs.wofi = lib.mkIf (cfg.package == pkgs.wofi) {
enable = true;
settings = {
term = termcmd;
insensitive = true;
};
};
wayland.windowManager.sway.config.menu = menucmd;
home.packages = [cfg.package];
};
}