From: Matthew Leach <matthew@mattleach.net>
To: Alan Mackenzie <acm@muc.de>
Cc: emacs-devel <emacs-devel@gnu.org>
Subject: Re: [PATCH 0/5] Add systemd socket launching support.
Date: Sun, 27 Mar 2016 09:41:17 +0100 [thread overview]
Message-ID: <87d1qgxqhe.fsf@mattleach.net> (raw)
In-Reply-To: <20160327004758.GD3061@acm.fritz.box> (Alan Mackenzie's message of "Sun, 27 Mar 2016 00:47:58 +0000")
Alan Mackenzie <acm@muc.de> writes:
> Hello, Matthew.
Hi Alan,
> On Sat, Mar 26, 2016 at 09:16:37PM +0000, Matthew Leach wrote:
>> Systemd has the ability to create a socket, launch a daemon upon
>> connection to that socket and hand over the socket to the new process
>> to handle. In Emacs' case, we can delay the start of the Emacs daemon
>> until emacsclient is called upon a socket.
>
> Can we really? What's the purpose of such a delay?
Currently, I start emacs --daemon upon login of my user and this can
delay the login process by a few seconds as Emacs initialises. The idea
behind socket activation is that, systemd knows about the socket's
existence and won't unmount any file-systems where the socket resides
until the daemon has shut down, this is causing a race condition on
reboot for me. Also, allows the start of emacs --daemon to be on-demand
and so there is less of a delay at login.
> Systemd is a system initialisation program, one of several available.
> It is highly controversial, and it is fairly obvious that one of its
> aims is to subvert GNU's central position in the GNU/Linux system.
Systemd is licensed under the GNU Lesser General Public License, [1],
and I don't see the harm in a small amount integration with another free
software package. I can't comment on the controversies that you have
raised here as I don't know about them - I'm just trying to fix a
problem that exists with Emacs on my system.
> One of its methods of proliferation is to persuade maintainers to code
> in direct dependencies on systemd, thus imposing itself on anybody
> wishing to run the program. (Witness Gnome.) Emacs is a core GNU
> product, and should remain equally accessible to all GNU users.
The proposed systemd integration can be disabled with --without-systemd
at configure time. Maybe we could make this option disabled by default
as a compromise? However, even If Emacs is compiled with systemd
support, this change does not affect the current behaviour of Emacs.
> Emacs should not be talking directly to init systems. There are
> perfectly good, portable system level interfaces for talking to sockets,
> and Emacs should restrict itself to using them.
Given that Emacs becomes larger every day and can behave as a daemon
process, I feel that giving users more options to control when and how
Emacs starts up is a worthwhile endeavour.
> Should your patch be accepted, it would lead to an Emacs version
> specific to an initialisation system, a degree of fragmentation we've
> not had before, as far as I know.
>
> And the idea of making systemd dependency a default for building Emacs
> seems somewhat on the far side of acceptability.
This patch does *not* make systemd a dependency of Emacs. Again, this
patch provides a small degree of integration which can easily be
disabled and doesn't affect the current Emacs behaviour if enabled.
[1]: https://freedesktop.org/wiki/Software/systemd/
Thanks,
--
Matt
next prev parent reply other threads:[~2016-03-27 8:41 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-26 21:16 [PATCH 0/5] Add systemd socket launching support Matthew Leach
2016-03-26 21:16 ` [PATCH 1/5] Check for libsystemd when building Emacs Matthew Leach
2016-03-26 21:16 ` [PATCH 2/5] Read the number of sockets passed by systemd Matthew Leach
2016-03-26 21:16 ` [PATCH 3/5] Permit systemd-allocated socket file-descriptors to be used Matthew Leach
2016-03-27 12:08 ` Lars Magne Ingebrigtsen
2016-03-27 12:23 ` Matthew Leach
2016-03-27 12:42 ` Andreas Schwab
2016-03-27 13:38 ` Matthew Leach
2016-03-27 13:05 ` Lars Magne Ingebrigtsen
2016-03-27 13:39 ` Matthew Leach
2016-03-26 21:16 ` [PATCH 4/5] Allow the systed socket fd to be retrieved Matthew Leach
2016-03-26 21:16 ` [PATCH 5/5] When set, use the systemd socket descriptor Matthew Leach
2016-03-27 0:47 ` [PATCH 0/5] Add systemd socket launching support Alan Mackenzie
2016-03-27 0:59 ` Alexis
2016-03-27 8:44 ` Matthew Leach
2016-03-27 11:15 ` Alexis
2016-03-27 8:41 ` Matthew Leach [this message]
2016-03-27 13:48 ` Wolfgang Jenkner
2016-03-27 13:53 ` Matthew Leach
2016-03-27 14:18 ` Wolfgang Jenkner
2016-03-27 15:49 ` Mark Oteiza
2016-03-27 18:16 ` Matthew Leach
2016-03-27 14:49 ` Eli Zaretskii
2016-03-27 15:17 ` Matthew Leach
2016-03-27 15:23 ` Eli Zaretskii
2016-03-27 17:21 ` Philipp Stephani
2016-03-27 18:10 ` Matthew Leach
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87d1qgxqhe.fsf@mattleach.net \
--to=matthew@mattleach.net \
--cc=acm@muc.de \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.