SOLVED: Fixing Perl Plug-ins for XChat Azure in OS X Mavericks 10.9
I’m a heavy user of IRC and have been since the late 90’s. I use X-Chat for IRC on almost all machines, including Mac and Windows, not just the Linux environment that it was created upon.
When I recently upgraded my OS X Lion (10.7.5) machine to OS X Mavericks (10.9), I started seeing a significant amount of core OS bugs. One of them affected how I use XChat to get to Freenode and other networks via SASL, SSL and Tor.
If you’re using XChat Azure 1.16.0 or the latest preview of 1.16.1, you’ll see the following errors when trying to load Perl plugins from Window -> Plugins and Scripts inside XChat:
Invalid Mac OS X bundle or required Mac OS X version is not satisfied
You’ll see this when you try to select the version of Perl showing in the Plugins window. The Python plugin works fine, just not Perl.
Here’s the quick-and-dirty fix, until the XChat Azure team can come out with a Mavericks-compatible release that uses the latest Perl:
Change to the XChat Azure PlugIns directory:
cd /Applications/XChat Azure.app/Contents/PlugIns/
Duplicate the contents of the perl-lion Perl bundle into one for Mavericks
sudo rsync -avP perl-lion.bundle/. perl-mavericks.bundle
Update the Info.plist file to match the versioning:
sudo defaults write ./perl-mavericks.bundle/Contents/Info XChatAquaMacOSVersionBranch 10.9
There’s one last step I found when I ran that last command to update Info.plist, and that is that you have to hand-modify the version in the .plist file to match OS X Mavericks 10.9 versioning:
sudo vi perl-mavericks.bundle/Contents/Info.plist
Down near the bottom of the file, change the string value of XChatAquaMacOSVersionBranch from 10.6 to 10.9, like this:
<key>XChatAquaMacOSVersionBranch</key> <string>10.9</string>
Now if you go quit and restart XChat Azure, go to Window -> Plugins and select your Perl interpreter (the one with 10.9), it will work, and you’ll see your plugins loaded as expected:
[16:27] Python interface loaded [16:27] Perl interface loaded [16:27] SASL: auth loaded from /Users/$USER/Library/Containers/org.3rddev.xchatazure/Data/Library/Application Support/XChat Azure/sasl.auth
I wrote some HOWTO documents describing how to configure Tor + SASL + SSL to connect to IRC, you can find them here:
- HOWTO: Configure Tor + SASL + irc to connect to Freenode
- HOWTO: Configure XChat Azure on OS X to connect to Freenode using SASL + Tor
That’s it! Good luck and happy IRC’ing!