Emacs Prelude with Cygwin

Some notes on installing Emacs prelude with Cygwin. To quote the prelude website at http://batsov.com/prelude/

“Emacs Prelude has the goal to ease the initial Emacs setup process and to provide you with a much more powerful and productive experience than the one you get out of the box. “

Although I’ve been using Emacs for nearly fourteen years now I decided to ditch the masses of cruft that had built up over the years and launch into a new setup. Prelude was a nice starting point for me, giving me a nice working environment into which I was able to merge in some of the cruft that I realised I couldn’t live without. Many thanks Bozhidar.

I’m using Cygwin 1.17.7-1 for the record. I am going to assume you can follow the cygwin install instructions and the prelude install instructions. If you do get stuck feel free to ask. I’m no Cygwin expert (or emacs expect) so don’t expect too much ;). This post just lists some stuff you might run into under windows.

First you’re going to need to install Cygwin (obviously) and the following extra packages:

  • emacs-w32
  • curl
  • git
The entire prelude install process runs through a downloaded shell script. curl will give you en error “(77) error setting certificate verify locations”. You can switch this off by doing:
   echo insecure >> ~/.curlrc
Obviously that’s not the right way of doing it. Feel free to let me know the proper way. Similarly you need to tell git to be wild and free about what it’s connecting to. Once again this is NOT the right way to do this but for the record
   git config --system http.sslverify false

The next issue that might trip you up is if your home directory has spaces in it.  My home directory is defined as

   /home/Ian J Cottee/

and that will make the installer upset. In this case I felt the best thing was to fix the problem for good as no doubt other utils outside of prelude might be thrown by this.

   juice: / $ cd /home
   juice: /home $ ls
   Ian J Cottee/
   juice: /home $ ln -s Ian\ J\ Cottee/ ian

I then modified /etc/passwd so the home directory was set to /home/ian

If you now start emacs you should see prelude setting itself up. It’s possible you may need to remove your existing .emacs.d (in my case it got created during one of the failed processes). If you’ve been using emacs before under Cygwin you’ll want to back it up.

The final issue is you may see in the console messages such as:

   0 [main] emacs-w32 9732 child_info_fork::abort:  

and plenty more gumph and in emacs messages such as:

   File error: Doing vfork, resource temporarily unavailable

To fix this follow the instructions at http://cygwin.wikia.com/wiki/Rebaseall

And there you go. You should be in business. Note I’ve only just got it running here. I’ll try and keep this post updated with all the pitfalls I will no doubt run into.







Leave a Reply

Your email address will not be published. Required fields are marked *