readme: no more reusability
This commit is contained in:
parent
687e48da4a
commit
576cf6dc87
1 changed files with 9 additions and 4 deletions
13
README.md
13
README.md
|
@ -5,6 +5,13 @@
|
|||
</h1>
|
||||
Collection of my personal Nix configurations and opinionated NixOS, nix-darwin, home-manager, and flake-parts modules.
|
||||
|
||||
> [!CAUTION]
|
||||
> I tried to make the modules in this repository useful to others without having to modify them,
|
||||
> meaning I tried to have many configuration options, have them be disabled by default, etc.
|
||||
> That is no more and although I still encourage people to use my config for learning and inspiration,
|
||||
> the modules will now assume they're running in my infrastructure and I'll only add
|
||||
> configuration and/or enabling options when it makes sense to me, personally.
|
||||
|
||||
## Project structure
|
||||
- hosts - per-machine configurations
|
||||
- kazuki - my linux arm server
|
||||
|
@ -14,9 +21,8 @@ Collection of my personal Nix configurations and opinionated NixOS, nix-darwin,
|
|||
- ude - another linux arm server
|
||||
- kogata - my m1 mac mini doubling as a server
|
||||
- modules - options which in principle should be reusable by others
|
||||
- */common - common options between my machines which aren't meant to be reusable by others
|
||||
- system
|
||||
- settei - my opinionated nixos/nix-darwin options
|
||||
- system - my opinionated nixos/nix-darwin modules
|
||||
- home - my opinionated home-manager modules
|
||||
- flake - flake-parts modules
|
||||
- secrets - agenix secrets
|
||||
- wrappers - nix packages wrapped with my configs (see: [wrapper-manager](https://github.com/viperML/wrapper-manager))
|
||||
|
@ -32,7 +38,6 @@ Not set rules but general guidelines for myself to hopefully keep this config cl
|
|||
this means i'll try to only do `imports = [ ./foo ];` or `imports = [ ./bar.nix ]` but not `imports = [ ./x/y/z.nix ];`
|
||||
- the file should be roughly in order of most interesting to least interesting options.
|
||||
- `imports` should be the first attribute (except for `_file`)
|
||||
- anything that goes into `modules` should be usable by others, except for `modules/common`.
|
||||
- there should be no implicit state anywhere in the config.
|
||||
(sounds obvious but this is already broken with legion and the zfs pool but i'll let that one slide)
|
||||
to achieve this i still need to create a proper live iso with my config and my bootstrapping ssh key
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue