Ludovic Courtès skribis: > To me it’s important so we can upgrade the Shepherd in use on GNU/Hurd > (it’s still stuck at 0.8 because so far Fibers lacked support for > non-Linux systems), which in turn means we can use the newer Shepherd > APIs in its config file. Unfortunately, while shepherd cross-builds > and runs on GNU/Hurd, I’m not confident it “works”. I’ll write more > in a separate message. The patch I ended up not including in this series is use of current Shepherd on GNU/Hurd (attached). Problems that I see are: • ‘networking’ gets stuck in ‘starting’ state. My guess is that it uses ‘system*’ (the replacement provided by shepherd) and that one does not return because we never get SIGCHLD. • (@ (ice-9 threads) all-threads) says there are two threads. That was already the case with 0.8, but it’s no good. Also, I haven’t tried to run the Shepherd’s test suite natively on GNU/Hurd; I’m sure it’d uncover problems. Overall, I’m pessimistic about signal handling without ‘signalfd’. We could try to get shepherd to kinda work without ‘signalfd’ (we could even test that code path on GNU/Linux), but that’s going to be brittle as we can already see. What d’ya think, comrades? Ludo’.