Personal Spectrum/Bluefin, NixOS, and macOS workstation configuration, built with Homebrew, Nix, Ansible, and chezmoi.
Important
This is my personal setup. It is public for reference, not a universal installer.
- Spectrum / Bluefin: custom bootc image and desktop setup
- NixOS: declarative system and user configuration
- macOS: Homebrew and Ansible bootstrap
- Everywhere: shared dotfiles managed by chezmoi
.bashenv ─┐
.zshenv ──┴─> environment.sh
.bashrc ────> bashrc.d/*.bash ─┐
├─> interactive.common.sh
.zshrc ───> zshrc.d/*.zsh ─┘ └─> interactive.d/*.sh
Clone the repository first:
git clone https://github.com/4evy/dotfiles.git ~/dotfiles
cd ~/dotfilesFrom a fresh Bluefin install:
sudo bootc switch ghcr.io/4evy/spectrum:latest
systemctl rebootAfter rebooting:
cd ~/dotfiles
just setupFrom an installed NixOS system:
sudo nixos-rebuild \
--option extra-substituters https://install.determinate.systems \
--option extra-trusted-public-keys cache.flakehub.com-3:hJuILl5sVK4iKm86JzgdXW12Y2Hwd5G07qKtHTOcDCM= \
--flake .#nixos \
switch
just setupThe extra cache options are only needed for the first rebuild. Later rebuilds can use:
sudo nixos-rebuild switch --flake .#nixos./ansible/bootstrap.sh --tags userland
just setupRun just or just --list for the complete recipe list.
just setup # Bootstrap and apply everything
just update # Update userland, dotfiles, and host setup
just apply # Apply chezmoi dotfiles only
just status # Show Spectrum image status
just spectrum-validate # Validate the BlueBuild recipe and base digest
just spectrum-build # Build Spectrum locally
just spectrum-inspect # Inspect and test the local image
just fmt # Format the repository
just lint # Run static checks
just check # Run the full validation suiteFor direct Nix work:
nix develop
nix flake check
nix run .#ghidra-mcp