Thursday, November 22, 2007

iTunes Cache

So my MacBook's partition map got screwed up yesterday. I'm pretty well backed up, so instead of recovering I decided to just start over from scratch. My biggest issue is dealing with music- I only have a 60GB hard drive, like 30GB of music, and Tiger is somehow like 15GB. With everything else I'm usually between 1GB and 4GB of free space. 

I instead of copying my whole library back over, I set up a simple music cache with Automator and Python.

Working on the premise that I'm most likely to listen to music I've already listened to, the Automator script copies the current track from my external drive to the directory "~/Music/Local Cache/".

I wrote a Python script to run the Automator script every 30 seconds. 

#! /usr/bin/env python
import os
import time

while(1):
  os.popen4("automator '~/Music/iTunes Cache/Scripts/iTunesCache.workflow'")
  time.sleep(30)


Named it "iTunes Launcher.py" and saved it in "~Music/iTunes Cache/Scripts/" along with "iTunesCache.workflow"

Made it executable, changed the icon, and placed it in the dock:

Run iTunes from the launcher, and your current songs are cached. The Automator script is set to load each copied song into the playlist "Local Cache." This places the song in my library twice, the local and external versions, so I can go back later and remove references to the external drive using iTunes "Show Duplicates" feature.

No comments: