···1# NixOS Config
23-This repo contains the flake I use to configure any of my NixOS-configured devices.
045## Structure
67- flake.nix: Central file for exporting all my configs and anything else I need.
8- lib.nix: Helper functions
9-- systemconfigs/: All systems this flake configures, each system has some options
10- that describe it but the main thing that determines what options they set
11- are _roles_.
12-- nixosModules/: A set of path-"routed" NixOS modules that represent "roles".
13- A role is a feature a system can have (ex. the `graphics` role enables
14- Hyprland, GUI apps, etc). Roles can either be a singular nix file, or a folder
15- of them if they're complicated. Files named `role1+role2.nix` represent an
16- _overlap_ role, which is applied if all roles delimited by `+` are turned on.
17- base/: This folder contains modules applied unconditionally to all systems.
18- res/: Non-nix files used in the config. Pictures, scripts, etc.
19- pkgs/: Custom nix packages made for my config.
···2223## Implementation
2425-I'm not going to lie, I have no idea what I'm doing.
26-Is every feature here implmemented well? Definitely not, but that's okay!
···1# NixOS Config
23+This repo contains the flake I use to configure any of my NixOS-configured
4+devices.
56## Structure
78- flake.nix: Central file for exporting all my configs and anything else I need.
9- lib.nix: Helper functions
10+- systemconfigs/: All systems this flake configures, each system has some
11+ options that describe it but the main thing that determines what options they
12+ set are _roles_.
13+- nixosModules/: A set of path-"routed" NixOS modules that represent "roles". A
14+ role is a feature a system can have (ex. the `graphics` role enables Hyprland,
15+ GUI apps, etc). Roles can either be a singular nix file, or a folder of them
16+ if they're complicated. Files named `role1+role2.nix` represent an _overlap_
17+ role, which is applied if all roles delimited by `+` are turned on.
18- base/: This folder contains modules applied unconditionally to all systems.
19- res/: Non-nix files used in the config. Pictures, scripts, etc.
20- pkgs/: Custom nix packages made for my config.
···2324## Implementation
2526+I'm not going to lie, I have no idea what I'm doing. Is every feature here
27+implmemented well? Definitely not, but that's okay!