Move ./emmathorpe -> ./lyrathorpe (git mv preserves history) and rename the MBP/X1 nixosConfiguration names to lyrathorpe-mbp / lyrathorpe-x1c. The EDaaS host keeps its emmathorpe-edaas name and Emma Thorpe identity; it still imports the shared (renamed) config dir. Derivation outputs are byte-identical to before; pure relabel.
51 lines
1.2 KiB
Nix
51 lines
1.2 KiB
Nix
# Interactive shell: zsh + tmux. Wanted on every host.
|
|
{ lib, ... }:
|
|
{
|
|
programs.zsh = {
|
|
enable = true;
|
|
enableCompletion = true;
|
|
enableVteIntegration = true;
|
|
autosuggestion.enable = true;
|
|
historySubstringSearch.enable = true;
|
|
history.append = true;
|
|
oh-my-zsh = {
|
|
enable = true;
|
|
plugins = [
|
|
"git"
|
|
"man"
|
|
"history-substring-search"
|
|
];
|
|
theme = "robbyrussell";
|
|
};
|
|
syntaxHighlighting.enable = true;
|
|
# Prefix the prompt with the hostname over SSH. The graphical autostart
|
|
# (exec sway on tty1) lives in ./desktop.nix so it never runs on headless
|
|
# hosts.
|
|
initContent = lib.mkOrder 1500 ''
|
|
if [ "$SSH_CLIENT" ] || [ "$SSH_TTY" ]; then
|
|
export PS1="%M $PS1"
|
|
fi
|
|
'';
|
|
envExtra = ''
|
|
alias cls=clear
|
|
'';
|
|
};
|
|
|
|
programs.tmux = {
|
|
enable = true;
|
|
reverseSplit = true;
|
|
terminal = "tmux-direct";
|
|
newSession = true;
|
|
keyMode = "vi";
|
|
historyLimit = 50000;
|
|
mouse = true;
|
|
extraConfig = ''
|
|
# Alt+Arrow pane navigation
|
|
bind -n M-Left select-pane -L
|
|
bind -n M-Right select-pane -R
|
|
bind -n M-Up select-pane -U
|
|
bind -n M-Down select-pane -D
|
|
'';
|
|
};
|
|
}
|