Theremin : great mpd client for Mac OS X

Maybe you remember in a previous post that I mentioned pympd as probably the best linux GUI client to mpd. Well that’s true for linux, but now that I also use Mac OS X, I’m looking for a mac client to mpd.

What’s mpd again ? “Music Player Daemon (MPD) allows remote access for playing music (MP3, Ogg Vorbis, FLAC, AAC, Mod, and wave files) and managing playlists”.

MPD runs on linux, and a lot of clients exist to locally or remotely control it. However, last time I checked, the only Mac OS X client was the buggy MpcOSX, that I wouldn’t recommend.

I just discovered that Theremin is now usable. This mpc client is full-featured, and nice. It has an itunes like music browser, it retrieves album cover art from amazon, manage playlists, trigger full or partial update of the mpd database, etc. It’s stable and available for PPC and Intel based macs. Give it a try !

Theremin screenshot

Claws Mail on Mac OS X

At last !

It took me more time than expected, but I finally got the beast properly compiled and bundled for Mac OS X.

Go grab Claws Mail for Mac OS X here

Beware, it’s a PPC only bundle for now. Universal bundle should follow in some weeks.

And of course the usual screenshot :
Claws Mail on Mac OS X screenshot

So now some explanation. In my previous post, I explained roughly how to compile Claws on Mac OS X. Since then, I have successfully embedded the whole application in a bundle, and made an image of it. More information are available on the developper page.

Next step : recompile using GTK+ natively on Mac OS X.

Compile Claws Mail on Mac OS X

I use the wonderful Claws Mail on my linux boxes at work and home. However, I run Mac OS X on my old ibook G4 laptop. I’v used Mail.App, which was not bad, then switched to Gnu Mail, better.

But I really miss Claws on my ibook. That’s why I have decided to try to compile it. I don’t tweak with source compilation often, as I’m a script languages oriented guy. But let’s try.

Part 1 : compile against Xorg

First of all, Claws Mail needs gtk-2.6, and a working POSIX building environment. I decided to go for Fink, as I used it a bit in the past.

  • install fink
  • download and untar Claws Mail sources from there.
  • the way to go is to run the ./configure script, then using fink, install missing packages needed for the compilation. Some needed software are available only in unstable, so you need to enable unstable packages in the fink pref. This gave me :
    • make (binary)
    • pkgconfig (binary)
    • xorg (binary)
    • glib2-dev (compiled from source)
    • glib (not the version 2, needed for glib-config)
    • gtk2-dev : you’ll need version > 2.6,
  • Claws Mail needs etpan, but there is no fink package. Darwin Ports provides one, but let’s compile it from the sources directly. Get the tarball at etpan homepage
  • compile libetpan with : ./configure –prefix=/sw && make && sudo make install
  • If you need the SSL support (fot IMAPS for instance), install openssl-dev, via Fink, but before that, make sure you enable “Use unstable cryptography packages” in the Fink preferences
  • you may want to install/compile other library if you need them in claws. Use ./configure –help to get the list of available options.

The configure script doesn’t look for the gtk2, glib and other includes in the right location. one solution is to make symlinks, but wwp proposed adding the include dires in the CFLAGS env var. The configure script doesn’t have the options to add includedirs). You might have to add more include dirs depending on your options and lib versions. Check config.log if configure fails

Now run the configure :
CFLAGS="$CFLAGS -I/sw/include/glib-2.0 -I/sw/lib/glib-2.0 -I/sw/include/gtk+-2.0 -I/sw/lib/gtk+-2.0" ./configure --prefix=/sw --disable-spamassassin-plugin --disable-dillo-viewer-plugin --disable-trayicon-plugin --disable-bogofilter-plugin

If the ./configure runs well, it’ll output this


claws-mail 2.9.1
JPilot : no
LDAP : yes
OpenSSL : no
iconv : yes
compface : no
IPv6 : yes
GNU/aspell : no
IMAP4 : yes
Crash dialog : no
Libgnomeprint : no
LibSM : no
Manual : yes
Plugins :
Maemo build : no
Config dir : .claws-mail
The binary will be installed in /sw/bin

Now let’s buid Claws :

make

And install it :

sudo make install

Well that was the first part. Now if everything compiled correctly, you should be able to run claws-mail. How? You first need to start X, and from within, start claws-mail. As we installed the fink X server, you have to run startx, and within an xterm, run claws-mail. Success! Claws Mail will appear.

In the next post we’ll see how to compile against the Apple X11 server.


claws on mac OS X

HTML editing in emacs

I’m an emacs user since 2000, but I actually never really had to mess with HTML a lot, as I never did real web development (that’s unusual nowadays, isn’t it ?), until recently.

Here is the history of what I have used so far :

  • built-in html-mode: not really helpful
  • sgml-mode: better, but indentation and some HTML-only syntax are not well formated. But still a valid choice
  • sgml-mode + mmm-mode : I used that for Mason development. It did the trick pretty well.
  • nxml-mode: a very good mode, which is more XML oriented. The problem is that by default it tries to validate HTML, and its indentation is not working great by deafult (at least for me). However it’s probably the best thing around if you need to edit XML within emacs

Slanning just told me he uses html-helper-mode. I tried it, and it seems to be what I need : a lightweight HTML mode with syntax highlighting and indentation working from scratch. Coupled with mmm-mode, it’s probably the best way of editing HTML, JSP, Mason, etc.

Perl books

I Bought them some weeks ago for more than 150 quids, started by advanced perl programming (2nd edition), then HOL. Really great books. I recommend reading PBP before.

perl books

Bye-bye Paris, Hello London !

That’s it! Just wanted to let you know I’m now in London. I still have no internet at home, so I’m still not able to do anything really useful, but that should change soon. In the meantime, I’ll start poking #gentoo-uk people irl 🙂

Cheers ! (as they all say here in UK )

screenrc

Today I decided to rewrite some of my config files. I started with ~/.screenrc. It’s amazing the cool things you can do in that file 🙂

Here are some of the options I use. One of them is rather useful : replacing the main screen key : instead of ‘ctrl-A’, I changed it to ‘ctrl-O’. That’s because ‘ctrl-A’ is binded in many applications (emacs, *sh, other editors, links…), and it clashes a lot with the badly chosen default screen key ‘ctrl-A’.

The other nifty option sets the caption of the bottom line : it displays all the windows with their number and title, the current one being highlighted in white on blue. And some status information are padded to the right of the screen.


# ~/.screenrc
# use visual bell
vbell on
# replace ctrl-A by ctrl-O
escape ^Oo
# set a big scrolling buffer
defscrollback 5000
# Set the caption on the bottom line
caption always "%{= kw}%-w%{= BW}%n %t%{-}%+w %-= @%H - %LD %d %LM - %c"