Mailinglist Archive: opensuse-packaging (116 mails)

< Previous Next >
Re: [opensuse-packaging] Packages enabling their systemd services at their own
On Mon, 2017-12-11 at 21:40 +0100, Stefan Seyfried wrote:
Am 11.12.2017 um 20:14 schrieb Dominique Leuenberger / DimStar:
On Mon, 2017-12-11 at 19:52 +0100, Stefan Seyfried wrote:
Am 11.12.2017 um 16:14 schrieb Thorsten Kukuk:

Hi,

the official mechanismus to enable systemd services by default
during
installation is, to use the systemd preset functionallty.

Unfortunately, some packages still enable their services at
their
own
by calling systemctl enable in the %post install section. This
will
break in the future for fresh installations!

Why? We have a problem with dependencies for systemd,
dependency
loops
and packages, where we are not able to enable them with the
preset
mechanism during initial installation. The reason is, that
systemd
with
it's many dependencies can only be installed late, but some
packages
have to be installed earlier. The same is true for build
dependencies.

If we require a PreReq systemd for all packages having systemd
units,
we will end in a dependency loop nightmare. Instead, we
decided,
that
we will call a systemctl preset-all in the %posttrans of
systemd-presets-branding-* packages for fresh installations.

So now I add "systemd-presets-branding-bluez" subpackage to
bluez?
Any boilerplate code to use for this?

No - if the service is meant to be enabled by default, it ought to
be
listed in systemd-preset-branding-openSUSE (if enabled for
openSUSE) or
the other, respective systemd-preset-branding-FOO packages (but no
new
ones introduced per package)

Ok, so I'll just add the preset to the main bluez package. A separate
branding package makes no sense since the service needs to be enabled
always anyway.

Still no - the only valid mmethod is to modify systemd-preset-branding-
openSUSE

this is the ONLY package that should bring default states for services
for openSUSE.

No service / package is allowed to set its 'default enabled value' by
bypassing the distro while being part of the distro.

Cheers
Dominique
< Previous Next >
Follow Ups