unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Bloat in the Emacs Windows package
@ 2019-04-17  5:01 Björn Lindqvist
  2019-04-17  7:31 ` Eli Zaretskii
  2019-04-17 15:44 ` Phillip Lord
  0 siblings, 2 replies; 56+ messages in thread
From: Björn Lindqvist @ 2019-04-17  5:01 UTC (permalink / raw)
  To: emacs-devel

Hello Emacs developers,

I noticed that the Emacs build of Windows has grown a lot so I started
a thread in help-gnu-emacs called "Emacs 26.1 on Windows is HUGE" and
was referred to this list. So see that thread for background info. The
numbers for the Emacs 24.5.1 and 26.1 Windows files are:

    emacs-26.1-x86_64-no-deps.zip download size: 106M disk size: 410M
    emacs-26.1-x86_64.zip download size: 210M disk size: 725M
    emacs-24.5-bin-i686-mingw32.zip download size: 48M disk size: 167M

For comparison jdk-11.0.2 consumes 278M.

The emacs-26.1-x86_64.zip file is really big. It contains a lot of
files which I wonder why they are necessary. Some examples

    python2.7.exe
    gdbus.exe
    libgdk_pixbuf-2.0-0.dll
    include/jasper/
    include/GL
    include/gnutls AND include/openssl
    lib/systemd
    sqlite3200.dll
    lib/pkgconfig
    lib/cmake
    share/bash-completion
    share/vala
    ...

The emacs-26.1-x86_64-no-deps.zip installation is smaller, but still
double the size of the corresponding 24.5 installation. This seem to
be because all binaries now include debugging symbols. Some examples
of the size increases:

    addpm.exe 577 kB => 2 282 kB
    ctags.exe 956 kB => 3 245 kB
    emacs.exe 8 989 kB => 121 740 kB
    emacs-24.5.exe 8 989 kB => 121 740 kB (emacs-26.1.exe)

The emacs.exe growth is especially annoying because the file is
copied. This seems like poor packaging to me. Why not have an
emacs.bat file calling emacs-26.1.exe and immediately save 121M?

According to the thread on help-gnu-emacs Emacs binaries used to be
stripped of debugging symbols, but aren't anymore and that is what is
causing the size increase. I wonder if we can return that? Most
software ported to Windows, such as MinGW, strips debugging symbols so
it is customary. For most users they are useless because they don't
run emacs.exe in gdb.exe.

For people with limited disk space, metered internet or old hardware
the new, bigger Emacs is a nuisance. On my machine it increases Emacs
start time by a second (although I don't know if that is caused by the
debugging symbols or if it is something else). It is also
aesthetically displeasing -- hackers like minimalism and hate bloat.

And while on the subject of Windows packaging. How come there is no
MSI installer for Emacs? It shouldn't be to hard to put one together
and it would make Emacs a little easier to install for newbies.


-- 
mvh/best regards Björn Lindqvist



^ permalink raw reply	[flat|nested] 56+ messages in thread

end of thread, other threads:[~2019-05-03 20:20 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-17  5:01 Bloat in the Emacs Windows package Björn Lindqvist
2019-04-17  7:31 ` Eli Zaretskii
2019-04-17 11:15   ` Van L
2019-04-17 11:26     ` Eli Zaretskii
2019-04-17 12:39   ` Stefan Monnier
2019-04-17 14:49     ` Eli Zaretskii
2019-04-17 16:17       ` Eli Zaretskii
2019-04-18 22:02         ` Björn Lindqvist
2019-04-19  7:00           ` Eli Zaretskii
2019-04-17 17:26     ` Phillip Lord
2019-04-17 17:55       ` Stefan Monnier
2019-04-19  0:02       ` Björn Lindqvist
2019-04-19  7:33         ` Eli Zaretskii
2019-04-19 13:23           ` Óscar Fuentes
2019-04-22 21:04             ` Phillip Lord
2019-04-22 21:41               ` Óscar Fuentes
2019-04-17 13:42   ` Stefan Monnier
2019-04-17 16:19     ` Óscar Fuentes
2019-04-17 17:28     ` Phillip Lord
2019-04-17 15:07   ` Björn Lindqvist
2019-04-17 16:32     ` Eli Zaretskii
2019-04-18 23:44       ` Björn Lindqvist
2019-04-19  7:27         ` Eli Zaretskii
2019-04-19 14:17           ` Óscar Fuentes
2019-04-19 15:05             ` Eli Zaretskii
2019-04-22 20:55             ` Phillip Lord
2019-04-17 17:39     ` Phillip Lord
2019-04-17 18:06       ` Stefan Monnier
2019-04-17 18:32       ` Eli Zaretskii
2019-04-18 16:05         ` Phillip Lord
2019-04-18 19:08           ` Eli Zaretskii
2019-04-18 21:19             ` Phillip Lord
2019-04-18 23:12               ` Óscar Fuentes
2019-04-19  6:29               ` Eli Zaretskii
2019-04-22 20:40                 ` Phillip Lord
2019-04-23  2:25                   ` Stefan Monnier
2019-04-23 10:01                     ` Phillip Lord
2019-04-23 11:28                       ` Robert Pluim
2019-04-23 21:49                         ` Phillip Lord
2019-04-26 16:30                       ` Phillip Lord
2019-04-26 17:04                         ` Óscar Fuentes
2019-04-26 21:41                           ` Phillip Lord
2019-04-27 18:12                         ` Björn Lindqvist
2019-04-27 18:17                           ` Phillip Lord
2019-05-03  1:06                             ` Björn Lindqvist
2019-05-03  6:49                               ` Eli Zaretskii
2019-05-03 18:38                                 ` Björn Lindqvist
2019-05-03 18:42                                   ` Eli Zaretskii
2019-05-03 20:20                                     ` Stefan Monnier
2019-04-23  5:37                   ` Eli Zaretskii
2019-04-17 15:44 ` Phillip Lord
2019-04-17 16:25   ` Óscar Fuentes
2019-04-17 16:46     ` Eli Zaretskii
2019-04-18 16:00       ` Phillip Lord
2019-04-18 15:56     ` Phillip Lord
2019-04-18 16:39       ` Óscar Fuentes

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).