matteing/nix
My declarative system configuration for macOS.
I've aimed to create a minimal, pragmatic setup for my machine using Nix. I won't go too off the deep-end here, but will try some Nix features to simplify my development environment.
- Declarative application management
- Flake-based configuration (nix-darwin)
- iTerm2 settings support
- Home Manager for setting up my Zsh environment
asdf
for language management- Other niceties ✨
To bring a device up into this repository, you must:
- Install
git
viaxcode-select
. - Install Nix using the Determinate Systems installer.
- Install
brew
.
First, start installing the Xcode developer tools by attempting to clone this repo in a terminal. It will bring up a prompt and begin the installation.
Next up, install the prerequisites by running:
make prepare
This command will complete the remaining two items to prepare your system for bringup.
To kick things off:
make init
make langs # installs my programming languages
make extras # other random things I use
Check the Makefile for more commands you can use!