Skip to content

grounded042/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

115 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

the dotfiles of Jon Carl

Installation

Prerequisites

  1. Install Ghostty - Download from ghostty.org

  2. Install Homebrew - https://brew.sh/

  3. Install Nix (Determinate installer) -

    curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install

    This enables nix-command and flakes by default, so no extra flags are needed during bootstrap.

  4. Install SF Symbols - Download from Apple Developer

  5. Required Permissions - Terminal (or your terminal app) needs Full Disk Access permission to modify system preferences:

    • Go to System Settings > Privacy & Security > Full Disk Access
    • Add your terminal application (Terminal.app, Ghostty, etc.)
    • Restart your terminal

    Without this permission, you'll get errors like:

    Could not write domain /Users/.../Library/Containers/com.apple.Safari/Data/Library/Preferences/com.apple.Safari; exiting
    

Installation

  1. Clone this repo to ~/code/dotfiles

  2. Bootstrap nix-darwin - This one-time step installs nix-darwin itself. Run from the repo root:

    sudo nix run nix-darwin -- switch --flake ~/code/dotfiles#joncarl-macbook

    If using the stock Nix installer instead of Determinate, use sudo nix --extra-experimental-features "nix-command flakes" run nix-darwin -- switch --flake ~/code/dotfiles#joncarl-macbook since flakes aren't enabled by default.

  3. Apply future changes - After initial setup, use:

    sudo darwin-rebuild switch --flake ~/code/dotfiles#joncarl-macbook

Customization

Overriding Username

To use these dotfiles with a different username, modify the username in current_system.nix:

System-Specific Configuration

Use current_system.nix to add machine-specific configuration without modifying the main files:

{
  username = "joncarl";
  configuration = {
    config,
    pkgs,
    lib,
    ...
  }: {
    # Add your system-specific configuration here
    environment.etc."pam.d/sudo_local".enable = lib.mkForce false;
  };
}

About

the dotfiles of Jon Carl

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages