Friday, April 23, 2010

Pictor: A Photo Web App for your Cloud

So this post is long overdue... Several months back, I uploaded new package called Pictor to Ubuntu Lucid.

Now Pictor holds a special place in my heart as this was the first program I wrote that I freely shared with everyone I who asked for the source code. I didn't know much about free software at the time, but I was quite willing to share my code with anyone who asked for it. I actually wrote the heart of Pictor in 1997 when I created a website for some friends of mine in a jam band called Last Free Exit at Texas A&M University in College Station, Texas. I applied an Open Source license to it a few years later, and it's been in Launchpad/Bazaar for several years now, but I only recently got around to packaging it and adding it to Ubuntu.

Pictor is a pretty simple web interface for browsing and sharing pictures in a web interface. Now today, there's plenty of public ways to do this, such as Picasa, Flickr, Shutterbug, and countless others. But I don't think any of these existed in 1997 when I wrote Pictor.

And there is another key difference, though... Pictor is AGPL free software, and you can run it entirely on your own server or virtual machine in the cloud. No need to accept complicated license agreements or upload your photos to hosted services who might then own your content.

As such, Pictor is an excellent application for "the cloud". You can fire up an Ubuntu EC2 instance, that you own, sudo apt-get install pictor, and upload your pictures to share in EC2. When you're done sharing you kill the instance, and your pictures will disappear as well. All without turning over the rights to anyone.

Similarly, you can run your own permanent server, sharing your images with the world, or protecting them with an .htaccess authentication token.

If you're looking for a simple little application to try out cloud computing, take a look at Pictor in Ubuntu. It's a great way to put some content in private version of The Cloud, and see if the Cloud Computing model works for you!

Here's a few screenshots.

It recursively supports directory listing.


And dynamically creates thumbnail views.


And dynamically resizes each picture for viewing, extracts metadata and thumbnails from JPEG headers, and can run in a slideshow mode.



Or, if you'd like to peruse a simple album, you can click around this one. This is a single album I have temporarily published using Pictor to supplement my post on CraigsList (yeah, selling my boat...).

Publishing this album was as simple as:
  1. Installing Ubuntu 10.04 LTS Server in a KVM virtual machine
  2. Installing Pictor
    sudo apt-get install pictor
  3. And creating a symbolic link to a directory that contained the pictures I wanted to publish
    sudo mkdir /usr/share/pictor/pictures
    sudo ln -s /srv/media/boat /usr/share/pictor/pictures
And you're up and running!

Cheers,
:-Dustin

2 comments:

  1. I'll be sure to check it out in a couple of days, after Lucid comes out!

    However /usr/share is not the right place for pictures, according to the FHS. Can't Pictor be configured (via a file in /etc) to look somewhere else?

    ReplyDelete
  2. Marius-

    I use a symlink, /usr/share/pictor/pictures -> /srv/pictures, and that's what I recommend others do as well.

    Basically, the index.php just wants to see a 'pictures' directory or symlink where it is.

    You can file a bug, if you like, and I can try to get this fixed in a future revision. It's relatively low priority for me, though.

    ReplyDelete

Please do not use blog comments for support requests! Blog comments do not scale well to this effect.

Instead, please use Launchpad for Bugs and StackExchange for Questions.
* bugs.launchpad.net
* stackexchange.com

Thanks,
:-Dustin