From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: PL support Date: Sun, 10 May 2020 23:56:08 -0400 Message-ID: References: <9mmFgzvrBwjt_n_VJyaJdXINraNi5HsGpwq-0MLeKiJA7kG2BQA4uywrzjyz7lpRS0OZDpjEi8lspOKYUA7P_QsODsDew_8nbH960G55fmY=@protonmail.com> <83zhaih0oz.fsf@gnu.org> <83pnbegsvm.fsf@gnu.org> <83imh5hby1.fsf@gnu.org> <2e4e8ce9-d857-f3e3-31cf-a40dee67bd25@yandex.ru> <83y2q1dsvh.fsf@gnu.org> <2468efa6-7dbd-8634-44cc-586bb6985f49@yandex.ru> <83pnbddrfd.fsf@gnu.org> <83k11ldpxs.fsf@gnu.org> <83imh5dnun.fsf@gnu.org> <2c09354e7994f0e61271ab0078256a9dc4202171.camel@k-7.ch> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="16900"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Yuan Fu , seb@k-7.ch, emacs-devel@gnu.org To: Richard Stallman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon May 11 05:56:48 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jXzYe-0004JO-1Z for ged-emacs-devel@m.gmane-mx.org; Mon, 11 May 2020 05:56:48 +0200 Original-Received: from localhost ([::1]:57216 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jXzYd-0007jr-30 for ged-emacs-devel@m.gmane-mx.org; Sun, 10 May 2020 23:56:47 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:44556) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jXzY6-0007IO-P9 for emacs-devel@gnu.org; Sun, 10 May 2020 23:56:14 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:35132) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jXzY5-0001CL-Ar; Sun, 10 May 2020 23:56:14 -0400 Original-Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id B9495805BA; Sun, 10 May 2020 23:56:11 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 03BA280739; Sun, 10 May 2020 23:56:10 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1589169370; bh=J478DX3S+jr7V8Ll2tT7W0aaoKl7XmW5BWos+zZkiCA=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=QSAjRCwHiHDtLGOaoiElVR0mnuxNjKoTGSFcBpEM93GIXdjba+fdf8T1th+DnXp1m Col6V4CNq/zIMrjXoprJAbyPrqgQj/CjTPweS7PqQUZdM2ZaeLmHbHXE52Kvgqy0rw o/xAOcPL2s8jx0wBUl0L3TTESgJIGgFV0YNpLYCnvVVV4Wgisci59PqQGZL86xcFkk 1Vi6zeQ+jK1S5TDpkVO+UZekW7rEHquX8WFwHfDerzc8qB50o2ZVuEpQgUEA+Cqjf+ u7NV3KT1erxzIKHrXBvYM5XeSwWAXUoC9yXQHjwxHw6m1MGF53KcFQumpESL+Tf8Uc B5kOEuWPAvAvA== Original-Received: from alfajor (unknown [216.154.3.202]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 6E49D12078F; Sun, 10 May 2020 23:56:09 -0400 (EDT) In-Reply-To: (Richard Stallman's message of "Sun, 10 May 2020 22:35:11 -0400") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/10 23:19:05 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:249760 Archived-At: Richard wrote: > Some contributors are eagerly planning a sort of automatic facility to > "install external tools." I'm disappointed to have to say that this > raises problems at various levels. I doubt there is an acceptable way > to do it. There is no doubt that acceptable ways to do it exist. As a matter of fact, we *already* do that, typically in the form of instructions in `Commentary:`, `INSTALL`, manuals, messages in mailing-lists, etc... These instructions raise various problems, indeed. Other ways to "do that" would solve some of those problems, preserve some of them, and introduce yet new ones. There's a vast design space here, with many points in there which should be very much acceptable to our usually conservative sensitivity of "don't do anything without a very explicit user consent". Daniel wrote: > You seem to be imagining a world in which Emacs installing external software > means that it runs distribution package manager tools or plops binaries in > /usr/bin. You can instead bundle known-good versions of external tools with > Emacs and run them in a controlled way from filesystem locations that Emacs > controls. Downloading revisions of these tools that hash to entries on an > Emacs whitelist is equivalent. FWIW, I probably wouldn't like a solution where we bundle binaries of external tools, since then we'd be bound (either by the license, or morally anyway) to include the source as well, and then we'd have to keep it up-to-date (and deal with somewhat automatic updates and whatnot). This said, that is still a very much acceptable point in the design space for some cases. A very different design point might be to try to guess the kind of "package management" in use (msys, apt, guix, ...), then build a sequence of commands to pass to that package management, show it to the user, and ask them to run them (or to confirm that they want Emacs to run them). Another design point is to display to the user a text box explaining what they need to install and where they can find instructions to do so. ... Stefan