Difference between revisions of "Academy"
Line 40: | Line 40: | ||
#!/bin/sh | #!/bin/sh | ||
export PYTHONPATH=/home/''USERNAME''/mezzanine-env/mezzanine:$PYTHONPATH | export PYTHONPATH=/home/''USERNAME''/mezzanine-env/mezzanine:$PYTHONPATH | ||
− | python $(dirname $0)/mezzanine_project.py | + | python $(dirname $0)/mezzanine_project.py $* |
Then make it executable: | Then make it executable: |
Revision as of 00:30, 15 January 2013
Hizees! We're going to hack on Mezzanine, a Django Content Management System (CMS).
Install Mezzanine
Firstly, install and start a Python virtual environment:
sudo apt-get install python-virtualenv
once installed, create an environment for Mezzanine:
cd ~ virtualenv mezzanine-env cd mezzanine-env source bin/activate
You should now be in a Python virtual environment. This will isolate your Python libraries from the system's ones in case stuff breaks. Now install some dependencies:
sudo apt-get install python-imaging pyflakes pep8 python-tz
Then grab it from github:
git clone https://github.com/stephenmcd/mezzanine.git
You should have a directory structure something like:
~ | |__ mezzanine-env - the Python virtual environment | |__ mezzanine - the Mezzanine application (cloned from github)
Running the github version of Mezzanine
The instructions assume you're not a hacker wanting to work on the codebase. Consequently, we need to wire up the github version. First, get the bin directory on your path:
export PATH=/home/$USER/mezzanine-env/mezzanine/bin:$PATH
Then, we're going to hack-a-saurus a wee shell script in ~/mezzanine-env/mezzanine/bin/mezzanine-project
:
#!/bin/sh export PYTHONPATH=/home/USERNAME/mezzanine-env/mezzanine:$PYTHONPATH python $(dirname $0)/mezzanine_project.py $*
Then make it executable:
chmod +x ~/mezzanine-env/mezzanine/bin/mezzanine-project
Now you should be able to create your own new Mezzanine project, inside your Python virtual environment:
cd ~/mezzanine-env mezzanine-project hogwarts-blog