From 592e989b03465ed413910d272efdca5804392ab7 Mon Sep 17 00:00:00 2001 From: DannyDannyDanny Date: Fri, 5 Jun 2026 17:19:38 +0200 Subject: [PATCH] =?UTF-8?q?fix(home):=20resurrect=20process=20list=20+=20t?= =?UTF-8?q?rack=20zed=20settings=20in=20dotfiles=20=F0=9F=8F=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit tmux-resurrect only restores programs in its allow-list; nvim/claude/ssh were missing so restored panes came back as bare fish prompts. Adds the three programs with argv-aware restart patterns. Also wires ~/.config/zed/settings.json as an xdg.configFile symlink so Zed config survives machine rebuilds alongside the rest of dotfiles. --- nixos/home/danny/home.nix | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/nixos/home/danny/home.nix b/nixos/home/danny/home.nix index 21c10da..b57def5 100644 --- a/nixos/home/danny/home.nix +++ b/nixos/home/danny/home.nix @@ -89,14 +89,21 @@ tmux-fzf extrakto # tmux-resurrect: prefix + Ctrl-s saves, prefix + Ctrl-r restores. - # Snapshot lives at ~/.local/share/tmux/resurrect/last (window - # layout, working dirs, pane contents if enabled). Survives - # force-quits / reboots / kernel panics. + # Snapshot lives at ~/.tmux/resurrect/last (window layout, working + # dirs, pane contents if enabled). Survives force-quits / reboots + # / kernel panics. + # + # @resurrect-processes: programs to restart on restore. Default + # list covers vim/emacs/less/top/etc. but NOT nvim, claude, or + # ssh. The "~name->cmd" form re-runs the original argv; bare + # names match argv-less invocations. Without this, restored panes + # come back as plain fish prompts in the right directory. { plugin = resurrect; extraConfig = '' set -g @resurrect-capture-pane-contents 'on' set -g @resurrect-strategy-nvim 'session' + set -g @resurrect-processes 'nvim "~nvim->nvim *" claude "~claude->claude --continue" ssh "~ssh->ssh *"' ''; } # tmux-continuum: auto-saves every 15min and auto-restores on @@ -164,6 +171,11 @@ xdg.configFile."alacritty/catppuccin-mocha-colors.toml".source = ../../../assets/alacritty/catppuccin-mocha-colors.toml; + # Zed: settings.json is a read-only symlink to assets/zed/settings.json. + # To change a setting, edit the asset file and rebuild — editing via Zed's + # UI will fail because the target is in the nix store. + xdg.configFile."zed/settings.json".source = ../../../assets/zed/settings.json; + # Alacritty: base config + imported active-colors.toml (updated without rebuild) programs.alacritty = { enable = true;