Mercurial > hg > agora-dellsystem
view README @ 171:a57d15b044a7
Add help_text to name field for bundles
Explains that the name field is meant to hold a slug, etc.
author | dellsystem <ilostwaldo@gmail.com> |
---|---|
date | Sat, 20 Oct 2012 00:29:49 -0400 |
parents | 6b08da550214 |
children |
line wrap: on
line source
Agora Octave is (or will be) a Django-based website for rapid collaboration related to GNU Octave. It is released under the terms of the Affero General Public License version 3 as published by the Free Software Foundation, or at your option, any later version. Agora also includes other software under a different BSD-like license. For details consult LICENSE. See the pip-requirements file for a list of required external libraries. Quickstart for personal debugging: 1) Install Python 2.5 or higher, the external libraries, and probably any version of mercurial, SQLite3. On a Unix-based system, Python is probably already installed, the rest can be gotten from source or your operating system's package manager if it has one. If you have pip (the Python package manager) installed, you can quickly install all the dependencies at particular versions by running $ pip install -r pip-requirements It is recommended that you do this within a virtualenv to avoid conflicts with system-wide packages. More information about virtualenv is available at www.virtualenv.org. If you do use virtualenv, you may have tocreate the virtualenv with the --distribute flag, to avoid problems with installing distribute. 2) Clone this repository 3) In the cloned repository, copy "agora-example.conf" to "agora.conf" (advanced users: modify this to suit your needs). 4) Now run $ python manage.py syncdb #Will create an empty database #(by default: sqlite3) $ python manage.py runserver #Run a development webserver on port 8000 $ python manage.py celeryd --settings=settings # Start the celery # session (mandatory) 5) Point a browser to http://localhost:8000 6) Submit patches. ;-) Here's our TODO. At the moment, almost none of this is done. "I" in the text below indicates "Jordi". -- Users can upload bundles of code. -- Bundles clearly indicate which free license they are using. I'm thinking that it's reasonable to restrict allowable licenses to GPL-compatibility. This is not a stringent requirement, and it would simplify distribution with Octave. For the moment I'm considering that this might be relaxed and any license approved by the OSI or FSF should be ok. **DONE** The basic framework for licenses is in place, but bundles aren't done yet. -- Additionally, there's a place to post quick snippets. They'll be under a default free license that the user indicates in their preferences. Usually only single bits of code go in there. Responding with more snippets will be facilitated. **DONE** Except for the license part. I'm changing my mind about this, perhaps it's too pedantic to demand clear licenses on code snippets. -- I'm thinking that optionally, I can setup bundles to also create an hg repo if the uploader requests it, or existing hg repos can be imported. -- When viewing a user's bundle, the bundle as a whole can be ranked and commented upon by logged in users. The contents of the bundle can also be browsed from the web without needing to download the whole bundle. -- Logging in is required only to contribute to the site with code, comments, ranking code. Everything else is public to anyone. -- Users are encouraged but not required to provide real names. **DONE** registration and profiles now do this. -- Bundles that are somehow deemed to be of high quality can easily be pushed to Octave-forge (i.e. they've been "forged", tempered, tested and tried). -- A user's landing page will indicate which bundles and snippets this user has uploaded as well as whatever personal information the user would like to provide. **DONE** Except that bundles aren't implemented yet. This README itself also admits patches.