My NixOS Configs ❄️
Find a file
2026-03-09 00:46:48 -04:00
src Update nvim submodule 2026-03-09 00:39:15 -04:00
.envrc added development environment 2024-05-13 10:44:55 -04:00
.gitignore project specific .gitignore 2024-05-13 21:28:20 -04:00
.gitmodules Rename submodule to 'nvim' for cleaner config 2026-03-09 00:46:48 -04:00
flake.lock Updated nix to 25.11 2026-03-08 14:11:02 -04:00
flake.nix Update to 25.11, added claude-code user pkg 2026-03-08 11:18:14 -04:00
justfile virt changes including new NixVirt input 2025-01-27 16:23:01 -05:00
LICENSE unlicense 2023-03-22 10:30:50 -04:00
README.md Rename submodule to 'nvim' for cleaner config 2026-03-09 00:46:48 -04:00
system.configs added system configs symlink 2024-11-05 21:05:31 -05:00
user.configs changed imports to mkModules 2024-11-08 01:37:20 -05:00

My Nix Configurations 💻

My modular Nix configs🔥

Requirements ⚙️

NixOS Configurations

Home-Manager Configuration

Flake End-Points Exposed ❄️

NixOS Configurations:

  • desktop
  • wsl
  • server (wip)
  • vm

Home-Manager Configurations:

  • workstation

Fork this repo, take inspiration, borrow ideas and create your own NixOS configs & modules

Developing & Customizing 🔧

If you need a list of available packages and options:

Invoke nix develop to enter a development shell powered by just
Invoke just in order to view an available list of project scripts

user.configs.nix is a symlink to conveniently access centrally defined common user variables from the repo root

⚠️ Be sure to tailor any hardware settings to your own ⚠️ Replace the hardware.nix found in the src/system/machines/<machine> directory ⚠️ Run nixos-generate-config to generate a hardware-configuration.nix for your current system

Submodules

This repo uses git submodules for portable cross-platform configurations.

Neovim Config

The Neovim configuration is a separate repo for portability across non-NixOS systems.

Location: src/user/modules/utils/modules/neovim/config/nvim Repo: github.com/itme-brain/nvim

Cloning with submodules

git clone --recurse-submodules git@github.com:itme-brain/nixos.git
# Or after cloning:
git submodule update --init

Updating nvim config

# Edit files in the submodule, then:
cd src/user/modules/utils/modules/neovim/config/nvim
git add . && git commit -m "your changes" && git push

# Update reference in nixos repo:
git add src/user/modules/utils/modules/neovim/config/nvim
git commit -m "Update nvim submodule" && git push

Pulling nvim updates from remote

git submodule update --remote
git add src/user/modules/utils/modules/neovim/config/nvim
git commit -m "Update nvim submodule" && git push

Standalone nvim install (non-NixOS)

git clone git@github.com:itme-brain/nvim.git ~/.config/nvim