diff --git a/README.mkd b/README.mkd index 3e4a9d897..495826128 100644 --- a/README.mkd +++ b/README.mkd @@ -27,6 +27,14 @@ Features - And much, much more. +Installation +------------ + + +The recommended way to install mitmproxy is running pip install mitmproxy. +For convenience, we provide binary packages on [mitmproxy.org](http://mitmproxy.org/). + + Requirements ------------ @@ -40,8 +48,11 @@ Optional packages for extended content decoding: * [protobuf](https://code.google.com/p/protobuf/) version 2.5.0 or newer. * [cssutils](http://cthedot.de/cssutils/) version 1.0 or newer. -__mitmproxy__ is tested and developed on OSX, Linux and OpenBSD. Windows is not -officially supported at the moment. +For convenience, all optional dependencies can be installed with +`pip install mitmproxy[contenviews]` + +__mitmproxy__ is tested and developed on OSX, Linux and OpenBSD. On Windows, +only mitmdump is supported, which does not have a graphical user interface. Hacking @@ -49,12 +60,16 @@ Hacking The following components are needed if you plan to hack on mitmproxy: -* The test suite uses the [nose](http://readthedocs.org/docs/nose/en/latest/) unit testing - framework and requires [pathod](http://pathod.net) and [flask](http://flask.pocoo.org/). +* The test suite requires the `dev` extra requirements listed in [setup.py](https://github.com/mitmproxy/mitmproxy/blob/master/setup.py) and [pathod](http://pathod.net), version matching mitmproxy. * Rendering the documentation requires [countershape](http://github.com/cortesi/countershape). -For convenience, all dependencies save countershape can be installed from pypi -to a virtualenv with 'pip install -r requirements.txt'. +For convenience, the following procedure is recommended to set up your environment: +``` +$ git clone https://github.com/mitmproxy/mitmproxy.git +$ cd mitmproxy +$ pip install --src . -r requirements.txt +``` +This installs the latest GitHub versions of mitmproxy, netlib and pathod into `mitmproxy/`. All other development dependencies save countershape are installed into their usual locations. Please ensure that all patches are accompanied by matching changes in the test suite. The project maintains 100% test coverage.