Matthew Garrett wrote:
Unit files need to be in /, so moving them would either require
creating
a /share for distributions that haven't merged /usr or putting up with
inconsistent naming between distributions. Consistency is a virtue and
the chances of getting anyone else to accept /share are minimal, so /lib
it is. Meanwhile, libexec's not part of any non-draft version of the FHS
and doesn't exist on most other distributions, and the path of the
helper binaries has ended up in a bunch of unit files. So, similar
problems.
What benefit do you see in modifying systemd?
Consistency WITHIN FEDORA, which should be worlds more important than
consistency with other distros, which frankly I don't give a darn about.
As for libexec, the FHS explicitly allows lib* under the multilib clause and
there's nothing banning * = exec there, so IMHO libexec is already compliant
to the letter of the FHS. If the other distros refuse to accept that, that's
their problem. Systemd should just require it upstream. libexec is also part
of the GNU file system conventions, so it wouldn't just be systemd. If
systemd upstream refuses to do that, the systemd maintainers should be
forced to change it in Fedora.
And a /share also makes a lot of sense for distros which have a separate
/usr. There too, systemd should just require it upstream, but again, if they
refuse to do that, they should be forced to change it in Fedora.
Being strict there might actually end up getting our sane layout enforced
through systemd upstream, rather than having it diluted in the name of
consistency with other distros. And if it doesn't, it's too bad for the
other distros, why should we care?
Kevin Kofler