···8282## File structure
83838484I'm hoping the file structure under `/nix` is mostly self-explanatory. That said, there are a couple that bear explaining:
8585-- `modules` for flake modules consumed by [flake-parts]
8686-- `schemas` for my custom [flake-schemas] definitions
8787-- `shared` for configuration and modules useful to both and NixOS and Home Manager
8888-8989-<details>
9090-<summary>Tree view of the directory structure</summary>
9191-9292-```sh
9393-./nix
9494-├── apps
9595-│ ├── assets.nix
9696-│ ├── ci.nix
9797-│ └── default.nix
9898-├── checks
9999-│ ├── default.nix
100100-│ └── homeConfigurations.nix
101101-├── flakeModules
102102-│ ├── agenixRekey.nix
103103-│ ├── default.nix
104104-│ ├── ezConfigs.nix
105105-│ ├── gitHooks.nix
106106-│ └── just.nix
107107-├── home
108108-│ ├── configs
109109-│ ├── modules
110110-│ └── profiles
111111-├── legacyPackages
112112-│ ├── ciMatrix.nix
113113-│ ├── default.nix
114114-│ └── scripts
115115-├── lib
116116-│ ├── config.nix
117117-│ ├── default.nix
118118-│ ├── secrets.nix
119119-│ ├── storage
120120-│ └── strings.nix
121121-├── nixos
122122-│ ├── configs
123123-│ ├── modules
124124-│ └── profiles
125125-├── overlays
126126-│ ├── default.nix
127127-│ ├── external.nix
128128-│ ├── lix.nix
129129-│ ├── nixpkgsVersions.nix
130130-│ ├── nuInterpreterStdin.nix
131131-│ ├── packages.nix
132132-│ └── python.nix
133133-├── packages
134134-│ ├── default.nix
135135-│ └── lichen
136136-├── schemas
137137-│ ├── agenixRekey.nix
138138-│ ├── default.nix
139139-│ ├── lib.nix
140140-│ └── systems.nix
141141-├── shared
142142-│ ├── default.nix
143143-│ ├── flatpak.nix
144144-│ ├── nix.nix
145145-│ ├── secrets.nix
146146-│ └── theming.nix
147147-└── shells
148148- ├── default.nix
149149- ├── deploy.nix
150150- ├── maintenance.nix
151151- ├── minimal.nix
152152- ├── nix.nix
153153- └── rust.nix
154154-```
155155-</details>
156156-157157-## Outputs
158158-159159-If you're curious, this is what the flake actually outputs right now.
160160-Courtesy of [flake-schemas]' patches with my own lib/pkgs schemas on top.
161161-162162-<details>
163163-<summary>Output of `nix flake show`</summary>
164164-165165-```sh
166166-git+file:///home/lpchaim/.config/nixos
167167-├───agenix-rekey
168168-│ ├───aarch64-linux
169169-│ │ ├───edit-view: agenix-rekey executable
170170-│ │ ├───generate: agenix-rekey executable
171171-│ │ ├───rekey: agenix-rekey executable
172172-│ │ └───update-masterkeys: agenix-rekey executable
173173-│ └───x86_64-linux
174174-│ ├───edit-view: agenix-rekey executable
175175-│ ├───generate: agenix-rekey executable
176176-│ ├───rekey: agenix-rekey executable
177177-│ └───update-masterkeys: agenix-rekey executable
178178-├───apps
179179-│ ├───aarch64-linux
180180-│ │ ├───generate-assets: app
181181-│ │ ├───generate-ci-matrix: app
182182-│ │ └───render-readme: app
183183-│ └───x86_64-linux
184184-│ ├───generate-assets: app
185185-│ ├───generate-ci-matrix: app
186186-│ └───render-readme: app
187187-├───checks
188188-│ ├───aarch64-linux
189189-│ │ ├───deploy-shell: CI test [nix-shell]
190190-│ │ ├───maintenance-shell: CI test [nix-shell]
191191-│ │ ├───minimal-shell: CI test [nix-shell]
192192-│ │ ├───nix-shell: CI test [nix-shell]
193193-│ │ ├───pre-commit: CI test [pre-commit-run]
194194-│ │ └───rust-shell: CI test [nix-shell]
195195-│ └───x86_64-linux
196196-│ ├───deploy-shell: CI test [nix-shell]
197197-│ ├───"homeConfigurations.cheina@pc082": CI test [home-manager-generation]
198198-│ ├───maintenance-shell: CI test [nix-shell]
199199-│ ├───minimal-shell: CI test [nix-shell]
200200-│ ├───nix-shell: CI test [nix-shell]
201201-│ ├───pre-commit: CI test [pre-commit-run]
202202-│ └───rust-shell: CI test [nix-shell]
203203-├───darwinConfigurations
204204-├───darwinModules
205205-├───devShells
206206-│ ├───aarch64-linux
207207-│ │ ├───default: development environment [maintenance-shell]
208208-│ │ ├───deploy: development environment [deploy-shell]
209209-│ │ ├───maintenance: development environment [maintenance-shell]
210210-│ │ ├───minimal: development environment [minimal-shell]
211211-│ │ ├───nix: development environment [nix-shell]
212212-│ │ └───rust: development environment [rust-shell]
213213-│ └───x86_64-linux
214214-│ ├───default: development environment [maintenance-shell]
215215-│ ├───deploy: development environment [deploy-shell]
216216-│ ├───maintenance: development environment [maintenance-shell]
217217-│ ├───minimal: development environment [minimal-shell]
218218-│ ├───nix: development environment [nix-shell]
219219-│ └───rust: development environment [rust-shell]
220220-├───formatter
221221-│ ├───aarch64-linux: formatter [alejandra-4.0.0]
222222-│ └───x86_64-linux: formatter [alejandra-4.0.0]
223223-├───homeConfigurations
224224-│ ├───"cheina@pc082": Home Manager configuration [home-manager-generation]
225225-│ ├───"lpchaim@desktop": Home Manager configuration [home-manager-generation]
226226-│ ├───"lpchaim@laptop": Home Manager configuration [home-manager-generation]
227227-│ ├───"lpchaim@raspberrypi": Home Manager configuration [home-manager-generation]
228228-│ └───"lpchaim@steamdeck": Home Manager configuration [home-manager-generation]
229229-├───homeModules
230230-│ ├───bars: Home Manager module
231231-│ ├───ci: Home Manager module
232232-│ ├───cli: Home Manager module
233233-│ ├───de: Home Manager module
234234-│ ├───default: Home Manager module
235235-│ ├───development: Home Manager module
236236-│ ├───gui: Home Manager module
237237-│ ├───misc: Home Manager module
238238-│ ├───nix: Home Manager module
239239-│ ├───scripts: Home Manager module
240240-│ ├───secrets: Home Manager module
241241-│ ├───security: Home Manager module
242242-│ ├───ssh: Home Manager module
243243-│ ├───syncthing: Home Manager module
244244-│ ├───theming: Home Manager module
245245-│ └───wayland: Home Manager module
246246-├───legacyPackages
247247-│ └───(skipped; use '--legacy' to show)
248248-├───lib
249249-│ ├───carapaceSpecFromNuScript: library function
250250-│ ├───config: library namespace
251251-│ ├───isNvidia: library function
252252-│ ├───mkPkgs: library function
253253-│ ├───nixFilesToAttrs: library function
254254-│ ├───secrets: library namespace
255255-│ ├───storage: library namespace
256256-│ └───strings: library namespace
257257-├───nixosConfigurations
258258-│ ├───desktop: NixOS configuration [nixos-system-desktop-26.05.20260211.ec7c70d]
259259-│ ├───laptop: NixOS configuration [nixos-system-laptop-26.05.20260211.ec7c70d]
260260-│ ├───raspberrypi: NixOS configuration [nixos-system-raspberrypi-26.05.20260211.ec7c70d]
261261-│ └───steamdeck: NixOS configuration [nixos-system-steamdeck-26.05.20260211.ec7c70d]
262262-├───nixosModules
263263-│ ├───boot: NixOS module
264264-│ ├───ci: NixOS module
265265-│ ├───default: NixOS module
266266-│ ├───desktop: NixOS module
267267-│ ├───gaming: NixOS module
268268-│ ├───gui: NixOS module
269269-│ ├───hardware: NixOS module
270270-│ ├───kdeconnect: NixOS module
271271-│ ├───kernel: NixOS module
272272-│ ├───locale: NixOS module
273273-│ ├───networking: NixOS module
274274-│ ├───nix: NixOS module
275275-│ ├───pipewire: NixOS module
276276-│ ├───programs: NixOS module
277277-│ ├───secrets: NixOS module
278278-│ ├───secureboot: NixOS module
279279-│ ├───security: NixOS module
280280-│ ├───services: NixOS module
281281-│ ├───ssh: NixOS module
282282-│ ├───steamos: NixOS module
283283-│ ├───syncthing: NixOS module
284284-│ ├───tailscale: NixOS module
285285-│ ├───theming: NixOS module
286286-│ ├───users: NixOS module
287287-│ ├───virtualization: NixOS module
288288-│ ├───wayland: NixOS module
289289-│ └───zram: NixOS module
290290-├───overlays
291291-│ ├───external: Nixpkgs overlay
292292-│ ├───lix: Nixpkgs overlay
293293-│ ├───nixpkgsVersions: Nixpkgs overlay
294294-│ ├───nuInterpreterStdin: Nixpkgs overlay
295295-│ ├───packages: Nixpkgs overlay
296296-│ └───python: Nixpkgs overlay
297297-├───packages
298298-│ ├───aarch64-linux
299299-│ │ └───lichen: package [lichen-0.22.0-unstable]
300300-│ └───x86_64-linux
301301-│ └───lichen: package [lichen-0.22.0-unstable]
302302-├───schemas
303303-│ ├───agenix-rekey: flake schema
304304-│ ├───apps: flake schema
305305-│ ├───bundlers: flake schema
306306-│ ├───checks: flake schema
307307-│ ├───darwinConfigurations: flake schema
308308-│ ├───darwinModules: flake schema
309309-│ ├───devShells: flake schema
310310-│ ├───dockerImages: flake schema
311311-│ ├───formatter: flake schema
312312-│ ├───homeConfigurations: flake schema
313313-│ ├───homeModules: flake schema
314314-│ ├───hydraJobs: flake schema
315315-│ ├───legacyPackages: flake schema
316316-│ ├───lib: flake schema
317317-│ ├───nixosConfigurations: flake schema
318318-│ ├───nixosModules: flake schema
319319-│ ├───overlays: flake schema
320320-│ ├───packages: flake schema
321321-│ ├───schemas: flake schema
322322-│ ├───systems: flake schema
323323-│ └───templates: flake schema
324324-└───systems
325325- ├───aarch64-linux: supported system
326326- └───x86_64-linux: supported system
327327-```
328328-</details>
8585+- `nix/flakeModules` for flake modules consumed by [flake-parts]
8686+- `nix/schemas` for my custom [flake-schemas] definitions
8787+- `nix/shared` for configuration and modules useful to both and NixOS and Home Manager
+3-24
assets/README.md
···5454## File structure
55555656I'm hoping the file structure under `/nix` is mostly self-explanatory. That said, there are a couple that bear explaining:
5757-- `modules` for flake modules consumed by [flake-parts]
5858-- `schemas` for my custom [flake-schemas] definitions
5959-- `shared` for configuration and modules useful to both and NixOS and Home Manager
6060-6161-<details>
6262-<summary>Tree view of the directory structure</summary>
6363-6464-```sh
6565-$filestructure
6666-```
6767-</details>
6868-6969-## Outputs
7070-7171-If you're curious, this is what the flake actually outputs right now.
7272-Courtesy of [flake-schemas]' patches with my own lib/pkgs schemas on top.
7373-7474-<details>
7575-<summary>Output of `nix flake show`</summary>
7676-7777-```sh
7878-$outputs
7979-```
8080-</details>
5757+- `nix/flakeModules` for flake modules consumed by [flake-parts]
5858+- `nix/schemas` for my custom [flake-schemas] definitions
5959+- `nix/shared` for configuration and modules useful to both and NixOS and Home Manager