diff options
Diffstat (limited to 'nixos/modules')
-rw-r--r-- | nixos/modules/programs/nautilus-open-any-terminal.nix | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/nixos/modules/programs/nautilus-open-any-terminal.nix b/nixos/modules/programs/nautilus-open-any-terminal.nix new file mode 100644 index 000000000000..d205fb3ec916 --- /dev/null +++ b/nixos/modules/programs/nautilus-open-any-terminal.nix @@ -0,0 +1,36 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.programs.nautilus-open-any-terminal; +in +{ + options.programs.nautilus-open-any-terminal = { + enable = lib.mkEnableOption (lib.mdDoc "nautilus-open-any-terminal"); + + terminal = lib.mkOption { + type = with lib.types; nullOr str; + default = null; + description = lib.mdDoc '' + The terminal emulator to add to context-entry of nautilus. Supported terminal + emulators are listed in https://github.com/Stunkymonkey/nautilus-open-any-terminal#supported-terminal-emulators. + ''; + }; + }; + + config = lib.mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + gnome.nautilus-python + nautilus-open-any-terminal + ]; + programs.dconf = lib.optionalAttrs (cfg.terminal != null) { + enable = true; + profiles.user.databases = [{ + settings."com/github/stunkymonkey/nautilus-open-any-terminal".terminal = cfg.terminal; + lockAll = true; + }]; + }; + }; + meta = { + maintainers = with lib.maintainers; [ stunkymonkey linsui ]; + }; +} |