Skip to content

Commit

Permalink
Make installation explicit and discrete, combining suggestions from @…
Browse files Browse the repository at this point in the history
  • Loading branch information
stevepiercy committed Mar 20, 2013
1 parent 7c47008 commit 7a8b0d3
Showing 1 changed file with 79 additions and 29 deletions.
108 changes: 79 additions & 29 deletions docs/tutorials/wiki2/installation.rst
Expand Up @@ -5,25 +5,72 @@ Installation
Before You Begin
================

Installation Requirements
-------------------------

Follow the steps in :ref:`installing_chapter`, but name the virtualenv
directory ``pyramidtut``. Following these steps will ensure you have met the
following requirements:
This tutorial assumes that you have already followed the steps in
:ref:`installing_chapter`, thereby satisfying the following
requirements.

* Python interpreter is installed on your operating system
* :term:`setuptools` or :term:`distribute` is installed
* :term:`virtualenv` is installed
* a virtual Python environment named ``pyramidtut`` has been created
* Pyramid is installed

UNIX Requirements
-----------------
Create and Use a Virtual Python Environment
-------------------------------------------

Next let's create a `virtualenv` workspace for our project. We will
use the `VENV` environment variable instead of absolute path of the
virtual environment.

**On UNIX:**

.. code-block:: text
$ export VENV=~/pyramidtut
$ virtualenv --no-site-packages $VENV
New python executable in /home/foo/env/bin/python
Installing setuptools.............done.
**On Windows:**

Set the `VENV` environment variable.

.. code-block:: text
c:\> set VENV=c:\pyramidtut
Versions of Python use different paths, so you will need to adjust the
path to the command for your Python version.

#. Install SQLite3 and its development packages if you don't already
have them installed. Usually this is via your system's package
manager. On a Debian system, this would be:
Python 2.7:

.. code-block:: text
c:\> c:\Python27\Scripts\virtualenv --no-site-packages %VENV%
Python 3.2:

.. code-block:: text
c:\> c:\Python32\Scripts\virtualenv --no-site-packages %VENV%
Install Pyramid Into the Virtual Python Environment
---------------------------------------------------

**On UNIX:**

.. code-block:: text
$ $VENV/bin/easy_install pyramid
**On Windows**

.. code-block:: text
c:\env> %VENV%\Scripts\easy_install pyramid
SQLite3
-------

If you used a package manager to install your Python, or if you compiled your Python from source, then you must install SQLite3 and its development packages. If you downloaded your Python from python.org On a Debian system, this would be:

.. code-block:: text
Expand All @@ -49,10 +96,20 @@ Windows Requirements
Making a Project
================

Your next step is to create a project. For this tutorial, we will use the
:term:`scaffold` named ``alchemy``, which generates an application
that uses :term:`SQLAlchemy` and :term:`URL dispatch`. :app:`Pyramid`
supplies a variety of scaffolds to generate sample projects.
Your next step is to create a project. For this tutorial we will use
the :term:`scaffold` named ``alchemy`` which generates an application
that uses :term:`SQLAlchemy` and :term:`URL dispatch`.

:app:`Pyramid` supplies a variety of scaffolds to generate sample
projects. We will use `pcreate`—a script that comes with Pyramid to
quickly and easily generate scaffolds usually with a single command—to
create the scaffold for our project.

By passing in `alchemy` into the `pcreate` command, the script creates
the files needed to use SQLAlchemy. By passing in our application name
`tutorial`, the script inserts that application name into all the
required files. For example, `pcreate` creates the
``initialize_tutorial_db`` in the ``pyramidtut/bin`` directory.

The below instructions assume your current working directory is the
"virtualenv" named "pyramidtut".
Expand All @@ -75,18 +132,10 @@ On Windows:
startup problems, try putting both the virtualenv and the project
into directories that do not contain spaces in their paths.

`pcreate` is a script that comes with Pyramid that helps by creating and organizing files
needed as part of a Pyramid project. By passing in `alchemy`, we are asking the script to
create the files needed to use SQLAlchemy. By passing in our app name `tutorial`, the script
places that application name in all the different files required. For example, the ``initialize_tutorial_db``
that is in the ``pyramidtut/bin`` directory was created by `pcreate`.



.. _installing_project_in_dev_mode:

Installing the Project in "Development Mode"
============================================
Installing the Project in Development Mode
==========================================

In order to do development on the project easily, you must "register"
the project as a development egg in your workspace using the
Expand All @@ -108,8 +157,9 @@ On Windows:
c:\pyramidtut> cd tutorial
c:\pyramidtut\tutorial> %VENV%\Scripts\python setup.py develop
Success executing this command will end with a line to the console something
like::
The console will show `setup.py` checking for packages and installing
missing packages. Success executing this command will show a line like
the following::

Finished processing dependencies for tutorial==0.0

Expand Down

0 comments on commit 7a8b0d3

Please sign in to comment.