Update: [2014-10-23] After a long wait, Emacs 24.4 is finally out. The binaries for the Yamamoto Mitsuharu version are available from railwaycat. The blog post is updated for Emacs 25.1 release candidate. I have another blog post for Emacs 26 pretest.

I'm a long time Emacs user. When using a Mac, I've been using the builds from emacsformacosx.com. After reading about the new features in 24.4, I tried the Emacs nightly builds, and was mostly happy with them, but I somehow messed up my Emacs package configuration in a way that I can't go back to Emacs 23.3. No big deal, right? So I waited for the 24.3.90 pretest to go back to a somewhat "stable" version, and that just came out last week.

The problem is that the emacs 24.3.90 pretest from emacsformacosx.com is triggering a runaway distnoted process on my system, and is also running rather slowly. There are some patches floating around there, but I'd have to build from source. I've also been curious about the Yamamoto Mitsuharu version of Emacs; see this list of features. If I'm going to build from source, I might as well try his version, right?

A few days ago he posted a version of his patches to 24.3.90 to the emacs list here. I first needed to download the unpatched 24.3.90 from here. And I also needed the patch from here. I downloaded those three tarballs to my ~/Downloads folder.

I'm posting this blog entry to record the commands I used to build it (note: I update these instructions when I upgrade to newer versions of emacs):

EMACS=emacs-25.1-rc1
PATCH=$EMACS-mac-5.90

cd ~/Downloads/
curl -O ftp://alpha.gnu.org/gnu/emacs/pretest/$EMACS.tar.xz
curl -O ftp://ftp.math.s.chiba-u.ac.jp/emacs/$PATCH.tar.gz
curl -O ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-2.0.tar.gz

cd ~/Projects/src
tar xzf ~/Downloads/$EMACS.tar.xz
tar xzf ~/Downloads/$PATCH.tar.gz
tar xzf ~/Downloads/emacs-hires-icons-2.0.tar.gz
cd $EMACS
rsync -a ../emacs-hires-icons-2.0/etc/images/ etc/images/
patch -p1 <../$PATCH/patch-mac
rsync -a ../$PATCH/mac/ mac/
rsync -a ../$PATCH/src/ src/
rsync -a ../$PATCH/lisp/ lisp/
./configure --prefix=/usr/local/emacs-yamamoto --enable-mac-app
make
make install

It feels much faster than the prebuilt binaries I had been using, and it has nice features too! One minor thing: by default the fullscreen mode uses a separate virtual desktop, and I didn't want that. I switched to using the fullboth frame parameter described on the emacswiki, and it works great.

Update: [2014-06-19] I updated the instructions for pretest 24.3.91.
Update: [2014-06-27] I updated the instructions for pretest 24.3.92.
Update: [2014-08-15] I updated the instructions for pretest 24.3.93.
Update: [2014-10-01] I updated the instructions for pretest 24.3.94.
Update: [2014-10-23] Added a link to railwaycat, with the binaries for 24.4.
Update: [2016-07-25] I updated the instructions for release candidate 25.1.

Labels: ,

3 comments:

Anonymous wrote at Tuesday, April 22, 2014 at 11:09:00 AM PDT

thanks! i can't wait for 24.4, mostly for this bad Mac OS X bug fix, but i'm a staunch late adopter, so i'm waiting for the actual release. in the meantime, i reboot my emacs at least a couple times a week. sigh.

Amit wrote at Tuesday, April 22, 2014 at 6:11:00 PM PDT

@snarfed: Yeah, that's the bug that pushed me over the edge and got me to compile it myself. :-)

Aaron B. Iba wrote at Thursday, August 28, 2014 at 2:17:00 PM PDT

Thank you! emacs-24.3.93-mac-4.93 working great.