Tmux: Difference between revisions

imported>Crodjer
The option is called `extraConfig` and not `extraTmuxConf`
imported>Crodjer
No edit summary
Line 20: Line 20:


There is a good example of [https://github.com/srid/nixos-config/blob/master/home/tmux.nix tmux configuration here].
There is a good example of [https://github.com/srid/nixos-config/blob/master/home/tmux.nix tmux configuration here].
=== Using Plugins ===
Tmux plugins can be also configured using <code>programs.tmux.plugins</code>. They can be found as NixOS packages: [https://search.nixos.org/packages?channel=22.11&from=0&size=50&sort=relevance&type=packages&query=tmuxPlugins  tmuxPlugins]. Each of the tmux plugin is run via <code>run-shell</code> automatically.
Some plugins need to be run after having had some custom configuration done>, but extraConfig gets executed after. For example <code>tmuxPlugins.cpu</code> needs the status line be declared before the plugin is run. For that scenario, <code>run-shell</code> can be added within <code>extraConfig</code>:
<syntaxhighlight lang="nix">
programs.tmux = {
  enable = true;
  extraConfig = ''
    ...
    set -g status-right '#[fg=black,bg=color15] #{cpu_percentage}  %H:%M '
    run-shell ${pkgs.tmuxPlugins.cpu}/share/tmux-plugins/cpu/cpu.tmux
  '';
}
</syntaxhighlight>


== Per-user configuration ==
== Per-user configuration ==