No description
ext | ||
home-mods | ||
os-mods | ||
pkgs | ||
secrets | ||
systems | ||
users | ||
.directory | ||
flake.lock | ||
flake.nix | ||
LICENSE.md | ||
monitor_battery.fish | ||
NOTES.md | ||
push_cache.sh | ||
README.md | ||
test | ||
test2 |
My nix conf
🏗️ System Setup
👷 "Manual"
- Boot Installer
- Clone repo
- Setup partitions
sudo nix run --extra-experimental-features flakes --extra-experimental-features nix-command github:nix-community/disko -- --mode disko --flake path:$PWD#nixos-pulse
- Run installer
sudo nixos-install --flake .#nixos-pulse
🚀 Fully-Automated
🚨 This will WIPE EVERYTHING on the specified system
⚠️ ensure proper sshd & firewall key setup for remote systems
nix run github:numtide/nixos-anywhere -- --flake path:$PWD#nixos-pulse root@1.2.3.4
🔄 Updates
Run this to keep your system up-to-date.
nix flake update
sudo nixos-rebuild # this assumes your hostname is the same as in the config
Run this to keep your home up-to-date. (Assuming you manage home-manager seperately and don't have it integrated into your osConfiguration)
nix flake update
home-manager switch --flake .
Plasma
Add GUI settings to plasma.nix
nix run github:pjones/plasma-manager | rg -v khotkeysrc | rg -v "\[ \]" > plasma.new.nix
diff plasma.nix plasma.new.nix
# copy over as needed
🛠️ Nix Configuration Structure
Here's a brief rundown of the directory structure:
Top-Level Files
flake.nix
: Nix Flake configuration file.
home-mods
Directory
Stores modules related to specific user applications or environments.
os-mods
Directory
Holds system-level modules for network, virtualization, desktop etc.
users
Directory
Holds home-manager configuration for the users listed in users.nix
systems
Directory
Holds system specific nixos configuration (e.g. hardware quirks).
🙏 Made possible by
- NixOS: https://nixos.org/
- Countless great examples e.g.:
- Caffeine https://en.wikipedia.org/wiki/Caffeine
License
My nix conf
Copyright (C) 2024 Tristan Druyen
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.