Checking out the Uploadr Source

Firstly, you'll need a Subversion client. For Windows, I strongly recommend Tortoise SVN. For OSX, Textmate comes with a Subversion plugin. For Linux, just install the regular command-line binaries.

Next, you'll want to checkout the repository at http://code.flickr.com/svn/trunk/uploadr/. On the command line this looks something like:

svn co http://code.flickr.com/svn/trunk/uploadr uploadr

Once you have a copy of the code, take a look at the README file for some hints to get started.

I need a compiler? This seems difficult

If you don't care about modifying the XPCOM components (the parts of uploadr that let it talk to other libraries, like GraphicsMagick and Exiv2), then you don't need to download the source. Simply download and install an official build and start hacking.

The first thing you'll probably want to do is 'unroll' the chrome JAR files. Go into the chrome folder (under OSX, it's inside the Contents/Resources folder inside the app) and rename uploadr.jar to uploadr.zip. Unzip the file in-place, with paths enabled (the default when using WinZip? and the command-line unzip utility). You should now have folders inside chrome called content, locale and skin.

Open up chrome.manifest in a text editor and replace all the bits that say jar:uploadr.jar!/ with file:. A line that looks like this:

content uploadr jar:uploadr.jar!/content/uploadr/

should be changed to this:

content uploadr file:content/uploadr/

Congratulations! You should now be able to run the app using the unrolled resources. This makes it much easier to hack on the .xul and .js files. Just start modifying stuff and see what happens :)

User tips

(This info is editable here)

...