On Wed, Mar 20, 2019 at 9:00 AM Zbigniew Jędrzejewski-Szmek <zbyszek@xxxxxxxxx> wrote: > > On Wed, Mar 20, 2019 at 10:44:53AM +0100, Michal Ruprich wrote: > > Hi, > > > > I am preparing FRR so that it could be added to Fedora and since there > > are a lot of experienced packagers here, I would like to ask for an > > advice. FRR is a fork of quagga and it provides a couple of routing > > daemons(bgp, isis, odpf, rip, eigrp etc.). Originally in quagga, each > > daemon had its own binary in /usr/sbin and each daemon could be started > > via systemctl(including the zebra daemon which is needed to run other > > routing daemons). In FRR the developers have chosen a different > > approach. They provide a script that takes care of the start-up of all > > requested daemons - that means that all daemons are started via a single > > systemctl command. > That doesn't sound like a good idea. It seems that they reimplement > daemon management internally, which usually doesn't go well. > I've experienced this from a number of other projects. This is a seriously bad idea. Have you asked the FRR developers why they feel they can't use the service management facilities of systemd effectively? > > There are a couple of other scripts that are used for > > reloading the daemons etc. I am now wondering about where to place all > > relevant binary files and all the scripts. > Do the daemons have names that are unique enough to not cause conflicts > with other packages? If yes, then it should be OK to put them all in > /usr/bin/. (There's no reason to care about "sbin" vs "bin", since nowadays > both are included in $PATH.) > > > The upstream idea about the location is to put all binary files and all > > the scripts to /usr/lib/frr/ which does not make much sense to me. > It is actually a pretty good choice, except that you say that those > executables are supposed to be called by the users directly. If they > weren't, or if were only rarely, this upstream decision would be > appropriate. In particular, there's no effective difference between > /usr/libexec and /usr/lib/ffr, so using /usr/lib/ffr would be correct. > If you're going to stuff binaries in a non-PATH place, /usr/libexec/frr (I assume FRR is the project name, and not FFR) is where it should go, full stop. > > My > > first idea was to keep the main script in /usr/sbin and put the rest to > > /usr/libexec, but that would only make sense if the binaries and scripts > > were not meant to be run by the user, which is not the case. It is very > > well possible to start each daemon directly without interfering with > > systemd or any of the scripts. Same applies for each of the script. > > > > So the question is whether it is acceptable to keep the scripts in the > > /usr/sbin directory together with the binaries or whether I should put > > them somewhere else? > > > > I would be grateful for any ideas about this. Thanks. > In general, this project seems like it needs some help understanding how services should work. -- 真実はいつも一つ!/ Always, there's only one truth! _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx