nixpkgs/nixos/modules/programs/zsh
Maximilian Bosch 39b85451de
nixos/oh-my-zsh: add customPkgs option to allow multiple derivations for ZSH_CUSTOM
If multiple third-party modules shall be used for `oh-my-zsh` it has to
be possible to create another env which composes all the packages.

Now it can be done like this:

```
{ pkgs, ... }:
{
  programs.zsh.enable = true;
  programs.zsh.ohMyZsh = {
    enable = true;
    customPkgs = with pkgs; [
      lambda-mod-zsh-theme
      nix-zsh-completions
    ];
    theme = "lambda-mod";
    plugins = [ "nix" ];
  };
}
```

Please keep in mind that this is not compatible with
`programs.zsh.ohMyZsh.custom`, only one of these options can be used
ATM.

Each package should store its outputs into
`$out/share/zsh/<output-name>`. Completions (and ZSH-only) extensions
should live in the `fpath` (`$out/share/zsh/site-functions`), plugins in
`.../plugins` and themes in `.../themes` (please refer to
fdb6bf6ed68c2f089ae6c729dfeaa3eddea2ce6a and 406d64aad162b3a4881747be4e24705fb5182573).

All scripts in `customPkgs` will be linked together using `linkFarm` to
provide a single directory for all scripts from all derivations in
`customPkgs` as suggested in https://github.com/NixOS/nixpkgs/pull/43282#issuecomment-410396365.
2018-08-05 23:01:18 +02:00
..
oh-my-zsh.nix nixos/oh-my-zsh: add customPkgs option to allow multiple derivations for ZSH_CUSTOM 2018-08-05 23:01:18 +02:00
zinputrc
zsh-autoenv.nix zsh-autoenv: init at 2017-12-16 (#34932) 2018-02-14 06:31:59 +00:00
zsh-autosuggestions.nix nixos/autosuggestions: add module (#41397) 2018-06-10 23:08:50 +02:00
zsh-syntax-highlighting.nix nixos/zsh-syntax-highlighting: refactor 2017-10-09 23:30:10 +02:00
zsh.nix nixos/autosuggestions: add module (#41397) 2018-06-10 23:08:50 +02:00