# nix-combined One flake, two targets: - `darwinConfigurations.RyanMac` - the mac system (nix-darwin + home-manager), equivalent to what `nix-dotfiles` built. - `homeConfigurations.ryan` - standalone home-manager for `x86_64-linux`, meant to run *on top of* Guix System as the home-manager substitute for what `guix-dotfiles/home-config/home-configuration.scm` used to fully own. Guix still owns the system config, package management, and three home services that need shepherd (pipewire, dbus, downloads-gc) - see `MIGRATION.md`. `users/ryan/common.nix` holds everything shared by both (git, ssh, gpg-agent, starship, zsh, zen-browser, neovim). `darwin.nix` and `linux.nix` hold the platform-specific rest. ## Darwin ``` sudo nix run --extra-experimental-features "nix-command flakes" github:nix-darwin/nix-darwin -- switch --flake .#RyanMac \ --option "extra-substituters" "https://virby-nix-darwin.cachix.org" \ --option "extra-trusted-public-keys" "virby-nix-darwin.cachix.org-1:z9GiEZeBU5bEeoDQjyfHPMGPBaIQJOOvYOOjGMKIlLo=" ``` Subsequent rebuilds: `rebuild` (zsh alias) or `sudo darwin-rebuild switch --flake ~/.config/nix/.` ## Linux (Guix) Requires `experimental-features = nix-command flakes` in `~/.config/nix/nix.conf` (guix-dotfiles already symlinks this in). ``` nix run --extra-experimental-features "nix-command flakes" home-manager -- switch --flake .#ryan ``` Subsequent rebuilds: `rebuild` (zsh alias) or `home-manager switch --flake ~/.config/home-manager#ryan`. See `MIGRATION.md` for what needs to change in `guix-dotfiles` for this to slot in cleanly (symlink target, overlapping config entries to remove, the zsh login-shell switch), what stays Guix-native and why, and what got dropped as dead weight along the way.