This is my NixOS + MacOS Nix shared configuration. It is based on merging two configurations:
- nixos-config: This facilitates sharing packages between computers, I strongly recommend it as a base configuration to use as a base.
- neusis: This is the config used for multiple servers in at the Broad Institute’s Imaging Platform. I use it to support multiple users on NixOS alongside Darwin.
I haven’t set it up from scratch in a new set of computers, but I will update it once I do.
Both require superuser permissions, but in Darwin will be asked for when installing brew-based packages.
Replace moby
or darwin001
with the file you want to use on machines/
nixos-rebuild switch --flake .#moby
If you just want to update your home configuration and packages use this command.
home-manager --flake .#your-username@your-hostname
If darwin-rebuild is not available run this
nix run nix-darwin -- switch --flake .#darwin001
Otherwise
darwin-rebuild switch --flake .#darwin001
Relative to the root folder of the repo.
System-wide | home | |
---|---|---|
NixOS | modules/nixos/packages.nix | homes/$USER/packages.nix |
Darwin | modules/darwin/packages.nix | |
Both | modules/shared/packages.nix | [WIP] modules/shared/home-manager.nix |
System-wide Darwin packages is not supported yet.
- Trimming the fat
- Adding multiple configs for multiple Darwin computers
- Modify things so they are closer to nixos-config than neusis.
- Add support to user-based config update
- Isolate GPU packages and services