<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Please consider 'fixing' unit symlinks in /etc (on startup?)"
href="https://bugs.freedesktop.org/show_bug.cgi?id=68102#c2">Comment # 2</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Please consider 'fixing' unit symlinks in /etc (on startup?)"
href="https://bugs.freedesktop.org/show_bug.cgi?id=68102">bug 68102</a>
from <span class="vcard"><a class="email" href="mailto:mgorny@gentoo.org" title="Michał Górny <mgorny@gentoo.org>"> <span class="fn">Michał Górny</span></a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=68102#c1">comment #1</a>)
<span class="quote">> (In reply to <a href="show_bug.cgi?id=68102#c0">comment #0</a>)
> > My /etc/systemd/system/multi-user.target.wants/ has a number of symlinks
> > like:
> >
> > dhcpcd.service -> /usr/lib64/systemd/system/dhcpcd.service
>
> This is not arch dependent, it shouldn't be in lib64/, but in lib/.</span >
And it is in lib/. The symlink is wrong but let's not get into how I got that.
<span class="quote">> > Could you consider doing some kind of 'symlink update' run within systemd?
> > That is, while doing the usual readlink() magic and unit search, compare
> > whether the canonical unit path matches the symlink target and rewrite the
> > symlink if it doesn't?
>
> I don't follow? Come again? It should rewrite lib/ to lib64/? That sounds
> very specialist to me and sounds like something that is better fixed with a
> manual script.
>
> Or what are you asking for? I don't get it?</span >
I mean that systemd currently does readlink() and uses basename of symlink to
find the unit. I would like it to additionally compare the result of this
search with current symlink target, and reset symlink to point to the found
unit.
In other words, I have this:
dhcpcd.service -> /usr/lib64/systemd/system/dhcpcd.service
but after systemd interprets it, it is rewritten as:
dhcpcd.service -> /usr/lib/systemd/system/dhcpcd.service
or:
dhcpcd.service -> /lib/systemd/system/dhcpcd.service
or even:
dhcpcd.service -> /etc/systemd/system/dhcpcd.service
depending on where systemd actually found the unit.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>