mostly dotfiles

This commit is contained in:
Till 2026-04-15 22:04:14 +02:00
parent b4b1f4a63f
commit 28e84d34df
30 changed files with 180 additions and 289 deletions

0
dotfiles/foot/catppuccin-frappe.ini Normal file → Executable file
View file

0
dotfiles/foot/catppuccin-latte.ini Normal file → Executable file
View file

0
dotfiles/foot/catppuccin-macchiato.ini Normal file → Executable file
View file

0
dotfiles/foot/catppuccin-mocha.ini Normal file → Executable file
View file

0
dotfiles/foot/dank-colors.ini Normal file → Executable file
View file

0
dotfiles/foot/foot.ini Normal file → Executable file
View file

0
dotfiles/foot/matugen.ini Normal file → Executable file
View file

0
dotfiles/foot/paper-color.ini Normal file → Executable file
View file

0
dotfiles/neomutt/bindings.neomuttrc Normal file → Executable file
View file

0
dotfiles/neomutt/colors.neomuttrc Normal file → Executable file
View file

0
dotfiles/neomutt/config.neomuttrc Normal file → Executable file
View file

2
dotfiles/niri/config.kdl Normal file → Executable file
View file

@ -110,7 +110,7 @@ input {
trackpoint {
}
warp-mouse-to-focus
// warp-mouse-to-focus
focus-follows-mouse max-scroll-amount="0%"
}

0
dotfiles/niri/dms/alttab.kdl Normal file → Executable file
View file

296
dotfiles/niri/dms/binds.kdl Normal file → Executable file
View file

@ -1,175 +1,29 @@
binds {
// === System & Overview ===
Mod+Space repeat=false { toggle-overview; }
Mod+Shift+Slash { show-hotkey-overlay; }
// === Application Launchers ===
Mod+Return hotkey-overlay-title="Open Terminal" {
spawn "foot";
}
Mod+B hotkey-overlay-title="Open Browser" {
spawn "nirius" "focus-or-spawn" "-a" "^firefox$" "firefox";
}
Mod+M hotkey-overlay-title="Open Mail" {
spawn "nirius" "focus-or-spawn" "-t" "^neomutt" "foot" "--" "-e" "neomutt";
}
Mod+F hotkey-overlay-title="Open Files" {
spawn "nirius" "focus-or-spawn" "-t" "^vifm" "foot" "--" "-e" "vifm";
}
Mod+Slash hotkey-overlay-title="Application Launcher" {
spawn "dms" "ipc" "call" "spotlight" "toggle";
}
Mod+T hotkey-overlay-title="Task Manager" {
spawn "dms" "ipc" "call" "processlist" "focusOrToggle";
}
Super+X hotkey-overlay-title="Power Menu: Toggle" {
spawn "dms" "ipc" "call" "powermenu" "toggle";
}
Mod+Comma hotkey-overlay-title="Settings" {
spawn "dms" "ipc" "call" "settings" "focusOrToggle";
}
Mod+Y hotkey-overlay-title="Browse Wallpapers" {
spawn "dms" "ipc" "call" "dankdash" "wallpaper";
}
Mod+O hotkey-overlay-title="Show dash overview" {
spawn "dms" "ipc" "call" "dash" "toggle" "";
}
Mod+W hotkey-overlay-title="Show dash weather" {
spawn "dms" "ipc" "call" "dash" "toggle" "weather";
}
Mod+P hotkey-overlay-title="Show dash music" {
spawn "dms" "ipc" "call" "dash" "toggle" "media";
}
Ctrl+Alt+Delete hotkey-overlay-title="Task Manager" { spawn "dms" "ipc" "call" "processlist" "focusOrToggle"; }
Ctrl+XF86AudioLowerVolume allow-when-locked=true { spawn "dms" "ipc" "call" "mpris" "decrement" "3"; }
Ctrl+XF86AudioRaiseVolume allow-when-locked=true { spawn "dms" "ipc" "call" "mpris" "increment" "3"; }
Mod+Backspace hotkey-overlay-title="Lock Screen" { spawn "dms" "ipc" "call" "lock" "lock"; }
Mod+Comma hotkey-overlay-title="Settings" { spawn "dms" "ipc" "call" "settings" "focusOrToggle"; }
Mod+Ctrl+R hotkey-overlay-title="Rename Workspace" { spawn "dms" "ipc" "call" "workspace-rename" "open"; }
Mod+N hotkey-overlay-title="Notification Center" { spawn "dms" "ipc" "call" "notifications" "toggle"; }
// Mod+Shift+N hotkey-overlay-title="Notepad" { spawn "dms" "ipc" "call" "notepad" "toggle"; }
// === Security ===
Mod+Backspace hotkey-overlay-title="Lock Screen" {
spawn "dms" "ipc" "call" "lock" "lock";
}
Mod+Shift+Q {
quit;
}
Ctrl+Alt+Delete hotkey-overlay-title="Task Manager" {
spawn "dms" "ipc" "call" "processlist" "focusOrToggle";
}
// === Audio Controls ===
XF86AudioRaiseVolume allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "increment" "3";
}
XF86AudioLowerVolume allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "decrement" "3";
}
XF86AudioMute allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "mute";
}
XF86AudioMicMute allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "micmute";
}
XF86AudioPause allow-when-locked=true {
spawn "dms" "ipc" "call" "mpris" "playPause";
}
XF86AudioPlay allow-when-locked=true {
spawn "dms" "ipc" "call" "mpris" "playPause";
}
XF86AudioPrev allow-when-locked=true {
spawn "dms" "ipc" "call" "mpris" "previous";
}
XF86AudioNext allow-when-locked=true {
spawn "dms" "ipc" "call" "mpris" "next";
}
Ctrl+XF86AudioRaiseVolume allow-when-locked=true {
spawn "dms" "ipc" "call" "mpris" "increment" "3";
}
Ctrl+XF86AudioLowerVolume allow-when-locked=true {
spawn "dms" "ipc" "call" "mpris" "decrement" "3";
}
// === Brightness Controls ===
XF86MonBrightnessUp allow-when-locked=true {
spawn "dms" "ipc" "call" "brightness" "increment" "5" "";
}
XF86MonBrightnessDown allow-when-locked=true {
spawn "dms" "ipc" "call" "brightness" "decrement" "5" "";
}
// === Focus Navigation ===
Mod+H { focus-column-left; }
Mod+L { focus-column-right; }
Mod+J { focus-window-or-workspace-down; }
Mod+K { focus-window-or-workspace-up; }
// === Window Movement ===
Mod+Shift+H { move-column-left; }
Mod+Shift+L { move-column-right; }
Mod+Shift+J { move-window-down-or-to-workspace-down; }
Mod+Shift+K { move-window-up-or-to-workspace-up; }
// === Column Navigation ===
Mod+Home { focus-column-first; }
Mod+End { focus-column-last; }
Mod+Ctrl+Home { move-column-to-first; }
Mod+Ctrl+End { move-column-to-last; }
// === Monitor Navigation ===
Mod+Ctrl+H { focus-monitor-left; }
Mod+Ctrl+J { focus-monitor-down; }
Mod+Ctrl+K { focus-monitor-up; }
Mod+Ctrl+L { focus-monitor-right; }
// === Move to Monitor ===
Mod+Ctrl+Shift+H { move-column-to-monitor-left; }
Mod+Ctrl+Shift+J { move-column-to-monitor-down; }
Mod+Ctrl+Shift+K { move-column-to-monitor-up; }
Mod+Ctrl+Shift+L { move-column-to-monitor-right; }
// === Workspace Navigation ===
Mod+D { focus-workspace-down; }
Mod+U { focus-workspace-up; }
// === Workspace Management ===
Mod+Ctrl+R hotkey-overlay-title="Rename Workspace" {
spawn "dms" "ipc" "call" "workspace-rename" "open";
}
// === Move Workspaces ===
Mod+Shift+D { move-workspace-down; }
Mod+Shift+U { move-workspace-up; }
// === Mouse Wheel Navigation ===
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
Mod+WheelScrollRight { focus-column-right; }
Mod+WheelScrollLeft { focus-column-left; }
Mod+Ctrl+WheelScrollRight { move-column-right; }
Mod+Ctrl+WheelScrollLeft { move-column-left; }
Mod+Shift+WheelScrollDown { focus-column-right; }
Mod+Shift+WheelScrollUp { focus-column-left; }
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
// === Numbered Workspaces ===
Mod+O hotkey-overlay-title="Show dash overview" { spawn "dms" "ipc" "call" "dash" "toggle" ""; }
Mod+P hotkey-overlay-title="Show dash music" { spawn "dms" "ipc" "call" "dash" "toggle" "media"; }
Mod+Shift+W hotkey-overlay-title="Create window rule" { spawn "dms" "ipc" "call" "window-rules" "toggle"; }
Mod+Slash hotkey-overlay-title="Application Launcher" { spawn "dms" "ipc" "call" "spotlight" "toggle"; }
Mod+T hotkey-overlay-title="Task Manager" { spawn "dms" "ipc" "call" "processlist" "focusOrToggle"; }
Mod+W hotkey-overlay-title="Show dash weather" { spawn "dms" "ipc" "call" "dash" "toggle" "weather"; }
Mod+Y hotkey-overlay-title="Browse Wallpapers" { spawn "dms" "ipc" "call" "dankdash" "wallpaper"; }
Super+X hotkey-overlay-title="Power Menu: Toggle" { spawn "dms" "ipc" "call" "powermenu" "toggle"; }
XF86AudioLowerVolume allow-when-locked=true { spawn "dms" "ipc" "call" "audio" "decrement" "3"; }
XF86AudioMicMute allow-when-locked=true { spawn "dms" "ipc" "call" "audio" "micmute"; }
XF86AudioMute allow-when-locked=true { spawn "dms" "ipc" "call" "audio" "mute"; }
XF86AudioNext allow-when-locked=true { spawn "dms" "ipc" "call" "mpris" "next"; }
XF86AudioPause allow-when-locked=true { spawn "dms" "ipc" "call" "mpris" "playPause"; }
XF86AudioPlay allow-when-locked=true { spawn "dms" "ipc" "call" "mpris" "playPause"; }
XF86AudioPrev allow-when-locked=true { spawn "dms" "ipc" "call" "mpris" "previous"; }
XF86AudioRaiseVolume allow-when-locked=true { spawn "dms" "ipc" "call" "audio" "increment" "3"; }
XF86MonBrightnessDown allow-when-locked=true { spawn "dms" "ipc" "call" "brightness" "decrement" "5" ""; }
XF86MonBrightnessUp allow-when-locked=true { spawn "dms" "ipc" "call" "brightness" "increment" "5" ""; }
Mod+1 { focus-workspace 1; }
Mod+2 { focus-workspace 2; }
Mod+3 { focus-workspace 3; }
@ -179,8 +33,11 @@ binds {
Mod+7 { focus-workspace 7; }
Mod+8 { focus-workspace 8; }
Mod+9 { focus-workspace 9; }
// === Move to Numbered Workspaces ===
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
Mod+D { focus-workspace-down; }
Mod+J { focus-window-or-workspace-down; }
Mod+K { focus-window-or-workspace-up; }
Mod+Shift+1 { move-column-to-workspace 1; }
Mod+Shift+2 { move-column-to-workspace 2; }
Mod+Shift+3 { move-column-to-workspace 3; }
@ -190,44 +47,69 @@ binds {
Mod+Shift+7 { move-column-to-workspace 7; }
Mod+Shift+8 { move-column-to-workspace 8; }
Mod+Shift+9 { move-column-to-workspace 9; }
// === Column Management ===
Mod+Shift+BracketLeft { consume-or-expel-window-left; }
Mod+Shift+BracketRight { consume-or-expel-window-right; }
Mod+Shift+Period { expel-window-from-column; }
// === Window Management ===
Mod+Q repeat=false { close-window; }
Mod+Shift+G { toggle-window-floating; }
Mod+G { switch-focus-between-floating-and-tiling; }
Mod+Shift+T { toggle-column-tabbed-display; }
Mod+Shift+W hotkey-overlay-title="Create window rule" { spawn "dms" "ipc" "call" "window-rules" "toggle"; }
// === Sizing & Layout ===
Mod+R { switch-preset-column-width; }
Mod+V { switch-preset-window-height; }
Mod+Shift+V { reset-window-height; }
Mod+Shift+R { expand-column-to-available-width; }
Mod+Shift+D { move-workspace-down; }
Mod+Shift+J { move-window-down-or-to-workspace-down; }
Mod+Shift+K { move-window-up-or-to-workspace-up; }
Mod+Shift+U { move-workspace-up; }
Mod+U { focus-workspace-up; }
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
Mod+B hotkey-overlay-title="Open Browser" { spawn "nirius" "focus-or-spawn" "-a" "^firefox$" "firefox"; }
Mod+C { center-column; }
Mod+Ctrl+C { center-visible-columns; }
Mod+Z { maximize-column; }
Mod+Shift+Z { maximize-window-to-edges; }
Mod+Escape { fullscreen-window; }
// === Manual Sizing ===
Mod+Minus { set-column-width "-10%"; }
Mod+Ctrl+End { move-column-to-last; }
Mod+Ctrl+H { focus-monitor-left; }
Mod+Ctrl+Home { move-column-to-first; }
Mod+Ctrl+J { focus-monitor-down; }
Mod+Ctrl+K { focus-monitor-up; }
Mod+Ctrl+L { focus-monitor-right; }
Mod+Ctrl+Shift+H { move-column-to-monitor-left; }
Mod+Ctrl+Shift+J { move-column-to-monitor-down; }
Mod+Ctrl+Shift+K { move-column-to-monitor-up; }
Mod+Ctrl+Shift+L { move-column-to-monitor-right; }
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
Mod+Ctrl+WheelScrollLeft { move-column-left; }
Mod+Ctrl+WheelScrollRight { move-column-right; }
Mod+End { focus-column-last; }
Mod+Equal { set-column-width "+10%"; }
Mod+Shift+Minus { set-window-height "-10%"; }
Mod+Shift+Equal { set-window-height "+10%"; }
// === Screenshots ===
XF86Launch1 { screenshot; }
Ctrl+XF86Launch1 { screenshot-screen; }
Mod+XF86Launch1 { screenshot-window; }
Print { screenshot; }
Ctrl+Print { screenshot-screen; }
Mod+Escape { fullscreen-window; }
Mod+F hotkey-overlay-title="Open Files" { spawn "nirius" "focus-or-spawn" "-t" "^vifm" "foot" "--" "-e" "vifm"; }
Mod+G { switch-focus-between-floating-and-tiling; }
Mod+H { focus-column-left; }
Mod+Home { focus-column-first; }
Mod+L { focus-column-right; }
Mod+M hotkey-overlay-title="Open Mail" { spawn "nirius" "focus-or-spawn" "-t" "^neomutt" "foot" "--" "-e" "neomutt"; }
Mod+Minus { set-column-width "-10%"; }
Mod+Print { screenshot-window; }
// === System Controls ===
Mod+Q repeat=false { close-window; }
Mod+R { switch-preset-column-width; }
Mod+Shift+BracketLeft { consume-or-expel-window-left; }
Mod+Shift+BracketRight { consume-or-expel-window-right; }
Mod+Shift+Equal { set-window-height "+10%"; }
Mod+Shift+G { toggle-window-floating; }
Mod+Shift+H { move-column-left; }
Mod+Shift+L { move-column-right; }
Mod+Shift+Minus { set-window-height "-10%"; }
Mod+Shift+Period { expel-window-from-column; }
Mod+Shift+R { expand-column-to-available-width; }
Mod+Shift+T { toggle-column-tabbed-display; }
Mod+Shift+V { reset-window-height; }
Mod+Shift+WheelScrollDown { focus-column-right; }
Mod+Shift+WheelScrollUp { focus-column-left; }
Mod+Shift+Z { maximize-window-to-edges; }
Mod+V { switch-preset-window-height; }
Mod+WheelScrollLeft { focus-column-left; }
Mod+WheelScrollRight { focus-column-right; }
Mod+XF86Launch1 { screenshot-window; }
Mod+Z { maximize-column; }
Mod+Ctrl+P { power-off-monitors; }
Ctrl+Print { screenshot-screen; }
Ctrl+XF86Launch1 { screenshot-screen; }
Print { screenshot; }
XF86Launch1 { screenshot; }
Mod+Shift+Q { quit; }
Mod+Return hotkey-overlay-title="Open Terminal" { spawn "foot"; }
Mod+Shift+Slash { show-hotkey-overlay; }
Mod+Space repeat=false { toggle-overview; }
}

0
dotfiles/niri/dms/colors.kdl Normal file → Executable file
View file

0
dotfiles/niri/dms/cursor.kdl Normal file → Executable file
View file

2
dotfiles/niri/dms/layout.kdl Normal file → Executable file
View file

@ -4,7 +4,7 @@
// ! PLACE YOUR CUSTOM CONFIGURATION ELSEWHERE !
layout {
gaps 15
gaps 6
border {
width 2

0
dotfiles/niri/dms/outputs.kdl Normal file → Executable file
View file

0
dotfiles/niri/dms/windowrules.kdl Normal file → Executable file
View file

0
dotfiles/niri/dms/wpblur.kdl Normal file → Executable file
View file

2
dotfiles/tmux/rloft.conf Normal file
View file

@ -0,0 +1,2 @@
split-window -c '#{pane_current_path}' -h R -q --no-save --no-restore;
select-pane -l

45
dotfiles/tmux/tmux.conf Normal file
View file

@ -0,0 +1,45 @@
# Key bindings
bind C-l next-window
bind C-h previous-window
bind C-b last-window
bind n new-window
bind C-n new-window -c '#{pane_current_path}'
bind v split-window -h
bind C-v split-window -hc '#{pane_current_path}'
bind s split-window -v
bind C-s split-window -vc '#{pane_current_path}'
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
bind c command-prompt -I "#{b:pane_current_path}" "rename-window '%%'"
bind C-c command-prompt -I "#{b:pane_current_path}" "rename-window '%%'"
# Layouts
bind f new-window -c '#{pane_current_path}' vifm
bind R source rloft.conf
# Unbind
unbind p
unbind '"'
unbind %
# Eye candy
set-option -g status-right ""
set-option -g status-left ""
set-option -g status-justify "centre"
# set-option -g status-style fg=magenta
# set-option -g pane-border-style fg=brightwhite
set-option -g pane-active-border-style fg=magenta
# set-option -g window-status-current-style bg=brightwhite
# Some more specifics
set-option -g focus-events on
set -g base-index 1
setw -g pane-base-index 1
set -g default-terminal "tmux-256color"
set -as terminal-features ",xterm-256color:RGB"

12
flake.lock generated
View file

@ -8,11 +8,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1775880170,
"narHash": "sha256-63PLZ7lspPAqpV/+d0oNtDHLCWQf1MVFRG2DOeDK+nU=",
"lastModified": 1776052978,
"narHash": "sha256-WR0Svwg/JreBNW006qjHET6RRRmmjWCMfrkS5JmDZK8=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "28b164d30b5ab6820ef7e17281ae55c539ae9ff5",
"rev": "6c0e7f01d9315f4806a187c2ec58d0f3b6961876",
"type": "gitlab"
},
"original": {
@ -50,11 +50,11 @@
]
},
"locked": {
"lastModified": 1775900011,
"narHash": "sha256-QUGu6CJYFQ5AWVV0n3/FsJyV+1/gj7HSDx68/SX9pwM=",
"lastModified": 1776046499,
"narHash": "sha256-Wzc4nn07/0RL21ypPHRzNDQZcjhIC8LaYo7QJQjM5T4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "b0569dc6ec1e6e7fefd8f6897184e4c191cd768e",
"rev": "287f84846c1eb3b72c986f5f6bebcff0bd67440d",
"type": "github"
},
"original": {

View file

@ -85,12 +85,12 @@ in
'';
};
neomutt = {
extraConfig = ''
extraConfig = makeConfig name + ''
color status blue default
color index blue default '~N'
alternates ^tstraube@(em|rz)?.uni-frankfurt.de$
set smime_is_default
'' + makeConfig name;
'';
};
};
@ -271,6 +271,7 @@ in
programs.neovim.plugins = with pkgs.vimPlugins; [
{
plugin = vim-pathogen;
type = "viml";
config = "execute pathogen#infect()";
}
];

View file

@ -69,6 +69,7 @@
{
plugin = goyo-vim;
type = "viml";
config = ''
nnoremap <silent> yog :Goyo<CR>
nnoremap <silent> [og :Goyo 80<return>
@ -77,6 +78,7 @@
}
{
plugin = limelight-vim;
type = "viml";
config = ''
set termguicolors
let g:limelight_conceal_ctermfg = 'darkgray'
@ -97,6 +99,7 @@
{
plugin = nvim-colorizer-lua;
type = "viml";
config = "lua require 'colorizer'.setup()";
}
@ -135,20 +138,22 @@
'';
}
{
plugin = catppuccin-nvim;
config = ''
colorscheme catppuccin-nvim
'';
}
# {
# plugin = papercolor-theme;
# plugin = catppuccin-nvim;
# type = "viml";
# config = ''
# colorscheme PaperColor
# colorscheme catppuccin-nvim
# '';
# }
{
plugin = papercolor-theme;
type = "viml";
config = ''
colorscheme PaperColor
'';
}
quarto-nvim
typescript-vim
@ -164,6 +169,7 @@
{
plugin = vim-astro;
type = "viml";
config = ''
let g:astro_typescript = 'enable'
'';
@ -173,30 +179,29 @@
{
plugin = vim-easy-align;
type = "viml";
config = ''
xmap ga <Plug>(EasyAlign)
nmap ga <Plug>(EasyAlign)
'';
}
{
plugin = vim-fish;
}
vim-fish
vim-nix
{
plugin = vim-pandoc;
config = ''
let g:pandoc#modules#disabled = ["completion", "command", "menu"]
'';
}
# {
# plugin = vim-pandoc;
# config = ''
# let g:pandoc#modules#disabled = ["completion", "command", "menu"]
# '';
# }
vim-pandoc-syntax
vim-repeat
{
plugin = vim-slime;
type = "viml";
config = ''
let g:slime_target = "tmux"
let g:slime_default_config = {"socket_name": get(split($TMUX, ","), 0), "target_pane": ":.2"}
@ -215,6 +220,7 @@
{
plugin = vim-unimpaired;
type = "viml";
config = ''
nnoremap =p <Nop>
nnoremap =P <Nop>
@ -224,6 +230,7 @@
{
plugin = vimwiki;
type = "viml";
config = ''
let g:vimwiki_list = [ { 'path': '~/notes/', 'syntax': 'markdown', 'ext': '.md' } ]
nnoremap <Leader>wt <Nop>

View file

@ -1,4 +1,4 @@
{ pkgs, ... }:
{ pkgs, config, ... }:
{
programs.tmux = {
@ -7,55 +7,10 @@
mouse = true;
newSession = true;
shell = "${pkgs.fish}/bin/fish";
extraConfig = ''
# Key bindings
bind C-l next-window
bind C-h previous-window
bind C-b last-window
bind n new-window
bind C-n new-window -c '#{pane_current_path}'
bind v split-window -h
bind C-v split-window -hc '#{pane_current_path}'
bind s split-window -v
bind C-s split-window -vc '#{pane_current_path}'
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
bind c command-prompt -I "#{b:pane_current_path}" "rename-window '%%'"
bind C-c command-prompt -I "#{b:pane_current_path}" "rename-window '%%'"
};
# Layouts
bind f new-window -c '#{pane_current_path}' vifm
bind R source ${ pkgs.writeText "tmux-rloft" ''
split-window -c '#{pane_current_path}' -h R -q --no-save --no-restore;
select-pane -l
''}
# Unbind
unbind p
unbind '"'
unbind %
# Eye candy
set-option -g status-right ""
set-option -g status-left ""
set-option -g status-justify "centre"
set-option -g status-style fg=magenta
set-option -g pane-border-style fg=brightwhite
set-option -g pane-active-border-style fg=magenta
set-option -g window-status-current-style bg=brightwhite
# Some more specifics
set-option -g focus-events on
set -g base-index 1
setw -g pane-base-index 1
set -g default-terminal "tmux-256color"
set -as terminal-features ",xterm-256color:RGB"
'';
xdg.configFile."tmux" = {
source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/dotfiles/tmux";
recursive = true;
};
}

View file

@ -23,6 +23,5 @@
];
networking.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
}

View file

@ -4,7 +4,7 @@
networking.hostName = "homer";
imports = [
./hardware.nix
./hardware-configuration.nix
../../system
../../system/desktop
../../system/desktop/gnome.nix

View file

@ -2,7 +2,7 @@
{
services.btrbk.instances.btrbk = {
onCalendar = "hourly";
# onCalendar = "hourly";
settings = {
subvolume = "/home";
snapshot_preserve = "40d";