As it turns out, there’s not always an obvious, easy way to do something in OS X if you don’t subscribe to Apple’s ecosystem.
I had a Sansa e200 for a couple years running Rockbox. It’s a dependable and flexible player. It’s not an iPod though, so no native iTunes sync. I tried Synkron, arRsync, Grsync, and a couple other tools. Everything was just… clunky.
I decided to just write my own shell script that uses rsync. Here it is.
#! /bin/sh
# sync the Music folder to Sansa microSDHC card
# -v makes it verbose so you can see what files and folders are getting copied or deleted
# -r means recursive, which means it looks in all the subfolders
# -t preserves the timestamp so the file doesn't get copied again next time
# --delete gets rid of files I deleted on my hard drive
# --modify-window=3 is used because of FAT filesystem time inaccuracy
rsync -vrt --delete --modify-window=3 /Users/nat/Music/ /Volumes/SANSASD/Music/
# sync the Nonmusic folder to Sansa microSDHC card
rsync -vrt --delete --modify-window=3 /Users/nat/Nonmusic/ /Volumes/SANSASD/Nonmusic/
echo "Sansa is synced."
Works great. Just don’t forget to make it executable. Also, it can be launched straight from Finder or Spotlight if you change the file extension to .command.
Now I have an iPod. Natch.