![](https://seccdn.libravatar.org/avatar/eaa2d13828dc4c759c60956c3bbff0f7.jpg?s=120&d=mm&r=g)
On Thursday 29 January 2015, Tomáš Chvátal wrote:
Dne Čt 29. ledna 2015 11:48:42, Ruediger Meier napsal(a):
Hi,
IMO our util-linux package is completely messed up. Last year I had spend a lot of time to simplify it, to bring patches upstram etc. But some weeks later after update to 2.25 was finished it became even worse than before. Somehow it was required to split the package into 3 packages to prevent build loops (python, systemd deps)...
This split made the spec file unreadable und IMO unmaintainable. Just have a look how the configure.ac and Makefiles are raped in 3 different ways by dozens of nested, ifdef'ed sed lines.
Is there really no other way to solve these build loops?
Sadly this really is the easiest approach,
The other solution is individual spec for each subackage that needs to be updated in sync.
I don't want another way of such unmaintable split. Just one package, preventing build loops otherwise.
Best solution would be to convince upstream to stop keeping it together and release other small subpackages.
Hm, that other packages depend on an init system (systemd) is unfortunately something very common nowadays and even wanted by openSUSE. If OBS is not able to handle it than it should probably be fixed in OBS. util-linux can still be built without systemd that's enough from upstream side. For the --with-systemd case I guess more and more ul binaries will use it in future. So our aproach to split off all sytemd stuff is doomed. [1] Also python dep is not that unusual. If util-linux would have a python based build system then we were not able to build it on OBS at all? Can't believe it. Couldn't we just build one full util-linux package again and don't let it trigger rebuilds of other packages? [1] BTW once I've tried hard to prevent adding systemd services (fstrim.service) http://comments.gmane.org/gmane.linux.utilities.util-linux-ng/8745 ... no chance ... and now look at our spec file ... what a mess for such a minor thing: $ grep fstrim util-linux.spec Provides: util-linux:/usr/lib/systemd/system/fstrim.service Provides: util-linux:/usr/lib/systemd/system/fstrim.service # for fstrim.service and fstrim.timer # trick: we do not want to build fstrim, but we want to install fstrim systemd connectors ln -s %{_sbindir}/fstrim %{buildroot}/sbin ln -sf /sbin/service %{buildroot}/usr/sbin/rcfstrim # Note: This is not a perfect solution: fstrim is part of util-linux, fstrim services are part of util-linux-systemd (for build loop prevention reasons). # If only util-linux is updated, restart of fstrim service does not happen. # Maybe we should move fstrim to util-linux-systemd in the next version. %{service_add_pre fstrim.service fstrim.timer} %{service_add_post fstrim.service fstrim.timer} %{service_del_preun fstrim.service fstrim.timer} %{service_del_postun fstrim.service fstrim.timer} /sbin/fstrim %{_sbindir}/fstrim %{_mandir}/man8/fstrim.8.gz %{_sbindir}/rcfstrim %{_unitdir}/fstrim.service %{_unitdir}/fstrim.timer cu, Rudi -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org