Skip to content
suntong edited this page Jul 5, 2021 · 27 revisions

emacs-traditional - the smallest emacs package on earth

The emacs-traditional is built with emacs' traditional flavor. i.e., the original X11-Motif look and feel, with no bell and whistles entangled.

  • Have you ever tried to put your favorite editor emacs into live-CD? I did, thus I know it'll need 800+ Megs of extra disk space, and it has been a forever journey for me to look into emacs alternative in my live-CD.
  • Do you know that with the gigantic list of libraries that Emacs depends on, your Emacs is capable to be used as a picture-viewer, and music-player?
  • Do you hate the Windows-like GTK-scrollbar and wish to use back the Precise Scrolling like xterm's?

Check out more on what emacs-traditional can offer.

emacs

This recipe will build emacs from its latest stable version, currently 27.2. It is daily build and is adapted from the Official Ubuntu Emacs Daily Snapshot Recipe at https://code.launchpad.net/~ubuntu-elisp/+recipe/emacs-daily

Bonus

Quote from the emacs-daily recipe

On the plus side, package.el works excellently and most of the packages you might want to install should be available either from MELPA or Marmalade or similar. In general, if you are using these snapshots you will want to M-x package-install foo rather than apt-get install foo.

What it really means to you is that, you don't need to

  • wait until somebody to package a Debian elisp modules before you can make use of it, or
  • wait for them to update elisp modules before you can upgrade.

Installing and upgrading directly from MELPA live is all that you need.

Try it, and you'll love it.

The trim-down impact

If you have looked at the build dependencies that I removed from build rule, it doesn't seems to be much has been removed. However, look at the real impact.

Here is from the build log of emacs-daily:

Install emacs-snapshot build dependencies (apt-based resolver)
--------------------------------------------------------------

0 upgraded, 429 newly installed, 0 to remove and 0 not upgraded.
Need to get 153 MB of archives.
After this operation, 941 MB of additional disk space will be used.

Here is from the build log of emacs-traditional:

Install emacs-traditional build dependencies (apt-based resolver)
-----------------------------------------------------------------

0 upgraded, 220 newly installed, 0 to remove and 0 not upgraded.
Need to get 60.7 MB of archives.
After this operation, 265 MB of additional disk space will be used.

429 packages in 941 MB, vs, 220 packages in 265 MB, that's

  • nearly half of packages that the build depends on, and
  • less than 1/3 of disk space it requires.

Moreover, I deleted all unnecessary files/dirs using my extra build rules so that
the finished package dropped from 28.9 MiB to less than half -- 14.2 MiB!

I love my emacs-traditional, 😀

Where is it available?

It is available at my PPA, The Cave of Monte Cristo for Ubuntu.

Using emacs-traditional under Debian (Bullseye, or sid)

To use emacs-traditional under Debian, run as root:

apt-get -y install ca-certificates dirmngr gpg gpg-agent

echo 'deb http://ppa.launchpad.net/suntong001/ppa/ubuntu focal main' | tee /etc/apt/sources.list.d/suntong001-ubuntu-ppa.list
chmod 644 /etc/apt/sources.list.d/suntong001-ubuntu-ppa.list
apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys 0043AF7D364EC673

apt-get -y update
apt-cache policy emacs-traditional
apt-get install -y emacs-traditional

I tested it myself and it is working fine.

PS.

Need to delete old builds (because my new builds are rejected, with the reason of Version older than that in the archive. 0~20210609~ubuntu21.04.1 <= 0~202106080104~ubuntu21.04.1). So in case the above build logs are gone, I've kept the screenshots to preserve the package size log, which can be found here