fix security issue
[selectricity] / README
diff --git a/README b/README
index 9980f41f30f9b3aa098c9b38b1e10f5530d6fce2..5ce586b2191f237948d5201ed70ae1b45508902d 100644 (file)
--- a/README
+++ b/README
@@ -1,9 +1,57 @@
 ===============================================
-=== Depedendencies ============================
+=== Getting Selectricity ======================
+===============================================
+
+Selectricity is free software and is distributed under the GNU Affero
+General Public License version 3. You are free to use, modify, and
+distribute, or rework Selectricity under the terms of that license. Of
+course, we'd sure like it if you would send fixes back to us and tell us
+about cool stuff you do with our software!
+
+The best way to get Selectricity is just to download it from our
+source repository. You'll need the Git version control system or
+source control manager to check it. You can get it here:
+
+  http://git-scm.com/
+
+Once you have it, getting the source code is pretty easy. You just need
+to check out a branch with a command like this:
+
+  git clone http://projects.mako.cc/source/selectricity/.git
+
+By default, this will create a working copy with the latest
+*development* version of our code. If you want the latest production
+version (i.e., what we're running on the site), you need to switch to
+the live version of the software which is kept in a branch called
+"live." Once you cloned the repository above, you can switch into the
+directory (i.e., run "cd selectricity") and then run the following
+command:
+
+  git checkout -b live origin/live
+
+
+===============================================
+=== Getting Help and Contributing =============
+===============================================
+
+If you have a question, you can always email the core team at:
+
+  team@selectricity.org
+
+If you want to get involved in development, want to discuss
+selectricity, or want to participate, please subscribe to our mailing
+list here:
+
+  http://mailman.mit.edu/mailman/listinfo/selectricity
+
+
+===============================================
+=== Dependencies ==============================
 ===============================================
 
 To use Selectricity, you'll need to install the following gems in
-addition to Ruby on Rails, MySQL, and its dependencies:
+addition to Ruby on Rails (gem:rails), MySQL (gem:mysql), and its
+dependencies:
 
  * rmagick
  * gruff (http://nubyonrails.com/pages/gruff)
@@ -19,11 +67,16 @@ Also, you will need install the other applications installed first:
  * imagemagick (http://www.imagemagick.org/)
 
 On Ubuntu, you can install install the dependencies with: 
-  apt-get install imagemagick libmagick9-dev ruby1.8-dev libwmf-bin
+  apt-get install imagemagick libmagick9-dev ruby1.8-dev libwmf-bin rdoc \
+  libopenssl-ruby1.8 libreadline-ruby1.8 libmysqlclient15-dev
 
 Our server configuration uses Mongrel (installed from gems) behind an
 Apache2 load balancing proxy using mod_proxy.
 
+You'll also need to have a MTA installed. We use Postfix and have not
+tried it with any other system. Presumably though, anything that
+provides '/usr/bin/sendmail' should work.
+
 
 ===============================================
 === Contributors to Selectricity Include ======
@@ -31,81 +84,6 @@ Apache2 load balancing proxy using mod_proxy.
 
  * Benjamin Mako Hill <mako@atdot.cc>
  * John Dong          <jdong@ubuntu.com>
- * Justin Sharps      <jlsharps@mit.edu>
-
-===============================================
-=== Log =======================================
-===============================================
-
-07/31/07
-jlsharps: I've added a user authentication system known as
-"acts_as_authenticated" to the code. The plugin is the the vendor/plugins 
-directory. The two most noticeable changes are the AccountController and a 
-redone User model. I've left the UserController in place for now, but the 
-AccountController works in a different manner, so am switching over to that 
-gradually. I saved the 5 lines or so in the old User model, overwrote 
-it with the authenticated generator and then recopied the old stuff back in: 
-has_many :elections and the name() method. The generator also creates its own 
-migration file, but since we are using a create.sql file I adopted the 
-migration file into a new users table in the create.sql file. I have yet to 
-delete the old table because I haven't fully combed through the code yet and 
-determined how many of the old attributes (such as first_name, last_name) may 
-need to be retained. 
-http://technoweenie.stikipad.com/plugins/show/Acts+as+Authenticated is the 
-best site for documentation regarding acts_as_authenticaed. Also, currently
-it only stores the user_id in the session, but i just found a guide to help 
-me make it store the entire user object, so I'll do that while my battery 
-charges.
-
-08/03/07
-Handy trick: use the command 'gem_server' from a shell to create a server at 
-http://localhost:8008 that is an easy to navigate locally-hosted website with 
-all the documentation on local gems you have in a easy to read format.
-
-jlsharps: I added the Gruff plug-in today, which is viewable under the folder
-vender/plugins/gruff.  I installed it directly using the Gruff plug-in and
-included controller generate utility. The version 0.1.2, which doesn't seem to
-be the latest version. I've looked into it and it see and it seems that the
-latest version is 0.2.8. However, I wasn't sure how including a gem w/o a plugin 
-would function in end-game rails so I just what I used for now. If you guys 
-(mako of john) know how to do it, it'd probably be better to upgrade, but it 
-didn't seem like the best use of my time right now.  I got the plug-in here:
-http://topfunky.net/svn/plugins/gruff. You can get the gruff gem v 0.2.8 by 
-typing "sudo gem install gruff", I believe it's also hosted on RubyForge. 
-
-I created the GraphsController for Gruff methods to use. In Pollarize I put them 
-in the ApplicationContorller file, so they would be accessible to all. While 
-that it also an option here, it would also mean there wouldn't be much room for 
-playing around because everything in the Application file has to be perfect or 
-it seems to throw Error Code 500 (basically everything breaks). The show() 
-is a sample sample provided with Gruff. 
-
-Documentation is here:http://gruff.rubyforge.org/  Alternately, if you have the 
-gem installed, you can use the ri command, or the above mentioned gem_server. 
-
-If you guys want more helpful stuff here, let me know.
-
-======================================
-=== XML-RPC INFO                    ==
-======================================
-
-The XML-RPC API is still under development, but is somewhat functional already:
-
-To instantiate a client in Ruby, try something like:
-client=ActionWebService::Client::XmlRpc.new(SelectricityAPI,"http://localhost:3000/selectricity_service/vote")
-
-
-Getting the results of a quickvote is quite simple:
-?> client.get_quickvote_results("test")
-=> #<VoteResultStruct:0x336f92c @approval_winners=[1, 2], @borda_winners=[1], @plurality_winners=[1], @ssd_winners=[1], @errors=[], @condorcet_winners=[1]>
-
-Casting a quickvote:
-client.cast_quickvote("test",1,[[1,2]])
-
-To figure out what you're voting for:
->> client.get_quickvote_candidate_map("test")=> #<CandidateMap:0x335bbc0 @errors=[], @candidate_names=["test", "test2"], @candidate_ids=[1, 2]>
-
-
-
+ * Justin Sharps      <jlsharps@alum.mit.edu>
 
 

Benjamin Mako Hill || Want to submit a patch?