about summary refs log blame commit diff
path: root/README.md
blob: 5d9d6d926fe3e6e3ae5c23479536e05bc3416b49 (plain) (tree)
1
2
3
4
            
                                                        
 
 



















































                                                                                                                
# NIX Config
My current (and everchanging) NixOS configuration Flake.


![NixOS Configuration Image](./Documentation/desktop_screenshot.png)
  
## Installation
Installation steps are in [Documentation/INSTALLING.md](./Documentation/INSTALLING.md)

## Highlights
* Multiple NixOS configurations, including desktop, laptop, and VM
* Install and partitioning scripts
* **Impermanence**
* Encrypted **BTRFS** partitions
* Secrets using **git-crypt**
* Network-deployable through **deploy-rs**
* Modularized configuration
* Wayland (*river*) and XOrg (*dwm*) desktops

## Structure
Here is an overview of the repos' structure:
```
.
├── flake.nix
├── flake.lock
├── modules
├── overlays
├── packages
├── secrets
├── dotfiles
├── hosts
│  ├── default.nix
│  ├── configuration.nix
│  ├── home.nix
│  ├── luna
│  └── phobos
│     ├── default.nix
│     └── home.nix
└── hardware
   ├── laptop
   ├── chromebook
   ├── virtualbox
   └── thinkpad
      ├── default.nix
      ├── disks.nix
      └── hardware.nix
```
* `modules`: encapsulated NixOS modules used in parts of the config
* `overlays`: nixpkgs overlays used in the config
* `packages`: extra packages used in the config
* `secrets`: git-crypt encrypted secrets used in the config
* `dotfiles`: actual dotfiles used in the config
* `hosts`: the host-specific config. Contains folders representing each host with their own specific config
* `hardware`: the hardware-specific config (eg. Disks & Partitions). Contains folders representing each hardware

**This configuration was made to be modular and customizable; don't hesistate to adopt it and make it YOURS!**