Hello, swedebugia <[email protected]> skribis:
> In a VM with GuixSD I did: > > $ shepherd > Backtrace: > 3 (primitive-load "/run/current-system/profile/bin/shephe…") > In shepherd.scm: > 164:9 2 (main . _) > In shepherd/support.scm: > 396:20 1 (verify-dir _ #:secure? _) > In unknown file: > 0 (stat "/run/user/30011/shepherd" #<undefined>) > > ERROR: In procedure stat: > In procedure stat: No such file or directory: "/run/user/30011/shepherd" Danny Milosavljevic <[email protected]> skribis: > this is a known problem in GuixSD (not in shepherd) and I don't think anyone > fixed > it yet, because it requires some design (and is kinda harder than ignoring the > problem and letting the user choose - see below). > > There is only rudimentary support for distinguishing sessions from users in > GuixSD > (I guess nowadays everyone is using a computer of their own and people don't > remember huge shared computers which you would dial into multiple times from > different sites (not necessarily after hanging up the previous connection) - > I work with the latter daily so I do remember). > > Shepherd assumes to be run per user (for non-root), not per session. > For the vast majority of tasks-to-be-automated, that is what you want. > > But who starts the per-user shepherd? I do! I run ‘shepherd’ as non-root on GuixSD, and I don’t have the above file-not-found issue. On GuixSD, /run/user/UID is created as expected, and I suspect it’s the same on most other GNU/Linux distros these days. swedebugia, what distribution are you using? On GuixSD, 30011 is a UID that would be allocated to one of the build users, which cannot “log in”. Thanks, Ludo’.
