laptop-config/home/sscoble.nix
Scott Scoble 8155b9b64c Initial: Nix flake reproducing MacBook capabilities on x86_64 NixOS
- pi coding agent (from sscoble/pi-mono Forgejo mirror)
- qmd vault search (via bunx @tobilu/qmd)
- zsh + oh-my-zsh + developer tooling
- home-manager config for sscoble user
- Forgejo Action to check pi version drift daily
2026-05-12 20:13:50 -07:00

122 lines
2.5 KiB
Nix

{ config, pkgs, ... }:
{
home.username = "sscoble";
home.homeDirectory = "/home/sscoble";
home.stateVersion = "25.11";
# Don't let home-manager manage these
manual.json.enable = false;
manual.manpages.enable = false;
# === Home Packages ===
home.packages = with pkgs; [
# Python for scripting
python3
uv
# Go
go
# Container tools
docker
dive
# Network tools
nmap
tcpdump
speedtest-cli
tailscale
# Extra editors / viewers
bat # better cat
eza # better ls
delta # better git diff
tldr # simplified man pages
# File sync
rsync
rclone
];
# === Git Config ===
programs.git = {
enable = true;
userName = "Scott Scoble";
userEmail = "sscoble@scobleclaw.dev";
extraConfig = {
init.defaultBranch = "main";
pull.rebase = true;
push.autoSetupRemote = true;
core.editor = "vim";
};
aliases = {
lol = "log --graph --oneline --decorate --all";
co = "checkout";
br = "branch";
st = "status";
ci = "commit";
};
};
# === Pi Config Directory ===
# Creates ~/.pi/agent/ with template files — user should restore real configs
home.file.".pi/agent/README.md" = {
text = ''
# Pi Agent Configuration
Restore these files from backup:
- SYSTEM.md (core agent directive)
- models.json (provider + model configuration)
- mcp.json (MCP server connections)
- settings.json (pi preferences)
- auth.json (API keys — keep secure!)
'';
};
# === Vault directory placeholder ===
home.file."vault/.gitkeep" = { text = ""; };
# === Shell Direnv ===
programs.direnv = {
enable = true;
nix-direnv.enable = true;
};
# === SSH config (symlink to system config) ===
home.file.".ssh/config".text = ''
Host n97-mini
HostName 192.168.168.41
User sscoble
ForwardAgent yes
Host n97-mini-ext
HostName os.scoble.me
Port 22
User sscoble
ForwardAgent yes
Host forgejo
HostName os.scoble.me
User git
'';
# === Zsh extra config ===
programs.zsh = {
enable = true;
initExtra = ''
# Pi agent alias
alias pi="pi"
# QMD vault search
alias vq="qmd query"
# Nix shortcuts
alias nr="sudo nixos-rebuild switch --flake ~/laptop-config#laptop"
alias ngc="nix-collect-garbage -d"
'';
envExtra = ''
export EDITOR=vim
export VISUAL=vim
'';
};
}