[Pkg-systemd-maintainers] Bug#741496: Bug#741496: Bug#741496: Switching between packages providing the same Alias is broken (see syslog.service handling)

Michael Biebl biebl at debian.org
Mon Mar 17 12:53:41 GMT 2014


Am 15.03.2014 20:48, schrieb Michael Stapelberg:
> Hi Michael,
> 
> Michael Biebl <biebl at debian.org> writes:
>> I fear, switching i-s-h back to remove the symlinks on "remove" might
>> break certain cases again.
> Agreed.

Do you remember why we went this route? I don't recall those
discussions/reasons anymore but I think initially we went for removing
the symlinks on "remove" but changed later on.

The remove-symlinks-on-purge approach has the unpleasant side-effect
that we might end up with quite a few dangling symlinks if users install
and uninstall packages (but forget to purge them).
Well, one could argue this is only cosmetical, but still.

>> In this particular case, I assume i-s-h doesn't update the
>> /etc/systemd/system/syslog.service symlink, because it already exists.
>>
>> Any clever idea how to fix this?
> So, my first thought was whether we could just overwrite symlinks that
> point to non-existing files, but that’d be a diversion from how
> “systemctl enable” behaves and foil our plan of replacing
> deb-systemd-helper with a very simple wrapper/symlink even at some point
> in the future.
> 
> Given that this only affects packages that share a common symlink
> (so far just syslog implementations, display managers, right?), I’m not

So far, syslog implementations are affected. Shared symlink is
/etc/systemd/system/syslog.service

The display-manager scheme proposed by upstream [0][1] uses
/etc/systemd/system/display-manager.service
So far this scheme is not (yet) adopted by Debian, but I've already seen
packages (e.g. slim) use that Alias (which tbh looks like a bug in the
package, since it ships the upstream .service file unmodified).

> entirely sure that we need to address this in dh-systemd itself. I mean,
> certainly, it’d be better if dh-systemd could just do the right thing,
> but I don’t see a good solution.
> 
> Can we work around this in the maintscripts of the affected packages
> instead, perhaps by simply deleting /etc/systemd/system/syslog.service
> in preinst when it points to a non-existing file?

As the files are not yet unpacked in preinst (say rsyslog.preinst),
checking for the file to be a dangling symlink is probably not a
sufficient check, since we potentially would remove it, even if
/etc/systemd/system/syslog.service pointed to
/lib/systemd/system/rsyslog.service.


[0] http://www.freedesktop.org/software/systemd/man/systemd.special.html
[1] http://fedoraproject.org/wiki/Features/DisplayManagerRework

-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 884 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20140317/ca929057/attachment-0002.sig>


More information about the Pkg-systemd-maintainers mailing list