- Add deadnix, nixfmt, and statix to flake inputs
- Add formatter output to flake for nix fmt support
- Add deadnix, nixfmt, statix to Home Manager packages
- Add GitHub Actions workflow for CI validation
- Add .pre-commit-config.yaml with hooks for nixfmt, deadnix, and statix
- Support x86_64-darwin in formatter
- Delete 2024-12-rework/ folder
- Rename modules/hosts/common to modules/shared, then split into:
- modules/shared/home/general
- modules/shared/home/linux
- modules/shared/nixos
- Update all import paths throughout the codebase
- Update lib/*.nix to use new paths
- Fix hardcoded /Users/${username} to use config.home.homeDirectory
- Update README and examples/flake-structure.nix
SSH key imports removed as they're now handled by private-flake
Email config for hetznix01 moved to private-flake
Network config for hetznix01/02 moved to private-flake
In the UI, I setup the "OAuth" method of logging in, logged in, used my
local account to up my permissions to administrator, then added these
settings so that only my Pocket ID-based login was an option.
The primary motivator here was that the NFO files from Pinchflat had the
path to everything starting at `/downloads` and that didn't work well
with Jellyfin who saw the real path to the files
Prior to this, I had tried to run as my user but that doesn't work here.
It seems you have to use the version of running containers built into
home-manager if you want rootless podman.
This is being done as a step before moving to the nix version of ABS.
That change would be included here too, but I ran into a bug:
```
[2024-12-02 19:53:46.433] FATAL: [Server] Unhandled rejection: [Error: EACCES: permission denied, mkdir '/metadata'] {
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/metadata'
}
promise: Promise {
<rejected> [Error: EACCES: permission denied, mkdir '/metadata'] {
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/metadata'
}
}
```
No idea why yet so the container lives on.
To setup the mountpoint, I ran `zfs set mountpoint=legacy
orico/audiobookshelf` and created the directory used as the mount in the
`fileSystems` section.