| common | ||
| hosts | ||
| flake.nix | ||
| README.md | ||
Nimmo's NixOS Configurations (Electra & Lena)
This repository manages the NixOS configurations for multiple machines using Flakes.
- Electra: Framework 16 (Strix Point + RTX 5070) - High Performance / Gaming.
- Lena: Secondary Laptop - Standard / Light Use.
1. Directory Structure
common/: Shared configuration (Users, GUI Apps, CLI Tools, Fonts, Plasma Settings).hosts/electra/: Electra-specific hardware config, kernel parameters, and strict boot modes.hosts/lena/: Lena-specific hardware config.flake.nix: Entry point defining both hosts.
2. Initial Setup (Electra Only - BIOS)
Crucial: Before booting NixOS on Electra, you must configure the BIOS to handle the memory split for LLMs.
- Reboot and enter BIOS (F2 or Del).
- Find Graphics Memory, UMA Frame Buffer, or iGPU Memory.
- Set this to 16G (or "Game Optimized").
3. Installation Guide
Once you have booted the NixOS Unstable ISO:
Step 1: Disk Partitioning & Mounting
Follow standard NixOS procedure (or see previous version of this README for BTRFS subvolume layout). Mount your root to /mnt.
Step 2: Clone Configuration
We will clone the repo into the user's Scripts folder (persistent location), but for installation we can clone it temporarily or directly to the target.
Recommended approach for Install:
-
Clone to /mnt/etc/nixos (Temporary):
# Replace USERNAME with your git user nix-shell -p git --run "git clone https://git.nimmog.uk/nimmo/nixos-config.git /mnt/etc/nixos" -
Generate Hardware Config:
nixos-generate-config --root /mnt -
Move Hardware Config to Correct Host Folder:
For Electra:
mv /mnt/etc/nixos/hardware-configuration.nix /mnt/etc/nixos/hosts/electra/hardware-configuration.nixFor Lena:
mv /mnt/etc/nixos/hardware-configuration.nix /mnt/etc/nixos/hosts/lena/hardware-configuration.nix
Step 3: Install & Set Password
-
Run the Installer:
For Electra:
nixos-install --flake /mnt/etc/nixos#electraFor Lena:
nixos-install --flake /mnt/etc/nixos#lena -
Set User Password: Do not reboot yet!
nixos-enter passwd nimmo exit -
Reboot:
reboot
4. Post-Installation & Management
After rebooting, move your config to your home folder for easier management.
-
Move Config:
mkdir -p ~/Scripts sudo mv /etc/nixos ~/Scripts/nixos-config sudo chown -R nimmo:users ~/Scripts/nixos-config -
Apply Changes: From now on, edit files in
~/Scripts/nixos-config.- Edit:
nano ~/Scripts/nixos-config/common/user-apps.nix(or other files) - Rebuild (Electra):
sudo nixos-rebuild switch --flake ~/Scripts/nixos-config/#electra - Rebuild (Lena):
sudo nixos-rebuild switch --flake ~/Scripts/nixos-config/#lena
- Edit:
-
Adding Apps:
- CLI Tools: Edit
common/system-utils.nix - GUI Apps: Edit
common/user-apps.nix
- CLI Tools: Edit
5. Electra Specifics
Boot Modes
Electra has specialized boot modes selectable at startup:
- NixOS Default: NVIDIA + Balanced Power (Use when GPU module is inserted).
- Gaming-Zen: NVIDIA + Zen Kernel + Max Performance.
- Eco-Battery: NVIDIA + TLP (Max Saver).
- No-dGPU: iGPU Only. Use this when the GPU module is physically replaced with the Expansion Shell.
Bus IDs
- NVIDIA: 193 (
c1:00.0) - AMD: 194 (
c2:00.0)
6. Docker
Docker is installed in Rootless mode.
docker run hello-world
7. Fingerprint Reader
- Login: Password only (required for KWallet).
- Sudo/Unlock: Fingerprint enabled.