From Fedora Project Wiki

(Created page with ' What I am missing is a explicit guideline on whether one should continue packaging init scripts and unit files or drop the init scripts in Rawhide -- Rahul Sundaram')
 
(BuildRequires: systemd-rpm-macros)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
What I am missing is a explicit guideline on whether one should continue packaging init scripts and unit files or drop the init scripts in Rawhide
--  Rahul Sundaram
There should be mentioned rule about files in /var/run and /var/lock. Regular files in /var/run and /var/lock directories should be packaged as %ghost. For directories use tmpfiles.d(5) mechanism without %ghost.  --plautrba


"''Systemd unit .service files must not be marked as %config files.''" - I disagree, those are files commonly customized ('''.service''' ones for example nice/idle daemon priority). It does not mention '''.timer''' files, those also should be %config so that their modifications do not get lost.
The section on filesystem locations says the service files must got into '''%{_unitdir}''', but in reality they might need to go into '''%{_userunitdir}''' instead if they are targeted for user sessions. Using '''systemctl --user enable <service>''' doesn't work if it is in the system location ('''%{_unitdir}''').


What I am missing is a explicit guideline on whether one should continue packaging init scripts and unit files or drop the init scripts in Rawhide


-- Rahul Sundaram
Use '''BuildRequires: systemd-rpm-macros''' instead of '''BuildRequires: systemd''' if only systemd macros definitions are needed.

Latest revision as of 13:22, 30 September 2022

What I am missing is a explicit guideline on whether one should continue packaging init scripts and unit files or drop the init scripts in Rawhide

-- Rahul Sundaram


There should be mentioned rule about files in /var/run and /var/lock. Regular files in /var/run and /var/lock directories should be packaged as %ghost. For directories use tmpfiles.d(5) mechanism without %ghost. --plautrba


"Systemd unit .service files must not be marked as %config files." - I disagree, those are files commonly customized (.service ones for example nice/idle daemon priority). It does not mention .timer files, those also should be %config so that their modifications do not get lost.


The section on filesystem locations says the service files must got into %{_unitdir}, but in reality they might need to go into %{_userunitdir} instead if they are targeted for user sessions. Using systemctl --user enable <service> doesn't work if it is in the system location (%{_unitdir}).


Use BuildRequires: systemd-rpm-macros instead of BuildRequires: systemd if only systemd macros definitions are needed.