Setting up the ARM4FS development environment: Difference between revisions

From
Jump to navigation Jump to search
No edit summary
 
 
(3 intermediate revisions by the same user not shown)
Line 3: Line 3:
The ARM4FS proof of concept programs are written in Python and kept in a SVN repository. You can check them out with
The ARM4FS proof of concept programs are written in Python and kept in a SVN repository. You can check them out with
svn checkout svn://brn-svn.sar.informatik.hu-berlin.de/arm4sns/arm4fs
svn checkout svn://brn-svn.sar.informatik.hu-berlin.de/arm4sns/arm4fs
which will get you an <code>arm4fs</code> directory with two subdirectories: <code>sns-al</code> (the Anonymization Layer Server and Client) and <code>sns-rs</code> (the Reputation System). To run the programs at least Python 2.3 and some additional libraries are needed:
which will get you an <code>arm4fs</code> directory with two subdirectories: <code>sns-al</code> (the Anonymization Layer Server and Client) and <code>sns-rs</code> (the Reputation System). To run the programs at least Python 2.3 and some additional libraries are required:
; <code>sns-rs</code> : You need numarray (package <code>python-numarray</code> under Debian, <code>numarray</code> under Gentoo)
; <code>sns-rs</code> : You need numarray (package <code>python-numarray</code> under Debian, <code>numarray</code> under Gentoo)
; <code>sns-al</code> : You need pyopenssl (Debian: <code>python-pyopenssl</code>, Gentoo: <code>pyopenssl</code>), pycrypto (Debian: <code>python-crypto</code>, Gentoo: <code>pycrypto</code>), SQLObject (Debian: <code>python-sqlobject</code>, Gentoo: <code>sqlobject</code>), sqlite (Debian: <code>python-sqlite</code>, Gentoo: <code>pysqlite</code> but it suffices to have the <code>sqlite</code> USE flag set when emerging <code>sqlobject</code>)
; <code>sns-al</code> : You need pyopenssl (Debian: <code>python-pyopenssl</code>, Gentoo: <code>pyopenssl</code>), a recent SVN version of [http://sandbox.rulemaker.net/ngps/m2/ M2Crypto], SQLObject (Debian: <code>python-sqlobject</code>, Gentoo: <code>sqlobject</code>), sqlite (Debian: <code>python-sqlite</code>, Gentoo: <code>pysqlite</code> but it suffices to have the <code>sqlite</code> USE flag set when emerging <code>sqlobject</code>)

In short:
; Debian : <code>apt-get install python-numarray python-pyopenssl python-sqlobject python-sqlite</code>
; Gentoo : <code>echo "dev-python/sqlobject sqlite" >> /etc/portage/package.use</code><br/><code>emerge -avt numarray pyopenssl sqlobject</code>

Then: Check out [http://sandbox.rulemaker.net/ngps/m2/ M2Crypto] from their SVN and install it.

== Bootstrapping ==
Run the Reputation System:
# <code>cd sns-rs</code>
# <code>./reputation-provider.py 4444</code>
Hint: If you don't have the Reputation System in a runnable state, but want to try the Anonymization Layer anyway, use
while (echo "0" | nc -l -p 4444); do echo "."; done
as a fake Reputation System for now.

Set up the database tables and create the first user. In another window:
# <code>cd sns-al</code>
# <code>python init.py</code>
# <code>init.py</code> prompts you to run the server. In another window do: <code>cd sns-al; python Server.py</code>; then press enter in the window that has <code>init.py</code>

== Starting ==
Alway first start the reputation system, then the anonymization layer server. Then you can run <code>python Client.py</code> (the anonymization layer client) at will.

Latest revision as of 10:57, 6 June 2006


The ARM4FS proof of concept programs are written in Python and kept in a SVN repository. You can check them out with

svn checkout svn://brn-svn.sar.informatik.hu-berlin.de/arm4sns/arm4fs

which will get you an arm4fs directory with two subdirectories: sns-al (the Anonymization Layer Server and Client) and sns-rs (the Reputation System). To run the programs at least Python 2.3 and some additional libraries are required:

sns-rs
You need numarray (package python-numarray under Debian, numarray under Gentoo)
sns-al
You need pyopenssl (Debian: python-pyopenssl, Gentoo: pyopenssl), a recent SVN version of M2Crypto, SQLObject (Debian: python-sqlobject, Gentoo: sqlobject), sqlite (Debian: python-sqlite, Gentoo: pysqlite but it suffices to have the sqlite USE flag set when emerging sqlobject)

In short:

Debian
apt-get install python-numarray python-pyopenssl python-sqlobject python-sqlite
Gentoo
echo "dev-python/sqlobject sqlite" >> /etc/portage/package.use
emerge -avt numarray pyopenssl sqlobject

Then: Check out M2Crypto from their SVN and install it.

Bootstrapping

Run the Reputation System:

  1. cd sns-rs
  2. ./reputation-provider.py 4444

Hint: If you don't have the Reputation System in a runnable state, but want to try the Anonymization Layer anyway, use

while (echo "0" | nc -l -p 4444); do echo "."; done

as a fake Reputation System for now.

Set up the database tables and create the first user. In another window:

  1. cd sns-al
  2. python init.py
  3. init.py prompts you to run the server. In another window do: cd sns-al; python Server.py; then press enter in the window that has init.py

Starting

Alway first start the reputation system, then the anonymization layer server. Then you can run python Client.py (the anonymization layer client) at will.