Warning
This repository has been merged into dotfiles.nix. Please refer to that repository for the latest configuration.
This repository contains my Nix configuration for both macOS and Linux systems.
It is designed to merge (the config as input) with ojsef39/nix-base configuration to create a complete system configuration.
flake.nix: Entry point for the Nix flake configuration, defining inputs and outputs.Makefile: Automation scripts for building and deploying configurations.renovate.json: Configuration for dependency updates.
-
nix/core.nix: Core Nix configurations shared across all systems. -
hosts/shared/: Shared configurations and programs used by both macOS and Linux.import.nix: Imports shared program modules.programs/: Contains configurations for various programs:editor/git/kitty/shell/ssh/yuki/…
hosts/darwin/:import.nix: Imports macOS-specific modules.system.nix: System-level settings and preferences for macOS.homebrew.nix: Homebrew package configurations (gets imported seperately).apps.nix: Additional applications to install on macOS.
- (darwin) Install Xcode Command Line Tools
xcode-select --install- Clone the Repository
git clone https://github.com/ojsef39/nix-personal.git
cd nix-base- Install Nix
Follow steps in (you have to restart your shell a couple of times):
make install
- Deploy Configuration
make deploy
# Full system deployment (auto-detects OS)
make deploy
# Deploy only for macOS
make deploy-darwin
# Deploy only for NixOS
sudo make deploy-nixos
# Update packages and configurations
make update
# Run linters
make lint
# Format the Nix code
make format
# Clean up old generations and store
sudo make clean
# Repair Nix store
sudo make repair
# Uninstall Nix (Caution: This will remove Nix from your system)
make uninstall