feat(programs): add tmux
parent
69454aba52
commit
52650a3c84
|
@ -9,6 +9,7 @@ in
|
||||||
(import ./catppuccin.nix
|
(import ./catppuccin.nix
|
||||||
{
|
{
|
||||||
inherit config lib pkgs;
|
inherit config lib pkgs;
|
||||||
|
flavor = "mocha";
|
||||||
rosewater = "f2d5cf";
|
rosewater = "f2d5cf";
|
||||||
flamingo = "eebebe";
|
flamingo = "eebebe";
|
||||||
pink = "f4b8e4";
|
pink = "f4b8e4";
|
||||||
|
|
|
@ -9,6 +9,7 @@ in
|
||||||
(import ./catppuccin.nix
|
(import ./catppuccin.nix
|
||||||
{
|
{
|
||||||
inherit config lib pkgs;
|
inherit config lib pkgs;
|
||||||
|
flavor = "mocha";
|
||||||
rosewater = "dc8a78";
|
rosewater = "dc8a78";
|
||||||
flamingo = "dd7878";
|
flamingo = "dd7878";
|
||||||
pink = "ea76cb";
|
pink = "ea76cb";
|
||||||
|
|
|
@ -9,6 +9,7 @@ in
|
||||||
(import ./catppuccin.nix
|
(import ./catppuccin.nix
|
||||||
{
|
{
|
||||||
inherit config lib pkgs;
|
inherit config lib pkgs;
|
||||||
|
flavor = "mocha";
|
||||||
rosewater = "f4dbd6";
|
rosewater = "f4dbd6";
|
||||||
flamingo = "f0c6c6";
|
flamingo = "f0c6c6";
|
||||||
pink = "f5bde6";
|
pink = "f5bde6";
|
||||||
|
|
|
@ -9,6 +9,7 @@ in
|
||||||
(import ./catppuccin.nix
|
(import ./catppuccin.nix
|
||||||
{
|
{
|
||||||
inherit config lib pkgs;
|
inherit config lib pkgs;
|
||||||
|
flavor = "mocha";
|
||||||
rosewater = "f5e0dc";
|
rosewater = "f5e0dc";
|
||||||
flamingo = "f2cdcd";
|
flamingo = "f2cdcd";
|
||||||
pink = "f5c2e7";
|
pink = "f5c2e7";
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
{ config
|
{ config
|
||||||
|
, pkgs
|
||||||
|
, flavor
|
||||||
, rosewater
|
, rosewater
|
||||||
, flamingo
|
, flamingo
|
||||||
, pink
|
, pink
|
||||||
|
@ -127,6 +129,12 @@
|
||||||
color7 #${subtext1}
|
color7 #${subtext1}
|
||||||
color15 #${subtext0}
|
color15 #${subtext0}
|
||||||
'';
|
'';
|
||||||
|
tmux.plugins = with pkgs.tmuxPlugins; [
|
||||||
|
{
|
||||||
|
plugin = catppuccin;
|
||||||
|
extraConfig = "set -g @catppuccin_flavour '${flavor}'";
|
||||||
|
}
|
||||||
|
];
|
||||||
zathura.extraConfig = ''
|
zathura.extraConfig = ''
|
||||||
set window-title-basename "true"
|
set window-title-basename "true"
|
||||||
set selection-clipboard "clipboard"
|
set selection-clipboard "clipboard"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ config
|
{ config
|
||||||
, lib
|
, lib
|
||||||
|
, pkgs
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -97,6 +98,9 @@ in
|
||||||
active_border_color #f8f8f2
|
active_border_color #f8f8f2
|
||||||
inactive_border_color #6272a4
|
inactive_border_color #6272a4
|
||||||
'';
|
'';
|
||||||
|
tmux.plugins = with pkgs.tmuxPlugins; [
|
||||||
|
dracula
|
||||||
|
];
|
||||||
zathura.extraConfig = ''
|
zathura.extraConfig = ''
|
||||||
set window-title-basename "true"
|
set window-title-basename "true"
|
||||||
set selection-clipboard "clipboard"
|
set selection-clipboard "clipboard"
|
||||||
|
|
|
@ -62,6 +62,7 @@ in
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
git.enable = true;
|
git.enable = true;
|
||||||
gpg.enable = true;
|
gpg.enable = true;
|
||||||
|
tmux.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -99,7 +100,6 @@ in
|
||||||
gparted
|
gparted
|
||||||
neofetch
|
neofetch
|
||||||
ripgrep
|
ripgrep
|
||||||
tmux
|
|
||||||
up
|
up
|
||||||
viu
|
viu
|
||||||
wget
|
wget
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
./ssh.nix
|
./ssh.nix
|
||||||
./sway.nix
|
./sway.nix
|
||||||
./thunar.nix
|
./thunar.nix
|
||||||
|
./tmux.nix
|
||||||
./zathura.nix
|
./zathura.nix
|
||||||
./zsh.nix
|
./zsh.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.my.programs.tmux;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.my.programs.tmux = {
|
||||||
|
enable = mkEnableOption "tmux";
|
||||||
|
autoAttach = mkEnableOption "autoAttach";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
my.shell.abbreviations.t = "tmux";
|
||||||
|
home-manager.users.moritz.programs.tmux = {
|
||||||
|
enable = true;
|
||||||
|
clock24 = true;
|
||||||
|
customPaneNavigationAndResize = true;
|
||||||
|
keyMode = "vi";
|
||||||
|
mouse = true;
|
||||||
|
newSession = true;
|
||||||
|
prefix = "C-Space";
|
||||||
|
sensibleOnTop = false;
|
||||||
|
plugins = with pkgs.tmuxPlugins; [
|
||||||
|
sensible
|
||||||
|
tmux-fzf
|
||||||
|
yank
|
||||||
|
];
|
||||||
|
};
|
||||||
|
home-manager.users.moritz.programs = {
|
||||||
|
fzf.tmux.enableShellIntegration = true;
|
||||||
|
fish.interactiveShellInit =
|
||||||
|
let
|
||||||
|
insideVariables = [ "$TMUX" "$INSIDE_EMACS" "$EMACS" "$VIM" "$VSCODE_RESOLVING_ENVIRONMENT" ];
|
||||||
|
insideVariableMissing = concatStringsSep " && " (map (x: "test -z ${x}") insideVariables);
|
||||||
|
in
|
||||||
|
mkIf cfg.autoAttach
|
||||||
|
''
|
||||||
|
if ! fish_is_root_user && test "$TERM_PROGRAM" != 'vscode' && ${insideVariableMissing}
|
||||||
|
if test -z $tmux_autostarted
|
||||||
|
set -x tmux_autostarted true
|
||||||
|
tmux a
|
||||||
|
end
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue