# Zsh Users: how do you manage plugins?

**URL:** https://discourse.nixos.org/t/zsh-users-how-do-you-manage-plugins/9199
**Category:** Help
**Created:** [September 29, 2020, 6:30am UTC](https://discourse.nixos.org/t/zsh-users-how-do-you-manage-plugins/9199 "2020-09-29T06:30:16Z")
**Posts on this page:** 1
**Showing post:** 8

<div class="post-metadata">

### Author: ![Yeshey](https://discourse.nixos.org/user_avatar/discourse.nixos.org/yeshey/32/7240_2.png) [@Yeshey](https://discourse.nixos.org/u/Yeshey)
#### Post date: [April 17, 2024, 4:52pm UTC](https://discourse.nixos.org/t/zsh-users-how-do-you-manage-plugins/9199/8 "2024-04-17T16:52:28Z")

</div>

In the nixOS config I hav it like so:

```auto
programs.zsh = {
      shellInit = ''
        autoload -U promptinit; promptinit
      '';
      interactiveShellInit = ''
        source ${pkgs.zsh-nix-shell}/share/zsh-nix-shell/nix-shell.plugin.zsh
        source ${pkgs.zsh-vi-mode}/share/zsh-vi-mode/zsh-vi-mode.plugin.zsh
        source ${pkgs.zsh-you-should-use}/share/zsh/plugins/you-should-use/you-should-use.plugin.zsh
      '';
}

```

in home manager config I can use the plugins keyword:

```auto
programs.zsh = {
      plugins = [
        {
          name = "nix-shell";
          src = "${pkgs.zsh-nix-shell}/share/zsh-nix-shell";
        }
        {
          name = "you-should-use";
          src = "${pkgs.zsh-you-should-use}/share/zsh/plugins/you-should-use";
        }
        {
          name = "zsh-vi-mode";
          src = "${pkgs.zsh-vi-mode}/share/zsh-vi-mode";
        }
        {
          name = "zsh-z";
          src = "${pkgs.zsh-z}/share/zsh-z";
        }
      ];
}

```

I figured the paths by poking the store with something like `find /nix/store -iwholename "*you-should-use*"`

---

_[View the full topic](https://discourse.nixos.org/t/zsh-users-how-do-you-manage-plugins/9199)._
