Fedora 35 may support restarting user services after package upgrades

According to the proposal, Fedora 35 may support restarting user services as part of the rpm upgrade. Generally speaking, a running Fedora system has a main systemd instance (PID 1), some running system services, and some systemd user instances, which are services running under the main systemd instance. These instances execute user services in turn, while the user instances of systemd and the services it manages are unprivileged. These are objects that may need to be restarted.

Fedora 35 LLVM Clang

At present, Fedora already has an rpm packaging script to re-execute systemd and restart system services as part of the rpm update transaction, but it does not provide corresponding services for the user manager. Through this proposal, when systemd.rpm is upgraded, various system managers will be re-executed, and various software packages can mark their user services as restarted. The restart of the user service is similar to the restart of the system service. It is done through transfiletrigger after all the software packages are installed.

The Fedora Engineering and Steering Committee (FESCo) has approved the proposal. By default, this change does not apply to all user services and requires Fedora package maintainers to select restarted user services through their RPM script. This ultimately means that user services like PipeWire can be seamlessly restarted when upgrading them via Fedora RPM updates, without the need to manually perform this operation or restart the system for the upgrade to take effect. For more details, please visit its Wiki page.