From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: phillip.lord@russet.org.uk (Phillip Lord) Newsgroups: gmane.emacs.devel Subject: Bloat in Windows (revisited) Date: Wed, 05 Jun 2019 22:46:11 +0100 Message-ID: <874l53g0yk.fsf@russet.org.uk> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="48126"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jun 05 23:53:27 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hYdqS-000CF0-Gu for ged-emacs-devel@m.gmane.org; Wed, 05 Jun 2019 23:53:26 +0200 Original-Received: from localhost ([127.0.0.1]:50725 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYdqQ-0003Z4-UC for ged-emacs-devel@m.gmane.org; Wed, 05 Jun 2019 17:53:18 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:33310) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYdqL-0003Yv-11 for emacs-devel@gnu.org; Wed, 05 Jun 2019 17:53:14 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hYdqD-000148-01 for emacs-devel@gnu.org; Wed, 05 Jun 2019 17:53:11 -0400 Original-Received: from cloud103.planethippo.com ([78.129.138.110]:53836) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hYdq5-0007d3-Nd for emacs-devel@gnu.org; Wed, 05 Jun 2019 17:52:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=yzg0ZqSUS9s8pNSNgJiM46Gv3/c1HINDaHcr/UXPKUo=; b=Qxk5GTQw2V5Bi0XuKDEAsGparQ xzbvoPQ+tY5MIO/0zP7UsP5DY+wOUPIhM1K78+aGrG+RHTZpi8bq6ISCc/plkqQ5lXK+4BIL0uhPN LBP+1IOTUoX1+LYdbYlZDjUh23aHaqzQD7He21QxKYosS6lYBsMXVo1gIp1I0jRZEC6p4UaDkaiHu nDqQuRz1DJKImNnK/brGglDX+bXcXjt/pM/DP9GvTIKz5USvrIzz8kWEHunP/bJeK6LPrVsmgvFww pRaRK0OWuVSoO7xgWqWJuUxBDK17P6k8A+aBuKcx4/oZQX+IHaCDNnvVpow2At4humhj5YOTIWBF8 RjG2EoaA==; Original-Received: from cpc142652-benw12-2-0-cust953.16-2.cable.virginm.net ([82.21.43.186]:37954 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from ) id 1hYdpI-00085D-Vv for emacs-devel@gnu.org; Wed, 05 Jun 2019 22:52:09 +0100 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 78.129.138.110 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:237262 Archived-At: A while back, we had some discussion about the Emacs packages for windows. https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00719.html I have now implemented the first part of this (no debug symbols in release builds); at least hopefully, as it's hard to test for sure till the first release of Emacs-27. I have also been playing around with the problem of msys2 pulling in a fairly wide set of dependencies. Instead of using `pactree` to determine the dependency tree, I use `pacman` directly and crawl the tree myself. This has a slightly increased maintainence load (there are two packages with different names in different places for some reason). But it means that I can exclude any subtree I like. Currently: mingw-w64-x86_64-librsvg brings in mingw-w64-x86_64-glib2 which brings in lots of stuff including python. Excluding this results in a much smaller dependencies package (around 40Mb as opposed to 140Mb). Haven't build the final files yet, but I would guess that this would bring the installer version down to 50Mb -- not quite "eight Mb and constantly swapping", but pretty small. This also opens up the question of whether we *should* include any executables that would add value to Emacs on Windows; I hesitate to go too far down this route, mostly because maintaining an mini MSYS2 distribution seems the wrong thing to do. But some basic functionality that other editors get from the OS comes from external packages. I am thinking gzip, find, grep and aspell as essential. Things like latex and python, I would exclude. Then there is some middle ground -- I use msmtp for sending email, for instance. The branch is here. Comments welcome. http://git.savannah.gnu.org/cgit/emacs.git/log/?h=feature/smaller-windows Phil