evolving - Friday 20th February, 2003 - Mac kool-aid

richardc on 2004-02-20T23:57:48

When I joined Fotango, I asked my new overlords if I could get a Mac laptop as my work machine. Being good masters, or as part of their open source slave programme - the distinction isn't clear, they equipped me with a shiny powerbook (and after some supplier issues a working one.)

The upshot of this is that for the last couple of months I've been migrating into it, and embracing stuff like iCal and Rendezvous.

Here's a run-down of the kool-aid I've supped to date.

---

Fink

I've always treated the system shipped perl with great suspicion, mostly because it's often old, the modules I want aren't packaged for it, and if I manually install/upgrade modules they get trampled by system upgrades. As a result I generally install my own into /usr/local/perl5.xx and tend that while letting the system take care of itself.

Well with the laptop I went with fink, because compiling binary modules against fink-managed libraries has bit me before, the system perl is a 5.8.1-era thingie (a late 5.8.1 RC at least) so new enough, and it's easy enough to write package descriptions so the modules I want can be made available as packages.

It's going well so far, I got a talk out of it, and more package descriptions than you'd normally shake a stick at (caveat: I rarely shake sticks, which may skew the sample).

---

iTunes/iPod

Actually, I drank of the iTunes kool-aid with the release of the Windows version, but I have imported all my albums into the new machine. With X-Tunes it's a dream.

New to the mix is a 15Gb iPod. Given that no new technology acquisition goes unpuninshed I ran into a typical iPod problem - my music collection is bigger than it is.

iTunes has smart playlists, so I can say 'give me 15Gb of music', but the drawback is that I can say 'of albums' or 'of songs', and 'randomly', but that either gets me the first 15Gb of albums every time, or incomplete albums.

The solution of course was to write a script that uses File::Find::Rule and Mac::Glue to populate a playlist with 15Gb of randomly selected albums. Because that's a bit slow it also uses Term::StatusBar so you can see how far through you are.

---

Mail.app

I read a lot of email. OK, I skim a lot of email. I used to deal with all of it using mutt on penfold, and then I switched to using Mail.app's imap mode.

That was all good, apart from Mail.app's mail filtering rules don't want to filter into imap hosted folders. That's not so much of a problem for my on penfold because everything goes through procmail and Perl in a long-tended configuration (scripts and .procmailrc in the usual places.) At the office however, the imap server is a magic multi-domain virtual-user setup, so running procmail just isn't an option.

imapfilter to the rescue! Though it's got a slightly quirky configuration file (and what doesn't), I managed to bend it to my will and now everything is all well and filtered in the office too.

---

Rendezvous

Or is that Zeroconf? Or should that be mDNS? Or is that just a part of the zeroconf standard? I've a dread feeling that I'll have to put together another list like I did for the vCalendar debacle.

Anyway, it's really cool to watch things show up in Rendezvous Browser, especially if you're using modules you wrote to do it. More services should advertise themselves.

While I was busy debugging Net::ZeroConf::Backend::Howl George Chlipapa released Net::Rendezvous, which I must install and play with at some point, as it could well completely obsolete my 3 dists before I even got round to releasing them.

---

iCal

Apart from the adventure of parsing ics, it's been really rather painless.

On my todo list is to set up a private DAV share on unixbeard.net so that we can put household events like "I'm going to FOSDEM, feed the fish" in it, as we still seem not to have bought a paper 2004 calendar for the kitchen.