Pass around `perSystem`'s `pkgs` instances to the system configurations
Some more refactoring in `configurations`' `mkHost` functions
Also start using `home-manager`'s `useGlobalPkgs` option
Also use `mkShellNoCC` for default `devShell`
Also `nix flake update`
Update flake (`neovim-nightly-overlay` is fixed)
Format all `.nix` files
Unify package/module argument order:
- `inputs`, `outputs`, `lib`, `pkgs`, `config`, ...
Move Jellyfin config to a `NixOS` module (first one, yay)
Add `direnv` to `reo101-shell` modules (was used, but not defined as wanted)
- TODO: make it optional (module config options)
Place all configurations in `machines/${manager}/${system}/${hostname}/...`:
- `${manager}` - One of `nixos`, `nix-on-droid`, `nix-darwin` or `home-manager`
- `${system}` - A system's architecture (can be many)
- `${hostname}` - A system's hostname (can be many)
The flake now automatically generates the needed configurations based on the above structure.
It only generates configurations for valid directory structures:
- It wouldn't generate a NixOS config if there isn't a `configuration.nix` file
- ...