A meticulously crafted development environment powered by Nix and nix-darwin, designed for maximum productivity and minimal friction.
- Declarative Setup: Your entire system configuration defined as code
- Cross-Platform: Configured for both macOS (Darwin) and NixOS systems
- Homebrew Integration: Seamless integration with Homebrew via nix-homebrew
- Modern Terminal: Alacritty + Tmux + Neovim for a powerful CLI experience
- Window Management: Yabai for tiling window management with skhd keybindings
- Developer Tools: Comprehensive collection of development utilities
- Shell Environment: Zsh with custom configurations
- Terminal: Alacritty terminal emulator
- Text Editor: Neovim configuration
- Terminal Multiplexer: Tmux setup
- Git Workflow: Lazygit and custom Git configurations
- Window Management: Yabai (tiling window manager)
- Keyboard: Skhd (hotkey daemon) and Karabiner (keyboard customization)
- System Configuration: Nix and nix-darwin for declarative setup
- Languages & Toolchains: Configuration for various programming languages
- Infrastructure: Docker, Kubernetes (k9s), AWS tooling
- Databases: Database clients and tools
- Nix package manager
- macOS or NixOS
- Clone the repository
git clone https://github.com/devmegablaster/dotfiles ~/dotfiles- Install Nix (if not already installed)
sh <(curl -L https://nixos.org/nix/install)- For macOS:
nix run ~/dotfiles/nix#build-switchNote
You need to give Full Disk Access to the Terminal you are using to run the script.
This will:
- Build the configuration
- Switch to the new generation
- Link all dotfiles to appropriate locations
└── dotfiles/
├── README.md
├── alacritty/ # Terminal configuration
├── bin/ # Custom scripts
├── karabiner/ # Keyboard customization
├── neofetch/ # System info display
├── nix/ # Nix configuration
│ ├── flake.nix # Main entry point
│ └── ...
├── nvim/ # Neovim configuration
├── skhd/ # Hotkey daemon
├── tmux/ # Terminal multiplexer
├── yabai/ # Window manager
└── zsh/ # Shell configuration
The configurations are organized into modules:
nix/modules/darwin/: macOS-specific configurationsnix/modules/shared/: Common configurations shared across platforms
Modify these files to customize your setup according to your preferences.
Released under the MIT License.
Created with ❤️ by @devmegablaster