iTunes sucks.  I have much higher ambitions for my own software, but alas I haven’t hit the lottery quite yet.  😛  Anyway, the latest chapter of suckitude is iTunes’ pee-poor handling of remote files on a media file server.  What a $(*#@ basic need.  I can set up a samba share and see all the media files just fine from my MBP laptop.  Then I “Add to library…”, being careful not to copy the GB’s of music down to the laptop by unchecking the iTunes->Preferences->Advanced->[Copy files to iTunes Media folder when adding to library] checkbox.  It takes over an hour to scan the directory (what the HELL), and then iTunes proceeds to lock up my machine, perpetually, trying to perform [Gapless playback detection], even though I have crossfading turned off.  I get to repeat this process every time I add ONE file to my music collection.  Or rather, I don’t, as I refuse to go through ANY of this bullshit ritual.

There was a slight reprieve in the suckitude when I discovered mt-daapd (aka Firefly?), which serves up all your media from a linux fileserver over DAAP, Apple’s sharing protocol.  Wahoo, I’m back to loving you, Apple!  My media server scans regularly, serving up the files with the greatest of ease, and  iTunes is showing all my files under the SHARED tab.  Happy happy joy joy!  Until I try to drag a file to my iPhone.  Strange, it won’t work.  Well, not really strange.  Kind of predictable.  Welcome to the thin Aqua-colored veneer over Apple’s standard corporate behavior.  Puke.

I’m mostly bitter because I certainly should have developed a better way by now.  Shutting up and dusting off the old drawing board…

Bumped everything in an attempt to find a working daap server to serve my music to stupid performance-and-playlist-challenged iTunes.

  • on the server, udev kindly requested that I remove crufty old CONFIG_SYSFS_DEPRECATED && _V2 – in menuconfig, uncheck General->remove blahblahblah.
  • silly apache [/etc/conf.d/apache2] conf file update, make sure you don’t lose PHP and PERL support
  • ridiculous KDE 3.5 errors keep coming, and KDE 4 having all kinds of blocks – I say just keep [–unmerge]’ing ’til it works!
  • I used [emerge –skipfirst –resume] to get past nepomuk failure cruft.  Googled some, looks like a crappy old java config file is still pointing to a crappy old java JDK.  MAN I hate the lies that are Java…  [rm /etc/env.d/20java && emerge –oneshot -av soprano && emerge -Davu world].  Whatevah…

Next I compiled some new kernels.  To get OpenGL working on the ATI-driven  media center so MythTV is all purdy…

  • bump kernel and reboot
  • emerge -av ati-drivers
  • [eselect opengl set ati]
  • [aticonfig –ovt opengl]

Still need to fix the lousy alsa sound mixing for my hirez mkv files, I’m getting mixer channel errors in the MythTV log…

And xbmc is still segmentation faulting on startup…

I bumped up a Windows 7 release candidate install to the retail Windows 7 today.  Microsoft decided it was too much trouble to support an upgrade from the final Windows 7 RC, forcing you to do a completely new installation.  Blow-by-blow:

  • Fire up the Macbook Pro
  • Select System Preferences->Startup Disk->Windows on BOOTCAMP, Restart…
  • Uninstall Bootcamp for Windows (W7 isn’t happy until you do)
  • Install Windows 7
    • you’ll get errors unless you perform a custom install
    • pick the existing C: (BOOTCAMP) drive, the existing Windows folder will be renamed
    • go through the complete installation
  • Insert the Snow Leopard DVD and reinstall Bootcamp for Windows

If you followed this closely, that’s all you should need!  Not that bad.  Now to reinstall all the Windows software… when I get around to it, yawn…

From the “why-do-I-need-Perl-any-more” department…

PHP now provides perl-like regex functions, and writing websites has never been so much fun! I have always loved Perl for text parsing of any kind, and I realize that was because of its powerful regex functionality. During some recent PHP contract work for my friend John, I discovered that PHP’s got perl regex, via this…

preg_match( $perl_style_regex, $source, $match_result_array ).

I can scrape like a madman now. Happy happy joy joy. Anyone who disparages PHP has either never used it or has been trained in the pretentious ways of the Java prima donna. (JUST KIDDIN’ yall!) 😛

The easiest way I came up with was to use Vista’s “Windows Contacts” as a gateway.

  • Sync your Treo with the Palm Desktop.
  • Export contacts from the Palm Desktop as a CSV file, keeping track of the exported columns and names (yuck).
    • After exporting, I had to open the CSV file and remove all question marks in the contact names before the next step would work (doh).
    • After discovering that most carriers require you to dial 10 digits these days, I did a regex replace to add my area code to all 7-digit phone numbers.
  • Import into Windows Contacts, adjusting the mapping using the list of fields from the export (yuck).
  • Open iTunes and connect your iPhone.
  • Click on the Device, and select the Info tab.
  • Scroll down to the Contacts section, and select [x] Sync contacts with Windows Contacts.
  • Sync up! iTunes will warn you if you’re trying to import a lot of contacts.
  • I turned off the Windows Contacts sync after the import, I won’t be using it.

Wow, now I have a whole bunch of crappy old contacts in my iPhone, yay! :> At least Windows Contacts managed to remove duplicates, something I could never accomplish with my Palm/kpilot/etc. syncing.