Skip to content

Commit

Permalink
migrated readme to sphinx portion of the docs, incomplete. Also, read…
Browse files Browse the repository at this point in the history
…thedocs doesnt seem to like documentation structure
  • Loading branch information
damouse committed Jun 21, 2015
1 parent be47018 commit fa72b9d
Show file tree
Hide file tree
Showing 3 changed files with 86 additions and 72 deletions.
73 changes: 3 additions & 70 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,75 +1,8 @@
# Paradrop

[![Documentation Status](https://readthedocs.org/projects/paradrop/badge/?version=latest)](http://paradrop.readthedocs.org/en/master/)
[![Documentation Status](https://readthedocs.org/projects/paradrop/badge/?version=latest)](http://paradrop.readthedocs.org/en/latest/)


Virtualized wireless routers.

Work in progress. For now, assume everything here is subject to change.

## Installation
Getting started with paradrop.

Compiling documentation
```
pip install sphinx sphinx-autobuild sphinx-rtd-build
cd docs
make html
```
### Snappy
[Snappy](https://developer.ubuntu.com/en/snappy/) is an Ubuntu release focusing on low-overhead for a large set of platforms. These instructions are for getting a Snappy instance up and running using 'kvm'.

Download and unzip a snappy image
```
wget http://releases.ubuntu.com/15.04/ubuntu-15.04-snappy-amd64-generic.img.xz
unxz ubuntu-15.04-snappy-amd64-generic.img.xz
```

Launch the snappy image using kvm
```
kvm -m 512 -redir :8090::80 -redir :8022::22 ubuntu-15.04-snappy-amd64-generic.img
```

Connect to local instance using ssh
```
ssh -p 8022 ubuntu@localhost
```

### Paradrop
Paradrop is packaged as a python package. This means you can install it on a local system without needing to interact with snappy. Be warned-- the package on its own assumes that docker and Open vSwitch are installed, and may fail if these components are not already installed!

(in progress)


Build a Snap and push it to a running snappy instance. Make sure you're in the directory you're trying to build before attempting these steps. This example loads one the sample snappy apps.
```
snappy build .
snappy-remote --url=ssh://localhost:8022 install ./hello-world_1.0.17_all.snap
```

Snaps with binaries must have those binaries explicitly called. Those with services are automatically started. This example again uses the sample 'hello-world' shipped with the snappy examples repository.
```
hello-world.echo
```


### Virtualenv
(Note: not using virtualenv for pex configuration later, but it makes things easier.)
virtualenv is a tool that allows developers to manage environments, dependancies and more for python programs. In this case its used both as a management tool and a packageing tool (along with pex.)

We may choose to go with this as part of the build process since it doesn't require building the python package, but perhaps not.

To load the current virtualenv, use
source [envdir]/bin/activate

To deactivate, use
deactivate

To install something like twisted be sure to have python developer tools already installed:
sudo apt-get install python-dev

## Contributing
All contributions must follow [PEP8](https://www.python.org/dev/peps/pep-0008/) and have relevant tests. Please document as needed.

## Miscellanious Help
Virtualized applications on wireless routers.

For more information see documentation provided through the badge above.
75 changes: 74 additions & 1 deletion docs/build system.rst
Original file line number Diff line number Diff line change
@@ -1,2 +1,75 @@
Build System
====================================
====================================

ORPHANED DOCS

### Snappy
[Snappy](https://developer.ubuntu.com/en/snappy/) is an Ubuntu release focusing on low-overhead for a large set of platforms. These instructions are for getting a Snappy instance up and running using 'kvm'.

Download and unzip a snappy image
```
wget http://releases.ubuntu.com/15.04/ubuntu-15.04-snappy-amd64-generic.img.xz
unxz ubuntu-15.04-snappy-amd64-generic.img.xz
```

Launch the snappy image using kvm
```
kvm -m 512 -redir :8090::80 -redir :8022::22 ubuntu-15.04-snappy-amd64-generic.img
```

Connect to local instance using ssh
```
ssh -p 8022 ubuntu@localhost
```


### Virtualenv
(Note: not using virtualenv for pex configuration later, but it makes things easier.)
virtualenv is a tool that allows developers to manage environments, dependancies and more for python programs. In this case its used both as a management tool and a packageing tool (along with pex.)

We may choose to go with this as part of the build process since it doesn't require building the python package, but perhaps not.

To load the current virtualenv, use
source [envdir]/bin/activate

To deactivate, use
deactivate

To install something like twisted be sure to have python developer tools already installed:
sudo apt-get install python-dev

## Contributing
All contributions must follow [PEP8](https://www.python.org/dev/peps/pep-0008/) and have relevant tests. Please document as needed.

## Miscellanious Help


### Paradrop
Paradrop is packaged as a python package. This means you can install it on a local system without needing to interact with snappy. Be warned-- the package on its own assumes that docker and Open vSwitch are installed, and may fail if these components are not already installed!




Build a Snap and push it to a running snappy instance. Make sure you're in the directory you're trying to build before attempting these steps. This example loads one the sample snappy apps.
```
snappy build .
snappy-remote --url=ssh://localhost:8022 install ./hello-world_1.0.17_all.snap
```

Snaps with binaries must have those binaries explicitly called. Those with services are automatically started. This example again uses the sample 'hello-world' shipped with the snappy examples repository.
```
hello-world.echo
```

Compiling documentation
```
pip install sphinx sphinx-autobuild sphinx-rtd-build
cd docs
make html
```

sphinx-apidoc -f -o docs paradrop/paradrop/




10 changes: 9 additions & 1 deletion docs/overview.rst
Original file line number Diff line number Diff line change
@@ -1,2 +1,10 @@
Overview
====================================
====================================

Paradrop is a software platform that enables developers to create applications (or "chutes") that run on wireless routers. Chutes can be given full control over their router and can monitor traffic, filter traffic, or create their own wireless networks.

It runs on top of `Ubuntu Snappy <https://developer.ubuntu.com/en/snappy/>`_ , a trimmed-down and secured operating system that can run on ARM and x86. `Docker <https://www.docker.com/>`_ provides encapsulation for chutes through Linux Containers.

To get started developing on (or for!) paradrop, check out :doc:`quickstart`.

For a descriptive explination of paradrop's build process, see :doc:`build system`.

0 comments on commit fa72b9d

Please sign in to comment.