Tuesday, May 18, 2010

The admins never do what you want? Now it is easier than ever for you to help!

EDIT (6 Apr. 2011): We've deprecated the pre-built VMs. The versions available on the site are now based on an out-of-date version of the code. There is now an install script that will turn a blank copy of Ubuntu 10.04 into a reddit install. See its reddit wiki page for more information.

We're proud to announce another major release of our code (only 6 months in the making...), now available from our code repository, and this time we took the extra step of building a VM with reddit already up and running on it. We broke this release into multiple chunks (each about a month's worth of development time) to keep it organized and, frankly, to make sure we didn't crash trac like last time.

We're hoping to have a bunch of discussions about new features on redditdev, so keep an eye on that reddit for up-to-date patches and bugfixes. For now, here are the highlights:
Cassandra Support
to replace memcachedb as a persistent caching layer for listings.

Self-service sponsored links
including our own python library for talking to authorize.net to take care of credit card payments

Improved Messaging
including threading and moderator messaging.

Discount
replacing our python markdown interpreter

Included jobs/daemons
Part of properly setting up reddit is to get all of the services and cron jobs set up and configured properly to keep everything consistent. The code repos now include a "srv" and "scripts" directory for daemons and jobs, respectively. We also annotated the example.ini file.
Many of these additions require updates to the installed site-packages, so make sure to run "python setup.py develop" when you update your code repos.

We're also planning on a much more sane release schedule for future patches (much closer to "weekly" rather than "epoch modulo 10Ms").

Also, we know that reddit can be a bit of a pain to set up from scratch. A lot of it has grown organically without much thought to distribution, and keeping a handle on what services and scripts to run to keep it happy can be a bit hairy.

To put the focus on open source development rather than installation, we decided to build and distribute a VM along with this release. Here's a link to the torrent*. The VM is a VMWare image running Ubuntu 10.04 with the full reddit stack already built and configured (including memcached, postgres, cassandra, and haproxy). To try it out, load the app in VMWare, figure out the IP address it comes up with, and set your /etc/hosts file to resolve that IP as "reddit.local".

The admin account that ships with the VM is "reddit"/"password" so you probably are going to want to change that first. The admin account on the reddit install is the same, and all of the test users conform to the "my username is my password" standard.

TLDR: New code released to our open source project, and this time we're also providing a Virtual Machine that already has reddit built and ready to go on it. Enjoy.

*Yes, it is theoretically possible to intuit the direct download link from that URL. Please, we beg you, use the torrent! It's 832MB, and we pay for every byte.
discuss this post on reddit