Greetings and salutations,
On 30.06.2016 16:18, Albert ARIBAUD wrote:
Bonjour,
Le Thu, 30 Jun 2016 21:18:02 +0200
Pali Rohár <[email protected]> a écrit:
On Thursday 30 June 2016 16:58:56 Craig Andrews wrote:
> I'd like to propose a couple changes in terms of systemd in dnsmaq.
> First, dnsmasq should always install a systemd unit so all
> distributions/users can use it
I'm against such change. Why on the Earth install useless files into
system which do nothing? I really do not want to see that programs
starts installing systemd files just because it is "no harm".
If such thing happen, dnsmasq then should install also config file
for upstart, also for openrc, and also install shortcut for Windows
start menu for *all* systems as that is too by that definition "no
harm".
I tend to agree with the principle that a systemd unit file should
only be installed on systems which use systemd. I was surprised indeed
to see that the dnsmasq git repo contains such a file.
Furthermore, the OP itself indicates that different systemd-based
distributions will require different systemd units for dnsmasq, which
shows that systemd (or upstart, or sysvinit...) files should be managed
at the distribution, not upstream application, level.
Amicalement,
I have no argument against only installing the systemd unit if a
configure flag is specified. Many pieces of software do it that way - I
think the important thing is that it's available from dnsmasq. So I
rescind my thought to install it unconditionally.
Regarding distributing config files for upstart, openrc, and everything
else - I think there are 2 ways to look at that:
1) systemd is used by many Linux distributions, and that number is
increasing. So by distributing it, the most users benefit, as compared
to the low, and decreasing, number of users of openrc and upstart.
2) If dnsmasq wants to distribute init configs for other init systems,
that seems fine. That would just mean that if, for example, dnsmasq
distributes an upstart configuration file, then all distributions/users
of upstart can collaborate in one place instead of all being siloed.
The goal of including the systemd unit is for there to be one place
(dnsmasq aka upstream) for fixes, improvements, and development to take
place. For example, if someone notices that dnsmasq can be hardened,
that change currently has to be made in every distribution separately.
That lack of collaboration is really inefficient - tons of effort is
being wasted. It also introduces confusion and maintainability problems;
with every distribution being inconsistent, that's just one more
variable dnsmasq has to deal with when a bug report or feature request
is made.
I'm not currently using Debian, so I can't comment too much on its
systemd unit. Ideally, I'd love to see the same unit used for all
distributions. But if that's not possible, just like how distributions
can patch source code if they have to, distributions can patch
upstream's systemd units. Such patching is not a reason to stop
distribution of something (be it source code, configuration, or anything
else).
Thanks,
~Craig
_______________________________________________
Dnsmasq-discuss mailing list
[email protected]
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss