nothing was creating /home/lament #128

Merged
lament merged 1 commit from lament-home-tmpfiles into main 2026-08-27 02:58:48 -05:00
Owner

ssh minerva has been greeting me with Could not chdir to home directory /home/lament: No such file or directory since the local accounts came out. sssd hands over the account, but nothing ever created the directory it points at, and /home isn't persisted - so there's nothing to survive a boot either.

  • systemd.tmpfiles.rules creates /home/lament on every host without a local account
    • numeric 1000 1000 rather than names: tmpfiles runs well before sssd can resolve either
    • skipped where localAccount already declares a home (verdandi)
  • while in there: modules.lament.standalone had no consumers left
    • every host set it true, so home-manager.users.lament's mkIf (!cfg.standalone) branch was dead code
    • option, branch, the five host toggles, and a now-unused optionals all dropped
    • home-manager-root still rides the NixOS module, so core.nix's HM wiring stays
  • verdandi's local lament pinned to uid/gid 1000 to match what the directory serves
    • it's the one host whose lament is a real local account that also answers to the LDAP password and GSSAPI - one identity, so both lookup paths should agree on the numbers
    • users.groups.lament declared at 1000 alongside it; nsswitch shadows sssd's entry there, which is the point on the box that can't depend on its own directory

/home/lament on verdandi is currently gid 100 and empty, so the gid change is a no-op today - worth deploying that host before anything lands in it.

Does not touch the HM profile itself: the servers still get a bare shell, homeConfigurations."lament@server" remains unapplied. Separate problem, separate PR.

`ssh minerva` has been greeting me with `Could not chdir to home directory /home/lament: No such file or directory` since the local accounts came out. sssd hands over the account, but nothing ever created the directory it points at, and `/home` isn't persisted - so there's nothing to survive a boot either. - `systemd.tmpfiles.rules` creates `/home/lament` on every host without a local account - numeric `1000 1000` rather than names: tmpfiles runs well before sssd can resolve either - skipped where `localAccount` already declares a home (verdandi) - while in there: `modules.lament.standalone` had no consumers left - every host set it `true`, so `home-manager.users.lament`'s `mkIf (!cfg.standalone)` branch was dead code - option, branch, the five host toggles, and a now-unused `optionals` all dropped - `home-manager-root` still rides the NixOS module, so `core.nix`'s HM wiring stays - verdandi's local `lament` pinned to uid/gid 1000 to match what the directory serves - it's the one host whose `lament` is a real local account that also answers to the LDAP password and GSSAPI - one identity, so both lookup paths should agree on the numbers - `users.groups.lament` declared at 1000 alongside it; nsswitch shadows sssd's entry there, which is the point on the box that can't depend on its own directory `/home/lament` on verdandi is currently gid 100 and empty, so the gid change is a no-op today - worth deploying that host before anything lands in it. Does not touch the HM profile itself: the servers still get a bare shell, `homeConfigurations."lament@server"` remains unapplied. Separate problem, separate PR.
create lament's home dir via tmpfiles, drop the dead standalone toggle
Some checks failed
CI / check (pull_request) Successful in 52s
CI / deploy (pull_request) Has been skipped
CI / dry-activate (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
abc7274bc9
sssd supplies the account but nothing created /home/lament, so every ssh to a
server landed in a missing cwd. lamentUser's integrated HM branch had no
consumers left - every host set standalone = true.
lament changed target branch from vaultwarden-admin-token to main 2026-08-27 02:51:58 -05:00
lament force-pushed lament-home-tmpfiles from abc7274bc9
Some checks failed
CI / check (pull_request) Successful in 52s
CI / deploy (pull_request) Has been skipped
CI / dry-activate (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
to 5865d27a7b
All checks were successful
CI / check (pull_request) Successful in 49s
CI / deploy (pull_request) Has been skipped
CI / build (pull_request) Successful in 2m33s
CI / dry-activate (pull_request) Successful in 34s
CI / check (push) Has been skipped
CI / build (push) Has been skipped
CI / dry-activate (push) Has been skipped
CI / deploy (push) Successful in 2m39s
2026-08-27 02:52:08 -05:00
Compare
lament scheduled this pull request to auto merge when all checks succeed 2026-08-27 02:52:26 -05:00
lament merged commit 5865d27a7b into main 2026-08-27 02:58:48 -05:00
lament deleted branch lament-home-tmpfiles 2026-08-27 02:58:48 -05:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
lament/pantheon!128
No description provided.