Skip to content

Latest commit

 

History

583 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nix-system

Nix-based system configuration using flakes, nix-darwin, and home-manager. Organized using the dendritic pattern.

Supported Architectures

  • aarch64-darwin (Apple Silicon)

Installation from Scratch

  1. Install Nix
  2. Clone this repo
  3. Update hostname in hosts/flake-module.nix to match your system by running: hostname
  4. Update username in modules/user.nix
  5. Run initial build: nix run --extra-experimental-features 'nix-command flakes' nix-darwin -- switch --flake .#

Adding New Hosts

Add a new configuration in hosts/flake-module.nix:

darwinConfigurations = {
  new-hostname = self.lib.mkDarwinHost {
    hostname = "new-hostname";
  };
};

The helpers (defined in modules/host-helpers.nix) automatically:

  • Include platform-specific modules
  • Include GUI applications (all macOS systems are desktop systems)
  • Configure home-manager with the user from modules/user.nix
  • Set up nixpkgs for the target platform

Module Organization

All configuration lives in modules/ as flat files following the dendritic pattern. Each module exports to appropriate namespaces (darwin.base, homeManager.base, etc.). See CLAUDE.md for detailed architecture documentation.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages