Welcome to the home of imguploadr

Please also check out the Mercurial repository and the download page of this project.

About imguploadr

imguploadr is a command-line oriented tool that allows you to upload photos to the Flickr photo service. It is written in C with the intent of being portable while not requiring and interpreter (such as Perl or Ruby) to run.

Being command-line oriented, it works quite differently from other photo uploaders. The upside being that it can easily be run remotely over an SSH connection or just as a simple, no-nonsese uploader on your home computer.

Once the required libraries are in place (see below), imguploadr can easily be compiled on any Unix-like platform. The primary development platforms for the progam are Mac OS X, Linux and Solaris. While not specifically tested, it is expected that imguploadr will work fine on other modern Unix or Unix-based platforms (such as the FreeBSD/NetBSD/OpenBSD family).

How imguploadr works

  1. Authenticate: imguploadr -u <flickr-user> -a. Once you have logged into Flickr in your browser and granted write permission to imguploadr, you are ready to use it to upload your images.
  2. Upload: imguploadr -u <flickr-user> *.jpg
  3. Upload: imguploadr -u <flickr-user> -f <CSV-file>

There are additional options that let you specify the default permissions of all uploaded images or the set the images should be added to. Alternatively, you can use the option of specifying a CSV file (as per last example above), which allows you specify title, description, permissions, tags and set name on a per-photo basis.

Getting imguploadr

You’ll need the following libraries (and their header files – usually called the “dev” package in Linux distributions) in order to build imguploadr:

Download imguploadr directly from the repository:

$ hg clone http://imguploadr.hg.sourceforge.net/hgweb/imguploadr/main/ \

Then, tweak the makefile and run make. There’s no tar-ball yet and neither is there a “configure” script.

What about Windows?

imguploadr does run under Windows, although the primary development platform is Unix. The same libraries as mentioned above are required to build for Windows. A makefile (called Makefile.win) exists in the source repository. This makefile is a regular Unix makefile that assumes a MinGW cross-compiler to build the Windows executable.

A pre-compiled MSI archive is available.