Documentation updates and fixes

* Nixed some of the mongodb references--pretty sure we're done with that.
* Fixed some awkward language.
* Fixed : :: stuff. Sphinx lets you do :: so you don't need the additional
  colon.
* Turned a paragraph into a .. note:: section. That makes it easier to
  notice and read.
This commit is contained in:
Will Kahn-Greene 2012-04-20 22:10:21 -04:00
parent f646e2e11b
commit 7798f911ab
3 changed files with 45 additions and 35 deletions

View File

@ -55,8 +55,9 @@ Software Stack
* Data storage * Data storage
* `MongoDB <http://www.mongodb.org/>`_: the document database backend * `SQLAlchemy <http://sqlalchemy.org/>`_: SQL ORM and database
for storage interaction library for Python. Currently we support sqlite and
postgress as backends.
* Web application * Web application
@ -84,10 +85,6 @@ Software Stack
ORM for MongoDB we're using which will make it easier to define ORM for MongoDB we're using which will make it easier to define
structures and all that (will be swapped out soon...) structures and all that (will be swapped out soon...)
* `SQLAlchemy <http://sqlalchemy.org/>`_: SQL ORM and database
interaction library for Python. We'll be moving to this in the
upcoming move to SQL.
* `Babel <http://babel.edgewall.org>`_: Used to extract and compile * `Babel <http://babel.edgewall.org>`_: Used to extract and compile
translations. translations.

View File

@ -48,13 +48,13 @@ MediaGoblin has the following core dependencies:
- `virtualenv <http://www.virtualenv.org/>`_ - `virtualenv <http://www.virtualenv.org/>`_
On a DEB-based system (e.g Debian, gNewSense, Trisquel, Ubuntu, and On a DEB-based system (e.g Debian, gNewSense, Trisquel, Ubuntu, and
derivatives) issue the following command: :: derivatives) issue the following command::
sudo apt-get install git-core python python-dev python-lxml \ sudo apt-get install git-core python python-dev python-lxml \
python-imaging python-virtualenv python-imaging python-virtualenv
On a RPM-based system (e.g. Fedora, RedHat, and derivatives) issue the On a RPM-based system (e.g. Fedora, RedHat, and derivatives) issue the
following command: :: following command::
yum install python-paste-deploy python-paste-script \ yum install python-paste-deploy python-paste-script \
git-core python python-devel python-lxml python-imaging \ git-core python python-devel python-lxml python-imaging \
@ -66,11 +66,13 @@ Configure PostgreSQL
.. note:: .. note::
MediaGoblin currently supports PostgreSQL and SQLite. The default is a MediaGoblin currently supports PostgreSQL and SQLite. The default is a
local SQLite database. This will "just work" for small deployments. If local SQLite database. This will "just work" for small deployments.
you don't want/need postgres, ignore all the postgres related parts. For
medium to large deployments we recommend PostgreSQL.
These are the packages needed for Debian Wheezy (testing): :: For medium to large deployments we recommend PostgreSQL.
If you don't want/need postgres, skip this section.
These are the packages needed for Debian Wheezy (testing)::
sudo apt-get install postgresql postgresql-client sudo apt-get install postgresql postgresql-client
@ -82,17 +84,17 @@ restricted database user for our MediaGoblin instance.
In this example, the database user will be ``mediagoblin`` and the database In this example, the database user will be ``mediagoblin`` and the database
name will be ``mediagoblin`` too. name will be ``mediagoblin`` too.
To create our new user, run: :: To create our new user, run::
sudo -u postgres createuser mediagoblin sudo -u postgres createuser mediagoblin
then answer NO to *all* the questions: :: then answer NO to *all* the questions::
Shall the new role be a superuser? (y/n) n Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n Shall the new role be allowed to create more new roles? (y/n) n
then create the database all our MediaGoblin data should be stored in: :: then create the database all our MediaGoblin data should be stored in::
sudo -u postgres createdb -E UNICODE -O mediagoblin mediagoblin sudo -u postgres createdb -E UNICODE -O mediagoblin mediagoblin
@ -117,11 +119,11 @@ Configure MongoDB
If this is a fresh setup and you have already set up PostgreSQL, you If this is a fresh setup and you have already set up PostgreSQL, you
will not need this step. will not need this step.
First, install MongoDB. On a DEB-based system run: :: First, install MongoDB. On a DEB-based system run::
sudo apt-get install mongodb sudo apt-get install mongodb
on a RPM-based system, run: :: on a RPM-based system, run::
yum install mongodb-server yum install mongodb-server
@ -167,7 +169,7 @@ assumes your local git repository will be located at
Substitute your prefer ed local deployment path as needed. Substitute your prefer ed local deployment path as needed.
This document assumes that all operations are performed as this This document assumes that all operations are performed as this
user. To drop privileges to this user, run the following command: :: user. To drop privileges to this user, run the following command::
su - [mediagoblin] su - [mediagoblin]
@ -179,7 +181,7 @@ Install MediaGoblin and Virtualenv
.. note:: .. note::
As of |version|, MediaGoblin has a rapid development pace. As a result MediaGoblin is still developing rapidly. As a result
the following instructions recommend installing from the ``master`` the following instructions recommend installing from the ``master``
branch of the git repository. Eventually production deployments will branch of the git repository. Eventually production deployments will
want to transition to running from more consistent releases. want to transition to running from more consistent releases.
@ -194,7 +196,7 @@ Clone the MediaGoblin repository::
git clone git://gitorious.org/mediagoblin/mediagoblin.git git clone git://gitorious.org/mediagoblin/mediagoblin.git
And setup the in-package virtualenv:: And set up the in-package virtualenv::
cd mediagoblin cd mediagoblin
(virtualenv --system-site-packages . || virtualenv .) && ./bin/python setup.py develop (virtualenv --system-site-packages . || virtualenv .) && ./bin/python setup.py develop
@ -219,7 +221,7 @@ flup::
./bin/easy_install flup ./bin/easy_install flup
This concludes the initial configuration of the development This concludes the initial configuration of the development
environment. In the future, if at any point you want update your environment. In the future, you want update your
codebase, you should also run:: codebase, you should also run::
./bin/python setup.py develop --upgrade && ./bin/gmg migrate. ./bin/python setup.py develop --upgrade && ./bin/gmg migrate.
@ -230,18 +232,19 @@ Deploy MediaGoblin Services
Configure MediaGoblin to use the PostgreSQL database Configure MediaGoblin to use the PostgreSQL database
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Edit the ``[mediagoblin]`` section in your ``mediagoblin_local.ini`` and If you are using postgres, edit the ``[mediagoblin]`` section in your
put in: :: ``mediagoblin_local.ini`` and put in::
sql_engine = postgresql:///mediagoblin sql_engine = postgresql:///mediagoblin
if you are running the MediaGoblin application as the same 'user' as the if you are running the MediaGoblin application as the same 'user' as the
database owner. database owner.
Update database data structures Update database data structures
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Before you start using the database, you need to run: :: Before you start using the database, you need to run::
./bin/gmg dbupdate ./bin/gmg dbupdate

View File

@ -18,7 +18,8 @@ Enabling Media Types
==================== ====================
In the future, there will be all sorts of media types you can enable, In the future, there will be all sorts of media types you can enable,
but in the meanwhile there's only one additional media type: video. but in the meanwhile there are two additional media type: video and
ascii art.
First, you should probably read ":doc:`configuration`" to make sure First, you should probably read ":doc:`configuration`" to make sure
you know how to modify the mediagoblin config file. you know how to modify the mediagoblin config file.
@ -30,21 +31,27 @@ To enable video, first install gstreamer and the python-gstreamer
bindings (as well as whatever gstremaer extensions you want, bindings (as well as whatever gstremaer extensions you want,
good/bad/ugly). On Debianoid systems:: good/bad/ugly). On Debianoid systems::
sudo apt-get install python-gst0.10 gstreamer0.10-plugins-{base,bad,good,ugly} gstreamer0.10-ffmpeg sudo apt-get install python-gst0.10 gstreamer0.10-plugins-{base,bad,good,ugly} \
gstreamer0.10-ffmpeg
Next, modify (and possibly copy over from ``mediagoblin.ini``) your Next, modify (and possibly copy over from ``mediagoblin.ini``) your
``mediagoblin_local.ini``. Uncomment this line in the ``[mediagoblin]`` ``mediagoblin_local.ini``. In the ``[mediagoblin]`` section, add
section:: ``mediagoblin.media_types.video`` to the ``media_types`` list.
For example, if your system supported image and video media types, then
the list would look like this::
media_types = mediagoblin.media_types.image, mediagoblin.media_types.video media_types = mediagoblin.media_types.image, mediagoblin.media_types.video
Now you should be able to submit videos, and mediagoblin should Now you should be able to submit videos, and mediagoblin should
transcode them. transcode them.
Note that you almost certainly want to separate Celery from the normal .. note::
paste process or your users will probably find that their connections
time out as the video transcodes. To set that up, check out the You almost certainly want to separate Celery from the normal
":doc:`production-deployments`" section of this manual. paste process or your users will probably find that their connections
time out as the video transcodes. To set that up, check out the
":doc:`production-deployments`" section of this manual.
Ascii art Ascii art
@ -58,8 +65,11 @@ library, which is necessary for creating thumbnails of ascii art::
Next, modify (and possibly copy over from ``mediagoblin.ini``) your Next, modify (and possibly copy over from ``mediagoblin.ini``) your
``mediagoblin_local.ini``. Uncomment or add to the media_types line ``mediagoblin_local.ini``. In the ``[mediagoblin]`` section, add
'mediagoblin.media_types.ascii' like so:: ``mediagoblin.media_types.ascii`` to the ``media_types`` list.
For example, if your system supported image and ascii art media types, then
the list would look like this::
media_types = mediagoblin.media_types.image, mediagoblin.media_types.ascii media_types = mediagoblin.media_types.image, mediagoblin.media_types.ascii