MG wrote:
Okay at cost of sounding like a horrible n00b...
I know nothing about perl... I'm running Mac OS X Panther and want to use sigX... will some kind person walk me through on how to set all this up? I just read through everything and I am so incredibly confused...

Right, this is what I think I did:
1) Install Mac OS X Developer Tools. I did this ages ago, and installed all of it. I think you just need the command line tools and libraries, but it might be better if you installed everything, just in case (you need about a gigabyte of disk space IIRC.) It should either be on one of the Mac OS X installer CDs (if you bought Panther at retail), or as an archive somewhere in your Applications folder (if Panther came preinstalled.)
2) Install Mac::Glue. Open a terminal, and type this:
sudo perl -MCPAN -e 'install "Mac::Glue"'
Mac OS X will prompt you for your password, and then you'll have to configure Perl's automatic update stuff. IIRC theres an option to let it configure itself, use that. If it tells you it needs to install prerequisites, let it. (Pressing Enter at Perl's prompts will select the default option)
3) Install libwww-perl. I don't know the fancy automatic way of doing this, so I ended up downloading it and its prerequisites, and installing manually.
http://www.perl.com/CPAN/modules/by-module/Bundle/ has libwww-perl itself.
http://www.perl.com/CPAN/modules/by-module/URI/ has URI.
http://www.perl.com/CPAN/modules/by-module/HTML/ has html-parser and html-tagset.
Download the latest versions of those 4 modules (libww-perl, URI, html-parser and html-tagset) and uncompress them using Stuffit (which should just create separate folders for each of them).
Go to each module's directory in Terminal (if you don't know how to use Terminal / tcsh / a command line, your pretty stuffed I'm afraid), and run:
perl Makefile.pl
make
make test
sudo make install
You may be asked for your password again for the sudo bit. The order to install the modules is probably html-tagset, html-parser, URI then libwww-perl itself.
4) Create a glue for iTunes, so Perl can get what track your playing. Search for gluemac in Finder, it's icon is a Unix programme icon (black box). In my case it was in ~/.cpan/build/Mac-Glue-1.19/scripts/ , with a duplicate in a similar location. (~ is Unix shorthand for your home directory). If it's there, the command is:
sudo ~/.cpan/build/Mac-Glue-1.19/scripts/gluemac 'iTunes'
It'll ask for a glue name, just press [ENTER] to use the default of iTunes. I think you might need iTunes running, I'm not sure.
5) Assuming all the modules install correctly, use TextEdit / vi / editor of your choice to save my version of the Perl script (the others are based on Linux, and will only partly work, and bring up a dozen errors.) Remember to include all of the code I gave and to change the username and password to yours. Use Plain Text mode, not rich text, I think UTF-8 text encoding is what you need to use. I saved mine as sigx.pl in my home directory. Assume that type:
cd ~
chmod +x sigx.pl
./sigx.pl
And a Sigx should be created. Check if it worked on the website (it should appear in the preview area, and look similar to mine). If errors come up then somethings gone wrong somewhere, but it'd be hard to debug as I'm pretty clueless about Perl as well. I think cut and pasting the code might introduce loads of hidden characters to damage the code as well, which could cause problems as you'll need to do just that with my code. Unfortunately I don't have any webspace to upload a working / known good version of my script too either...
6) If the script is working, now all we need to do is add it to cron. Luckily a Mac GUI as available, at
http://www.koch-schmidt.de/cronnix/. Add it, making sure NOT to prepend the /usr/bin/open command. Set everything but minutes to 'any', then go to the advanced tab, and but */2 for minutes. This should cause the script to run every two minutes when your logged in.
7) Modify the script to your personal tastes. The line:
$DATA_2_SEND="CPU: $MACHINE | OS: $UNAME *<*Uptime: $UPTIME*<*Diskspace: $HDD Free: $HDDFREE*<*$nowPlaying";
In the script controls the actual message. The *<* command is newline, and the $VARNAMEs are the bits that insert each dynamically generated part. To get rid of variables you don't want, just remove them. All the working variables are used in that version (mine fakes the CPU speed by adding it manually.) Make sure not to remove the " and the "; at the start and end, and don't use " in the actual text (I'm not sure about other special characters). I'm sure finding some Perl genius would be better.
Now if that hasn't scared you off, I don't know what will. Sorry about the badly writteness, I'm doing this in a rush, and I'm not much of a writer anyway...
(One thing I noted is that there's a specific iTunes Perl module as well, which might remove the need to mess around with Mac::Glue to get the iTunes bit working. But I don't have the time to do that sort of thing I'm afraid.)