Caution
These dots are highly prone to change / breakage.
I am not a nix os expert (this is my first time touching nix), so I'm not sure if this will work or not. I'm just trying to get my dots up on github.
After 284 successful days of these dots being in constant operation, many many rebuilds, and 364 commits these dots have been rock solid and I have no complaints.
~/dots # symlinked to /etc/nixos
├── dots # any config files that need to be symlinked go here, e.g. my hyprland config
│ └── wallpapers
├── machines
│ ├── atalanta # my macOS M4 machine
│ ├── ember # my dell r210 server (in my basement)
│ ├── moonlark # my framework 13
│ │ └── home
│ ├── nest # shared tilde server through hc
│ └── tacyon # rpi 5
├── modules
│ ├── home # home-manager modules
│ │ ├── aesthetics # theming and wallpapers
│ │ ├── apps # any app specific config
│ │ │ └── crush # vendored for now
│ │ ├── system # home-manager system configs
│ │ └── wm # window managers; just hyprland for now
│ │ └── hyprland
│ └── nixos # nixos modules
│ ├── apps # also app specific configs
│ └── system # pam and my fancy wifi module for now
└── secrets # keep your grubby hands (or paws) off my data
19 directoriesWarning
Also to note that this configuration will not work if you do not change any of the secrets since they are encrypted.
You could either install a NixOS machine (rn there is just moonlark), use the home-manager instructions, or use nix-darwin for macOS.
For macOS machines, you can use nix-darwin:
- Install Nix using the determinate systems installer:
curl -fsSL https://install.determinate.systems/nix | sh -s -- install- Clone the repository:
git clone [email protected]:taciturnaxolotl/dots.git
cd dots- Apply the configuration:
darwin-rebuild switch --flake .#atalantaInstall nix via the determinate systems installer
curl -fsSL https://install.determinate.systems/nix | sh -s -- install --determinatethen copy ssh keys and chmod them
scp .ssh/id_rsa* nest:/home/kierank/.ssh/
ssh nest chmod 600 ~/.ssh/id_rsa*and then clone the repo
git clone [email protected]:taciturnaxolotl/dots.git
cd dotsand execute the machine profile
nix-shell -p home-manager
home-manager switch --flake .#nestsetup atuin and import previous shell history
atuin login
atuin importThese instructions have been validated by installing on my friend's machine (
Nat2-Dev/dots)
You have two options for installation: either the full guide as follows or the install script below and instructions in INSTALL_GUIDE.md
curl -L https://raw.githubusercontent.com/taciturnaxolotl/dots/main/install.sh -o install.sh
chmod +x install.sh
./install.shInstall NixOS via the official guide
Connect to wifi
wpa_passphrase your-ESSID your-passphrase | sudo tee /etc/wpa_supplicant.conf
sudo systemctl restart wpa_supplicantCheck with ping 1.1.1.1 if that doesn't work then use wpa_cli
sudo systemctl start wpa_supplicant
wpa_cli
add_network 0
set_network 0 ssid "put your ssid here"
set_network 0 psk "put your password here"
enable network 0
exitAquire root permissions while keeping your current context with
sudo -iEnable git and rebuild your flake with the following
sed -i 's/^{$/{\n programs.git.enable = true;/' /etc/nixos/configuration.nix
nixos-rebuild switchDownload the disk configuration and run it
curl -L https://github.com/taciturnaxolotl/dots/raw/main/moonlark/disk-config.nix -o /tmp/disk-config.nix
nix --experimental-features "nix-command flakes" run github:nix-community/disko -- --mode destroy,format,mount /tmp/disk-config.nixRun nixos generate config and cd into it
nixos-generate-config --root /mnt
cd /mnt/etc/nixosClone this repo to your /mnt/etc/nixos folder
rm *
git clone https://github.com/taciturnaxolotl/dots.git .Add your ssh private key to /mnt/etc/ssh/id_rsa
install the flake, and umount the filesystem, and then reboot
nixos-install --flake .#moonlark --no-root-passwd
rebootPray to the nix gods that it works 🙏
If it worked then you should be able to login with the user kierank and the password lolzthisaintsecure!
You should immediately change the password
passwd kierankMove the config to your local directory, link to /etc/nixos, and change permissions
sudo mv /etc/nixos ~/dots
sudo ln -s ~/dots /etc/nixos
sudo chown -R $(id -un):users ~/dots
sudo chown kierank -R ~/dots
sudo chown kierank -R ~/dots/.*- Setup the fingerprint reader and verify it works (you may need to swipe your finger across the fingerprint sensor instead of simply laying it there)
sudo fprintd-enroll -f right-index-finger kierank
sudo fprintd-verify kierankFinally enable atuin
atuin login
atuin syncfor helix if you want the grammar to work you must run the following as per this helix discussion
hx -g fetch
hx -g buildThanks a bunch to the following people for their dots, configs, and general inspiration which i've shamelessly stolen from:
- NixOS/nixos-hardware
- hyprland-community/hyprnix
- spikespaz/dotfiles
- Misterio77/nix-starter-configs
- mccd.space install guide
- disco docs
- XDG_CONFIG_HOME setting
- Daru-san/spicetify-nix
- agenix
- wpa_supplicant env file docs
- escaping nix variables
- nerd fonts cheat sheet
- setting the default shell in nix
- hyprwm/contrib
- gtk with home manager
- setting up the proper portals
- tuigreet setup
The code is licensed under MIT! That means MIT allows for free use, modification, and distribution of the software, requiring only that the original copyright notice and disclaimer are included in copies. All artwork and images are copyright reserved but may be used with proper attribution to the authors.
© 2025-present Kieran Klukas






