fish: add pluginModule type

Similar to zsh's `pluginModule` type, but without an initialization
file.
This commit is contained in:
Ryan Orendorff 2019-09-24 01:16:49 -07:00 committed by Robert Helgesson
parent 4f532948f7
commit 2f51b9e418
No known key found for this signature in database
GPG key ID: 36BDAA14C2797E89

View file

@ -6,6 +6,29 @@ let
cfg = config.programs.fish;
pluginModule = types.submodule ({ config, ... }: {
options = {
src = mkOption {
type = types.path;
description = ''
Path to the plugin folder.
</para><para>
Relevant pieces will be added to the fish function path and
the completion path. The <filename>init.fish</filename> and
<filename>key_binding.fish</filename> files are sourced if
they exist.
'';
};
name = mkOption {
type = types.str;
description = ''
The name of the plugin.
'';
};
};
});
abbrsStr = concatStringsSep "\n" (
mapAttrsToList (k: v: "abbr --add --global ${k} '${v}'") cfg.shellAbbrs
);