From db4c6bdcd2af6aa2b95f587974f34c0246f62cb8 Mon Sep 17 00:00:00 2001 From: sommerfeld Date: Thu, 14 May 2026 10:58:14 +0100 Subject: feat(remote-dev): add zoxide/clang-tools/node/uv/AI agents; bring git+ssh; SSH-format signing home.nix: - Add zoxide (fixes 'command not found' on shell start), clang-tools (no compiler driver), nodejs (Mason npm LSPs), uv (Mason python LSPs; does not install python3 in PATH, so Ubuntu's /usr/bin/python3 stays the system default), claude-code, github-copilot-cli. - Refine the leaf-tools policy comment: explicit denylist of build- toolchain binaries that would shadow Ubuntu's via PATH, plus a carve-out for editor/AI runtimes (node, uv, clang-tools). - Symlink ~/.config/git/{config,attributes,ignore} and ~/.ssh/config from the dotfiles tree. dot_config/zsh/dot_zshrc: guard direnv/zoxide/fzf inits with 'command -v X >/dev/null &&' so a fresh machine without one of them no longer prints a stderr error on every shell start. dot_config/git/config: append unconditional '[include] path = ~/.config/git/config.local' for machine-local overrides (used on the remote-dev VM to switch to SSH-format signing via the forwarded agent). Git silently skips missing include files. remote-dev/README.md: document the update flow (config-only vs HM rebuild), the single-shell leaf-tools policy, and the one-time VM setup for SSH-format commit signing (allowed_signers + config.local, ForwardAgent yes on the host). --- dot_config/zsh/dot_zshrc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'dot_config/zsh/dot_zshrc') diff --git a/dot_config/zsh/dot_zshrc b/dot_config/zsh/dot_zshrc index 7a9538d..94781ac 100644 --- a/dot_config/zsh/dot_zshrc +++ b/dot_config/zsh/dot_zshrc @@ -359,15 +359,15 @@ export GPG_TTY=$TTY gpg-connect-agent updatestartuptty /bye &>/dev/null # ── direnv (per-project env via .envrc; nix-direnv loaded from direnvrc) ───── -eval "$(direnv hook zsh)" +command -v direnv >/dev/null && eval "$(direnv hook zsh)" # ── Zoxide (smart directory jumping) ────────────────────────────────────────── # z foo → jump to frecency-ranked dir matching "foo" # zi → interactive picker with fzf -eval "$(zoxide init zsh)" +command -v zoxide >/dev/null && eval "$(zoxide init zsh)" # ── FZF ─────────────────────────────────────────────────────────────────────── -source <(fzf --zsh) +command -v fzf >/dev/null && source <(fzf --zsh) # Ctrl-X Ctrl-R: search history with fzf and immediately execute fzf-history-widget-accept() { -- cgit v1.3.1