The ‘static-networking’ service can remain in ‘starting’ state forever when it specifies a nonexistent NIC.
This can be reproduced by running a system such as hydra/bayfront.scm (in maintenance.git) in ‘guix system vm’: shepherd will wait for ‘networking’ to start forever, preventing the machine from being cleanly halted. I believe this is due to indefinite blocking in ‘network-set-up/linux’: ;; Before going any further, wait for the ;; device to show up. (wait-for-link #$(network-address-device address) #:blocking? #f) It should instead wait for a limited amount of time (info "(shepherd) Defining Services"). Ludo’.