https://github.com/alyraffauf/nixcfg
Multi-host NixOS + home-manager flake.
https://github.com/alyraffauf/nixcfg
framework-laptop gnome home-manager homelab hyprland kde nix nix-flake nixos nixos-configuration
Last synced: about 1 year ago
JSON representation
Multi-host NixOS + home-manager flake.
- Host: GitHub
- URL: https://github.com/alyraffauf/nixcfg
- Owner: alyraffauf
- License: gpl-3.0
- Created: 2024-02-29T22:06:45.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-02-15T14:56:58.000Z (over 1 year ago)
- Last Synced: 2025-02-15T15:49:33.394Z (over 1 year ago)
- Topics: framework-laptop, gnome, home-manager, homelab, hyprland, kde, nix, nix-flake, nixos, nixos-configuration
- Language: Nix
- Homepage:
- Size: 114 MB
- Stars: 91
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# āļø nixcfg
Welcome to my **nixcfg**!
This repository contains my NixOS and Home-Manager configurations, along with custom modules and packages. It is modular, declarative, and tailored for multi-device setups.
---

---
## ⨠Features
- **Encryption:** Encrypted boot drives with Secure Boot, LUKS, and TPM decryption.
- **Hardware Configuration**: Robust hardware support for all hosts.
- **Home-Manager**: Unified management of user environments.
- **Hyprland:** Dynamic tiling Wayland compositor and window manager.
- **Modular Configuration**: Organized and reusable modules for simplicity.
- **Multi-Device Support**: Written with multiple hosts in mind.
- **Stylix:** Auto-generated base16 themes for the whole desktop.
---
## š Repository Structure
```plaintext
.
āāā flake.nix # Main entry point
āāā homes/ # home-manager configurations
āāā hosts/ # NixOS host configurations
āāā modules/ # Modules for NixOS and home-manager
āāā overlays/ # Custom Nixpkgs overlays
āāā pkgs/ # Custom packages
āāā README.md # This README
```
### Key Files and Directories
- **`flake.nix`**: Central file linking all configurations using Nix Flakes.
- **`homes/`**: User-specific home-manager configurations.
- **`hosts/`**: Host configurations for NixOS.
- **`modules/`**: Modules for NixOS and home-manager.
- **`overlays/`**: Defines custom overlays to extend or override Nixpkgs.
- **`pkgs/`**: Houses custom or patched package definitions.
- **`secrets/`**: Securely stores encrypted credentials or sensitive data.
---
## š Getting Started
### Prerequisites
- A working Nix installation with Flakes enabled.
- Familiarity with NixOS, Home-Manager, and declarative configurations.
### Clone the Repository
```bash
git clone https://github.com/alyraffauf/nixcfg.git
cd nixcfg
```
### Apply the Configuration
For **NixOS** systems:
```bash
sudo nixos-rebuild switch --flake .#
```
For **Home-Manager** setups:
```bash
home-manager switch --flake .
```
> Replace `` with the desired system configuration from your modules.
---
## š¤ Contributing
While this is a personal project, Iām open to feedback or suggestions.\
Feel free to open an issue or share ideas that could improve this setup!
---
## š License
This repository is licensed under the **[GNU General Public License](LICENSE.md)**.
---
## š Acknowledgments
- [nixpkgs](github.com/nixos/nixpkgs): 'nough said.
- [agenix](https://github.com/ryantm/agenix): secrets storage and orchestration.
- [disko](https://github.com/nix-community/disko): declarative partitions and disk configuration.
- [home-manager](https://github.com/nix-community/home-manager): declarative dotfile and user package management.
- [hyprland](https://github.com/hyprwm/Hyprland): great dynamic tiling wayland compositor.
- [lanzaboote](https://github.com/nix-community/lanzaboote): secure boot for NixOS.
- [nur](https://github.com/nix-community/NUR): extra packages from the nix user repository.
- [stylix](https://github.com/danth/stylix): system-wide color schemes and typography.
---
## ā Stargazers Over Time
[](https://starchart.cc/alyraffauf/nixcfg)
---