Labs/Bespin/DeveloperGuide/Setup
Thanks for downloading the code to the Bespin project. You can easily get Bespin's Python server running on your local Mac or Linux machine (see note about Windows below).
Current Status Note
We are in the middle of a process that we're calling the "Reboot". It's not a rewrite of Bespin, but a major refactoring. The current developer setup process is not as simple as it will ultimately become, and the Bespin that you'll have at the end of it is missing a lot.
Consider this your official warning that there be dragons here.
Prerequisites
You will need the following installed on your system to get Bespin up and running:
- Mercurial
- Git
- Python 2.5 or 2.6
- Ruby 1.8 or 1.9 (1.9 is faster)
- The following RubyGems: rack jeweler json_pure extlib erubis thor
gem install rack jeweler json_pure extlib erubis thor
Optionally, you may want the thin library, which will improve performance over the default WEBrick.
gem install thin
NOTE FOR LINUX USERS: If you are running on a Linux system, you will likely need a "python-dev" and "ruby1.8-dev" (on Ubuntu; possibly "python-devel" elsewhere) package installed, if you do not already have it. If you want to build the embedded release, you will want libyaml: the package on Ubuntu is "libyaml-dev".
NOTE FOR MAC USERS: You will need Xcode installed.
NOTE FOR WINDOWS USERS: Most Bespin developers are using unix-like platforms. Bespin's server should be able to run on Windows, though. You'll need a C compiler, and you can use Microsoft's free Visual C++ compiler. As an alternative, you can use Cygwin or MinGW to have a unix-like environment on your Windows system.
Getting Started
Run:
hg clone http://hg.mozilla.org/labs/bespinclient hg clone http://hg.mozilla.org/labs/bespinserver cd bespinclient
This will get the Bespin client and Python Bespin server code checked out. The bespinclient/
directory is the "main" directory that you'll use. (See the Using Mercurial article for more detailed instructions on using Mercurial.)
To set up Bespin for the first time, run:
python bootstrap.py --no-site-packages
to get the environment set up. This is built around virtualenv.
After running the bootstrap script, please follow the additional instructions that are displayed on the screen.
Note: Currently (2009-11-10), Bespin is using a specific branch of SproutCore ("tiki"). bootstrap.py will fetch it for you, but if you need to fetch it yourself, invoke paver install_sproutcore.
Starting the development server
If you are no longer (or not yet) in the virtualenv environment run within the bespinclient directory:
source bin/activate
To start the server execute:
paver start
This will start the Bespin backend as well as the Sproutcore server. You can now access the Bespin editor at http://localhost:4020/editor in you browser.
Have fun!
More Documentation
Documentation can be found in the docs directory of "bespinclient".
Contributing to Bespin
For details see: