NixOS
NixOS + Hyprland rice with flakes, home-manager and dev-shells
Install / Use
/learn @Sly-Harvey/NixOSREADME
Screenshots


Table of Contents
- Installation <!-- - [Before You Begin](#before-you-begin) --> <!-- - [Installation Steps](#installation-steps) -->
- Usage
- Development Shells
- Credits
Installation
<!-- You can install this configuration either on a running system or from the NixOS live installer. The minimal ISO is recommended and can be downloaded from the [official NixOS website](https://nixos.org/download/#nixos-iso). -->[!Note] Before proceeding with the installation, check these files and adjust them for your system:
hosts/Default/variables.nix: Contains host-specific variables.hosts/Default/host-packages.nix: Lists installed packages for the host.hosts/Default/configuration.nix: Module imports for the host and extra configuration.
You can install on a running system or from the NixOS live installer. Get the minimal ISO from the NixOS website.
Installation Steps
- Clone the Repository:
git clone https://github.com/Sly-Harvey/NixOS.git ~/NixOS
<!-- 2. Navigate to the Directory: -->
- Change Directory:
cd ~/NixOS
- Run the Installer:
./install.sh
<!-- The script handles host setup, username configuration, and automatically generates `hardware-configuration.nix` based on your hardware. -->
The install and rebuild scripts automate the setup process, including hosts, username, and applying the configuration. It also automatically generates the hardware-configuration.nix file based on your system's detected hardware, eliminating the need to manually generate it.
Usage
Managing Hosts
Method 1: Automatic - run the installer again to select or create another host:
./install.sh
Method 2: Manual:
-
Copy
hosts/Defaultto a new directory (e.g.,hosts/Laptop) -
Edit the new host's
variables.nixandhost-packages.nix -
Add the host to
flake.nix:nixosConfigurations = { Default = mkHost "Default"; Laptop = mkHost "Laptop"; }; -
Track the new host with git:
git add hosts/Laptop
- Rebuild with the new hostname using either
nixos-rebuildornh(see Rebuilding below). Once rebuilt, any rebuilding method can be used, as the host name will be implicitly recognised.
Rebuilding
Apply configuration changes:
- Keyboard shortcut:
Super + U - rebuild script:
rebuild - nixos-rebuild:
sudo nixos-rebuild switch --flake ~/NixOS#<HOST> - nh:
nh os switch --hostname <HOST>
Replace <HOST> with the name of your host (e.g., Laptop).
Rollbacks
List generations:
list-gens
Rollback to generation N:
rollback N
Replace N with the generation number (e.g., 69).
Keybindings
View all keybindings with Super + ? or Super + Ctrl + K.
Development Shells
Pre-configured dev shells for various languages are included.
Initialize a project from a template:
nix flake init -t ~/NixOS#<TEMPLATE_NAME>
Create a new project directory:
nix flake new -t ~/NixOS#<TEMPLATE_NAME> <PROJECT_NAME>
Templates are defined in dev-shells/default.nix (python, node, etc.).
Enter the shell:
cd <PROJECT_NAME>
nix develop
If you're using direnv, the shell activates automatically.
Credits/Inspiration
| Credit | Reason | | ------------------------------------------------------------- | ---------------------------- | | Hyprland-Dots | Scripts and Waybar templates | | HyDE | Additional scripts | | rofi | Rofi launcher styles | | dev-templates | Development templates | | Vimjoyer | NixOS tutorials |
<!-- --- ## ⭐ Star History <details> <summary>View Star History</summary> <a href="https://github.com/Sly-Harvey/NixOS/stargazers"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=Sly-Harvey/NixOS&type=Date&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=Sly-Harvey/NixOS&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=Sly-Harvey/NixOS&type=Date" /> </picture> </a> </details> -->Related Skills
node-connect
333.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
333.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
82.0kCommit, push, and open a PR
