`hid_nintendo` claims the pad when it is in Nintendo Switch mode, which
leaves Steam unable to reach it through hidraw. Blacklist the module and
tag the device with `uaccess` so Steam can open it.
`nix.gc` run as root cannot prune generations under
`~/.local/state/nix/profiles` (NixOS/nix#8508), and `nix-gc-env` only
looks in `/nix/var/nix/profiles`. Home-manager generations therefore
accumulated since August 2024 and filled the disk.
`nh clean all` enumerates users and walks their per-user profiles too.
It replaces `nix.gc.automatic`, which cannot be enabled alongside it.
Only `pinwheel` set this. Elsewhere files in `/tmp` survived reboots,
and leftover `nh` build result symlinks there kept acting as GC roots,
pinning store paths that should have been collected.
Served at dagbok.ppp.pm through nginx from 127.0.0.1:8093, with its token
from agenix, a Hetzner DNS-01 certificate, a dynamic DNS record and a
state backup snapshot.
/var/lib/<name> is a symlink into /var/lib/private for those, so find
stopped at the link and the state dump never copied their databases
(schema, puppy-tracker, todo, …). Follow it with find -H.
The WHIB frontend module no longer runs a container or has a `port`
option. Forward host port 8081 to nginx in the VM instead.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The household weekly plan at schema.ppp.pm: its module, certificate,
DNS record, backup and secrets. The link to puppy-tracker is prepared
but commented out until puppy-tracker with the integration feed is
deployed.
tmpfiles re-applied root:root to /var/lib/romm/db on every switch. A
MariaDB running as uid 999 then could not delete tc.log on shutdown,
so the next start took it for a crash and failed recovery with "Bad
magic header in tc log".
lego v5 renamed --dns.propagation-wait to --dns.propagation.wait and
--dns-timeout to --dns.timeout, and exits on the old names, so ordering
or renewing any certificate failed. The six identical cert blocks are
now one definition applied to each domain.
systemd-tmpfiles now ensures ~/code and ~/code/work are owned by
alex, since agenix previously created ~/code/work as root when the
work secrets pointed there directly.
Also drop the custom path= on work-gitconfig, work-github-token, and
work-go-private so they use agenix's default secret path instead of
living under ~/code/work.
Adds hardware.ipu6 for the built-in MIPI camera, plus two overlay
fixes needed for it to actually work on this hardware:
- Pin icamerasrc-ipu6epmtl to the same release tag already used by
ipu6-camera-bins/ipu6-camera-hal (20250923_ov02e). The version
nixpkgs currently pulls is an Intel internal IoT/Panther-Lake
validation build whose device table only lists external USB
AR0234 test sensors, never the real ov08x40, so the camera never
gets selected.
- Patch ipu6-camera-hal's hardcoded IVSC/CVS entity name from
"Intel IVSC CSI" (the out-of-tree ivsc driver's name) to "Intel
CVS" (the mainlined intel_cvs driver's name). The mismatch broke
I2C bus address resolution for the sensor, which cascaded into
wrong stream configs and black/missing video.
viperML/nh was moved to nix-community/nh and the old repo deleted, so
the pinned URL 404s on any re-fetch. The pinned commit still exists in
the new repo, so keep the exact rev and only change the owner.
Bluetooth HID devices (e.g. a mouse) appearing as power_supply
entries in sysfs make waybar's Battery::refreshBatteries() throw
an uncaught exception and abort. Restricting to BAT0 avoids
enumerating those devices.