macOS system configuration using Nix Darwin and Home Manager.
git clone https://github.com/patrikduksin/dotfiles.git ~/dotfiles
cd ~/dotfilesThis will install Homebrew, Nix, and apply the nix-darwin configuration:
./install.shdarwin-rebuild switch --flake ~/dotfilesCLI Tools: bat, eza, fd, fzf, ripgrep, zoxide, jq, yazi, direnv, mise, fish, starship, ffmpeg, imagemagick, cmake, cocoapods, fastlane, watchman, mas
Apps:
- Essential: 1Password, Aerospace, Raycast, Ghostty, Cursor, Helium
- Communication: Slack, Telegram, WhatsApp, Zoom, Discord, Teams, Loom
- Development: Figma, Insomnia, ngrok, mitmproxy, Xcodes, OpenMTP
- Utilities: AlDente, HiddenBar, OBS, Macs Fan Control, Contexts, IINA
- Apps: Spotify, Notion, Notion Calendar, ChatGPT
Mac App Store: Infuse
- Fish shell config
- Starship prompt (Nerd Font symbols)
- Git config (1Password SSH signing)
- mise version manager
- Aerospace window manager
- Dock: autohide, no recent apps
- Finder: show all extensions, path bar, list view
- Keyboard: fast key repeat
- Trackpad: tap to click, three finger drag
- Dark mode enabled
- Touch ID for sudo
The old fish config had an exposed token. Revoke it at: https://github.com/settings/tokens
Open Cursor and install:
biomejs.biome
dbaeumer.vscode-eslint
dooez.alt-catppuccin-vsc
esbenp.prettier-vscode
expo.vscode-expo-theme
expo.vscode-expo-tools
redhat.vscode-yaml
rvest.vs-code-prettier-eslint
vscodevim.vim
yoavbls.pretty-ts-errors
bun install -g @anthropic-ai/claude-code- 1Password
- Raycast
- Slack, Telegram, WhatsApp, Discord, Teams
- Spotify
- Notion
- Figma
Enable SSH agent in 1Password settings for git signing to work.
~/dotfiles/
├── flake.nix # Entry point
├── flake.lock
├── darwin/
│ └── default.nix # nix-darwin: brew, system settings
├── home/
│ └── default.nix # home-manager: dotfiles, programs
└── config/
├── fish/config.fish
├── starship.toml
├── mise/config.toml
└── aerospace/aerospace.toml
# Update flake inputs
cd ~/dotfiles
nix flake update
# Apply changes
darwin-rebuild switch --flake .