829f209300
Move the tmux auto-start out of the graphical-only desktop layer into the shared shell config so it also covers WSL, iTerm2 and the Linux console (folded into programs.zsh.initContent via mkMerge alongside the SSH PS1 block). Same guards: interactive, not-already-in-tmux, not-SSH, not-VS-Code, tmux-present. ssh: run a user ssh-agent on Linux (macOS uses launchd) and add keys on first use (addKeysToAgent), so the passphrase is entered once per login session instead of per commit/push -- which also feeds commit signing. macOS additionally caches in the login keychain (UseKeychain). The work box keeps its own ~/.ssh/config (programs.ssh forced off there); its ssh-agent still runs via the work module. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
54 lines
1.2 KiB
Nix
54 lines
1.2 KiB
Nix
{ pkgs, lib, ... }:
|
|
|
|
{
|
|
# The work box keeps its own (corporate) ~/.ssh/config; don't let the personal
|
|
# programs.ssh (shell.nix) take it over. The ssh-agent below still runs.
|
|
programs.ssh.enable = lib.mkForce false;
|
|
|
|
programs.git = {
|
|
settings = {
|
|
commit.gpgsign = true;
|
|
tag.gpgsign = true;
|
|
gpg.format = "ssh";
|
|
user.signingkey = "key::ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJMVgeRKnfX1G8coU3nAobI485aeUpGTMqH7+zbKI8o emma.thorpe@cloud.com";
|
|
user.email = "emma.thorpe@citrix.com";
|
|
};
|
|
};
|
|
home.packages = [
|
|
pkgs.kubectl
|
|
pkgs.argo-rollouts
|
|
pkgs.tenv
|
|
pkgs.kubernetes-helm
|
|
pkgs.azure-cli
|
|
pkgs.kubelogin
|
|
pkgs.curl
|
|
pkgs.notation
|
|
pkgs.powershell
|
|
pkgs.nuget
|
|
pkgs.gedit
|
|
pkgs.lens
|
|
pkgs.python3
|
|
pkgs.gnumake
|
|
pkgs.gcc
|
|
pkgs.libiconv
|
|
pkgs.autoconf
|
|
pkgs.automake
|
|
pkgs.pkg-config
|
|
pkgs.wget
|
|
pkgs.claude-code
|
|
pkgs.google-cloud-sdk
|
|
];
|
|
services.ssh-agent.enable = true;
|
|
home.shellAliases = {
|
|
docker = "/run/current-system/sw/bin/docker";
|
|
};
|
|
programs.tmux = {
|
|
extraConfig = ''
|
|
set -g status-right "#(/run/current-system/sw/bin/bash $HOME/code/kube-tmux/kube.tmux 250 red black)"
|
|
'';
|
|
};
|
|
programs.go = {
|
|
enable = true;
|
|
};
|
|
}
|