From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: joakim@verona.se Newsgroups: gmane.emacs.devel Subject: Re: official Emacs Docker image Date: Fri, 30 Dec 2016 23:01:46 +0100 Message-ID: References: <831tbxn5id.fsf@gnu.org> <87oaf1bvsb.fsf@wanadoo.es> <87mvukq7gd.fsf_-_@lifelogs.com> <877fcyg5ah.fsf@lifelogs.com> <87h9c0b6bd.fsf@lifelogs.com> <878txa9zvx.fsf@lifelogs.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1483188189 6745 195.159.176.226 (31 Dec 2016 12:43:09 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 31 Dec 2016 12:43:09 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) Cc: John Wiegley , emacs-devel@gnu.org To: Richard Stallman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Dec 31 13:43:05 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cNIzy-0000T4-I2 for ged-emacs-devel@m.gmane.org; Sat, 31 Dec 2016 13:42:58 +0100 Original-Received: from localhost ([::1]:43636 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cNJ03-0004I6-J5 for ged-emacs-devel@m.gmane.org; Sat, 31 Dec 2016 07:43:03 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36467) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cNIzx-0004Hp-59 for emacs-devel@gnu.org; Sat, 31 Dec 2016 07:42:58 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cNIzt-0002ju-Uw for emacs-devel@gnu.org; Sat, 31 Dec 2016 07:42:57 -0500 Original-Received: from smtp.outgoing.loopia.se ([194.9.95.112]:20942) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cNIzt-0002j2-Hk for emacs-devel@gnu.org; Sat, 31 Dec 2016 07:42:53 -0500 Original-Received: from s554.loopia.se (localhost [127.0.0.1]) by s554.loopia.se (Postfix) with ESMTP id 2FDB61B5E0E1 for ; Sat, 31 Dec 2016 13:42:49 +0100 (CET) Original-Received: from s499.loopia.se (unknown [172.21.200.97]) by s554.loopia.se (Postfix) with ESMTP id EC82F9513BB; Sat, 31 Dec 2016 13:42:48 +0100 (CET) Original-Received: from s404.loopia.se (unknown [172.21.200.105]) by s499.loopia.se (Postfix) with ESMTP id E907F13632BC; Sat, 31 Dec 2016 13:42:48 +0100 (CET) X-Virus-Scanned: amavisd-new at amavis.loopia.se Original-Received: from s499.loopia.se ([172.21.200.105]) by s404.loopia.se (s404.loopia.se [172.21.200.134]) (amavisd-new, port 10024) with LMTP id P6-JbPgOO9T1; Sat, 31 Dec 2016 13:42:47 +0100 (CET) X-Loopia-Auth: user X-Loopia-User: joakim.verona@chimeslab.se X-Loopia-Originating-IP: 81.170.223.63 Original-Received: from exodia.verona.se (h-223-63.a149.priv.bahnhof.se [81.170.223.63]) (Authenticated sender: joakim.verona@chimeslab.se) by s499.loopia.se (Postfix) with ESMTPSA id 65DC113630FB; Sat, 31 Dec 2016 13:42:47 +0100 (CET) In-Reply-To: (Richard Stallman's message of "Fri, 30 Dec 2016 16:36:42 -0500") X-detected-operating-system: by eggs.gnu.org: FreeBSD 9.x [fuzzy] X-Received-From: 194.9.95.112 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:211026 Archived-At: Richard Stallman writes: > [[[ To any NSA and FBI agents reading my email: please consider ]]] > [[[ whether defending the US Constitution against all enemies, ]]] > [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > > > I see now that I was unclear: A Docker image is a self-contained tarball > > containing a GNU/Linux kernel, necessary system software, and the final Emacs > > executable that was built by the image recipe. > > Now it is coherent. > > > The Docker image contents, thus, can be entirely free software. Executing the > > image on some platforms (such as Windows) may use proprietary software to > > perform the execution (for example, VM provisioning software). > > I see how it makes sense to use this on Windows. But it seems absurd > to use this on GNU/Linux. Why does anyone do that? It is quite useful in order to handle dependencies. When developing an emacs feature I found it useful to test the feature by having many different emacs docker containers, each one containing different gnu/linux distributions and different emacs compile flags. It was very convenient in order to test all the different configurations on a single machine. A container is a bit like a virtual machine but also a bit like a traditional changeroot. Another thing to consider is that Docker isn't fantastic for desktop applications, at least when I used Docker for this purpose. It is doable, by manipulating X sockets and whatnot. For this reason alternatives are emerging with focus on desktop applications, such as Flatpak. Gnome applications can be accessed with Flatpak for instance. Another method is using Gnu Guix. All methods have their pros and cons and different usage scenarios. > > How big would such a docker image be? I know that disks are getting > bigger, but how many such applications could fit on a typical laptop? Docker uses layered copy on write file systems in order to save space. Basically, each container can re-use the filesystem usage of other containers. I can't provide an exact figure of how many docker packaged applications can fit on a laptop, but "many" is a reasonable assumption. > However, I don't see any ethical issue about making and distributing > Docker images of Emacs as long as we get the details right: for > instance, use an endorsed free GNU/Linux distro. > > Do you see any specific issues we need to consider? -- Joakim Verona joakim@verona.se +46705459454