Nix Configurations for MacOS + NixOS
This is a group of personal configuration files using Nix that runs on MacOS as well as NixOS. This is 100% Flake driven with no configuration.nix as well as channels. This is my first time delving into everything that is Nix and while so far has been tested on a MacOS VM and a NixOS VM running on unRaid, this is my daily driver for both. 🤓 Please note this is a work in progress so there are bugs as I am learning to improve and set up for my personal needs.NixOS | MacOS | |
---|---|---|
Shell | zsh | |
DE | none+bspwm | Aqua |
WM | bspwm | Amethyst |
Theme | WhiteSur-gtk-theme [GTK2/3] | |
Icons | WhiteSur [GTK2/3] | |
Terminal | Alacritty |
Installing
MacOS
Change name for Mac and enable Full Disk Access for Terminal in settings
Install Dependencies
- This is my daily driver on a Macbook Air (M1) running MacOS Sonoma
xcode-select --install
Install Nix
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
Create Keys
nix run github:michaelkeates/nixos-config#createKeys
Initialize
nix flake init -t github:michaelkeates/nixos-config#default
Installation
- For the first-time, it is required to move the current /etc/nix/nix.conf out of the way
sudo mv /etc/nix/nix.conf /etc/nix/nix.conf.before-nix-darwin
chmod +x bin/darwin-build && chmod +x bin/build && bin/build
NixOS
Create Keys
nix run github:michaelkeates/nixos-config#createKeys
EDITOR=vim nix run github:ryantm/agenix -- -e secret.age
Installation
nix run --experimental-features 'nix-command flakes' github:michaelkeates/nixos-config#install
Rebuild
MacOS & NixOS
nix run github:michaelkeates/nixos-config#rebuild
Mentions
dustinlyons for his Nix configuration files that this is heavily based on and what I learnt from so all rights to him.
RepositoryAuthor
-
Michael Keates Website

Michael Keates
I am a dedicated, hardworking individual with a robust background in all things related to computing and technology. Diligent, enthusiastic, and a team player, I possess a passion for learning and developing new skills, a strong attention to detail, and excellent verbal and written communication abilities. I am reliable and constantly seeking new challenges to broaden my knowledge and experience, while also enhancing my capacity to develop efficient and effective solutions for diverse requirements.