diff options
Diffstat (limited to 'modules/programs')
| -rw-r--r-- | modules/programs/neomutt/assertions.nix | 7 | ||||
| -rw-r--r-- | modules/programs/neomutt/default.nix | 16 |
2 files changed, 23 insertions, 0 deletions
diff --git a/modules/programs/neomutt/assertions.nix b/modules/programs/neomutt/assertions.nix index 1e4ae27..989d273 100644 --- a/modules/programs/neomutt/assertions.nix +++ b/modules/programs/neomutt/assertions.nix @@ -23,5 +23,12 @@ neomutt requires the email module (mbsync + notmuch) to be enabled. ''; } + { + assertion = !config.programs.neomutt.enable || config.programs.kitty.enable; + message = '' + programs.neomutt is enabled but programs.kitty.enable is not. + neomutt's desktop entry requires kitty as the terminal launcher. Please enable programs.kitty. + ''; + } ]; } diff --git a/modules/programs/neomutt/default.nix b/modules/programs/neomutt/default.nix index 212fefc..818e921 100644 --- a/modules/programs/neomutt/default.nix +++ b/modules/programs/neomutt/default.nix @@ -5,6 +5,21 @@ pkgs, ... }: +let + neomuttDesktopItem = pkgs.makeDesktopItem { + name = "neomutt"; + desktopName = "NeoMutt"; + exec = "${lib.getExe config.programs.kitty.package} -e ${lib.getExe config.programs.neomutt.package}"; + icon = "kitty"; + categories = [ + "Network" + "Email" + ]; + comment = "Terminal email client"; + terminal = false; + type = "Application"; + }; +in { imports = [ ./assertions.nix @@ -18,6 +33,7 @@ home.packages = [ pkgs.urlscan pkgs.w3m + neomuttDesktopItem ]; xdg.configFile."neomutt/mailcap".text = '' |
