openSUSE talk:Systemd packaging guidelines

Jump to: navigation, search

RPM Macros Result in Errors

  • Are these guidelines still accurate? In particular, rpmbuild seems to expand `%{?systemd_requires}` to an empty string, --Cdr255 (talk) 04:25, 16 November 2017 (UTC)
    • It is accurate on Leap and SLE, for sure. --Fcrozat (talk) 08:27, 16 November 2017 (UTC)
    • Does your package include `BuildRequires: systemd-rpm-macros` ?
    • On which distribution and version do you have this behavior? --Sebix (talk) 08:51, 16 November 2017 (UTC)
      • I experience this through `osc build OpenSUSE_Leap_42.3 x86_64`. I haven't tried to build an rpm outside of a chroot yet, but my local system is also running Leap 42.3. --Cdr255 (talk) 09:45, 16 November 2017 (UTC)
        • Evaluates to this on Leap 42.3:
Requires(pre): systemd									
Requires(post): systemd									
Requires(preun): systemd								
Requires(postun): systemd

--Sebix (talk) 09:50, 16 November 2017 (UTC)

          • Ah, okay. I was adding the macro after a "Requires:"; I misunderstood 1.2 Requires I guess. To clarify, using the code from 1.1 Build Requirement, I've already called `%{?systemd_requires}` right? Having 1.2 Requires seems redundant; is there a use case where You'd want to use just the macro, without the rest of the conditional statement from 1.1 Build Requirement? --Cdr255 (talk) 20:11, 16 November 2017 (UTC)
            • Is it better now?--Sebix (talk) 10:52, 17 November 2017 (UTC)
              • Yes, much clearer. Thank You for changing it. --Cdr255 (talk) 19:52, 17 November 2017 (UTC)

Optional systemd unit files for package

In containers it's inconvenient to have systemd installed, but some daemons are forced to require it because they provide a systemd unit file. I can't find any article talking about %systemd_ordering, which provides a solution to this issue. --Awerlang (talk) 03:42, 27 July 2020 (UTC)