36 lines
1.1 KiB
Nix
36 lines
1.1 KiB
Nix
{ config, lib, ... }:
|
|
let
|
|
base = {
|
|
programs.tmux = {
|
|
enable = true;
|
|
clock24 = true;
|
|
extraConfig = ''
|
|
bind q kill-session
|
|
bind v run-shell "tmux setw main-pane-width $(($(tmux display -p '#{window_width}') * 70 / 100)); tmux select-layout main-vertical"
|
|
bind h run-shell "tmux setw main-pane-height $(($(tmux display -p '#{window_height}') * 70 / 100)); tmux select-layout main-horizontal"
|
|
|
|
set -g default-terminal "screen-256color"
|
|
set -sg escape-time 10
|
|
'';
|
|
keyMode = "vi";
|
|
tmuxinator.enable = lib.mkIf config.chvp.graphical true;
|
|
};
|
|
};
|
|
in
|
|
{
|
|
options.chvp.tmux.enable = lib.mkOption {
|
|
default = true;
|
|
example = false;
|
|
};
|
|
|
|
config = lib.mkIf config.chvp.tmux.enable {
|
|
home-manager.users.charlotte = { ... }: base // lib.optionalAttrs config.chvp.graphical {
|
|
xdg.configFile = {
|
|
"tmuxinator/accentor.yml".source = ./tmux/accentor.yml;
|
|
"tmuxinator/dodona.yml".source = ./tmux/dodona.yml;
|
|
"tmuxinator/mail.yml".source = ./tmux/mail.yml;
|
|
};
|
|
};
|
|
home-manager.users.root = { ... }: base;
|
|
};
|
|
}
|