Systemd and top-level drop-ins for user units

(This post is just a bit of good old-fashioned search engine fodder. Systemd terminology is frustratingly generic, making it hard to find solutions to specific problems related to it.)

I’m trying out per-user units for the first time, and immediately wanted to also use top-level drop-ins. I couldn’t find solid documentation for it, but logically, I assumed they would go under ~/.config/systemd/user/service.d/.

This didn’t seem to work though: systemctl --user cat $unitname still only listed the contents of $unitname.service without what I had in ~/.config/systemd/user/service.d/override.conf.

After flailing around for a while, I realized I just had to do a systemctl daemon-reload --user to make it work.

(I don’t know if the support for top-level drop-ins in per-user units was already there when user units themselves arrived, but at least it’s working for me in Ubuntu 24.04 with systemd version 255.)