I’ve been heavily invested in Delicious as a bookmarking service for many years. However, after learning about Delicious’ sunsetting, I’ve decided to join the ranks of the Great Delicious Exodus and sign up for an account with Pinboard.
One tool that has been an important part of my workflow is a tool called delimport, which automatically indexes my Delicious bookmarks and makes them available via Spotlight and Spotlight-powered tools (e.g., Alfred on Mac OS X).
While delimport hasn’t been updated since 2007, it has continued to work remarkably well. The upside is that the project has an open-source repository available, but I still ran into a few issues. Here’s how I added Pinboard support to delimport.
Getting Started
The first thing to note is that I’m running Mac OS X 10.6.5 and Xcode 3.2.5. This is notable because it’s what caused several of my problems while trying to solve this puzzle. We’ll get to that in a minute.
-
I needed to pull down the delimport source code. This required additional steps.
-
I’ll save you the time and tell you that delimport will not compile in Xcode 3.2. You’ll need to revert to an older version of Xcode, 3.1.4.
-
Go to connect.apple.com and login.
-
In the sidebar, choose Developer Tools.
-
Scroll down and find the section labelled Xcode 3.1.4 Developer Tools.
-
Choose the Xcode 3.1.4 Developer DVD (Disk Image) which clocks in at 993 MB.
-
While waiting for that, you’ll need to uninstall your current version of Xcode.
sudo /Developer/Library/uninstall-devtools –mode=all
-
-
Once the Xcode 3.1.4 disk image is downloaded, install it.
-
Make sure you include the Mac OS X 10.4 SDK as well.
-
After the install has completed, restart your computer. No seriously.
-
Editing and Compiling
Note: A couple of people have asked why I don’t just redistribute a modified version of the app. The reason is licensing. As far as I can tell, the source code is 100% copyrighted with no license for redistributing modifications to the source or the app. As such, I’m providing instructions for modifying the app but you’ll need to compile it yourself.
-
Once your system is back up, locate the
delimport.xcodeproj
file and open it in Xcode 3.1.4. -
Change the Base SDK pulldown to Deployment.
-
In the sidebar, choose the
delimport
project, right-click (or control-click), and choose Get Info. -
From the resulting dialog box, change the value of the Architectures setting to 32/64-bit Universal.
-
Click the checkbox for Build Active Architecture Only.
-
For the Valid Architectures setting, there are more architectures than we need. Remove all architectures except for
i386
andx86_64
. -
While
delimport
is still selected in the sidebar, choose Project > Edit Active Target “delimport” from the menubar. Choose the Properties tab from the resulting dialog box. Change the version number to0.3.1u
which says that you’re using an unofficial modification (just in case the developer releases an official 0.3.1 version). -
Open the
Classes
folder in the sidebar and find theDIBookmarksController.m
file. Make the following changes to the file. -
In the menubar, choose Build > Build. If all is well, the source should compile with no errors.
Cleaning Up
First, let’s clean up after the old version of delimport.
-
Shutdown any running copies of delimport by launching Activity Monitor, searching for delimport, clicking the Quit Process button in the toolbar, and choosing either Quit or Force Quit from the resulting dialog.
-
Open up your Accounts preference pane, click on the Login Items tab, and delete any entries that contain delimport.
-
Open your Terminal and run the following commands.
rm -Rf ~/Library/Caches/org.ianhenderson.delimport && rm -Rf ~/Library/Caches/Metadata/delimport/ && rm -f ~/Library/Preferences/org.ianhenderson.delimport.plist
Installation
Once we’ve removed the old cruft, let’s install our new app.
-
From your
delimport
source code directory, openbuild/Deployment
to finddelimport.app
. -
Drag the app into your
/Applications
or/Applications/Utilities
directory. -
Launch the app.
-
Since we deleted all of the previous settings, your computer will think that this is the first time that we’ve launched the app. It will ask you if you want to launch it on login. Choose Add.
-
If you already have your credentials for Pinboard stored in your Keychain, it will ask if you want to give delimport access to your Pinboard credentials. Choose Always Allow.
-
If you don’t have your credentials saved, delimport will ask for your Pinboard credentials. Go ahead and enter them.
-
Within a few moments, you’ll be able to use Spotlight to access your Pinboard bookmarks.
Post-mortem
Once everything is installed and working, you’ll probably want to remove Xcode 3.1.4 and reinstall the latest version. Simply follow the aforementioned uninstallation instructions to remove the old Xcode, then install the latest Xcode.
If you don’t have the installer on-hand, you can always download the latest version from the logged-in version of developer.apple.com/mac.