WISP in a Box Development: Difference between revisions

From WirelessAfrica
No edit summary
Line 26: Line 26:
* [http://code.google.com/p/afrimesh '''Afrimesh'''] - the WispBox component integration toolkit and the core management dashboard.
* [http://code.google.com/p/afrimesh '''Afrimesh'''] - the WispBox component integration toolkit and the core management dashboard.
* [http://uck.sourceforge.net/ '''Ubuntu Customization Kit'''] - A set of scripts used by our build system to generate the WispBox livecd images.
* [http://uck.sourceforge.net/ '''Ubuntu Customization Kit'''] - A set of scripts used by our build system to generate the WispBox livecd images.
=== Core Project Infrastructure ===
{| cellpadding="5" cellspacing="0" border="1"
! Resource !! URL !! Description
|-
| Mailing List - User Support || TO COME ||  Users, Contributors and Developers should subscribe to and follow this list.
|-
| Mailing List - Development || TO COME || Contributors and Developers should subscribe to and follow this list.
|-
| Issue tracker || http://code.google.com/p/wispinabox/issues/list || Bug reports and feature requests submitted to the Issue tracker are more likely to receive attention!
|-
| IRC || http://webchat.freenode.net/?channels=afrimesh || For IRC client configuration, use: irc.freenode.net, #afrimesh
|-
| Wiki - Main || http://wirelessafrica.meraka.org.za/wiki/index.php?title=WISP_in_a_Box_Development ||
|-
| Wiki - WispBox || http://code.google.com/p/wispinabox/w || Content hosted here still needs to be migrated to the main wiki
|-
| Wiki - Afrimesh || http://code.google.com/p/afrimesh/w || Afrimesh services multiple projects and as such maintains a separate wiki
|-
| Version Control - WispBox || http://code.google.com/p/wispinabox/source/checkout ||
|-
| Version Control - Afrimesh  || http://code.google.com/p/afrimesh/source/checkout ||
|-
| Package Repository || https://launchpad.net/~wispinabox ||
|-
| Build Server || TO COME ||
|-
|}


=== Setup Checklist ===
=== Setup Checklist ===
Line 89: Line 58:
| Configure Afrimesh Development Environment ||
| Configure Afrimesh Development Environment ||
Read: http://code.google.com/p/afrimesh/wiki/DevelopmentEnvironment
Read: http://code.google.com/p/afrimesh/wiki/DevelopmentEnvironment
|-
|}
=== Core Project Infrastructure ===


{| cellpadding="5" cellspacing="0" border="1"
! Resource !! URL !! Description
|-
| Mailing List - User Support || TO COME ||  Users, Contributors and Developers should subscribe to and follow this list.
|-
| Mailing List - Development || TO COME || Contributors and Developers should subscribe to and follow this list.
|-
| Issue tracker || http://code.google.com/p/wispinabox/issues/list || Bug reports and feature requests submitted to the Issue tracker are more likely to receive attention!
|-
| IRC || http://webchat.freenode.net/?channels=afrimesh || For IRC client configuration, use: irc.freenode.net, #afrimesh
|-
| Wiki - Main || http://wirelessafrica.meraka.org.za/wiki/index.php?title=WISP_in_a_Box_Development ||
|-
| Wiki - WispBox || http://code.google.com/p/wispinabox/w || Content hosted here still needs to be migrated to the main wiki
|-
| Wiki - Afrimesh || http://code.google.com/p/afrimesh/w || Afrimesh services multiple projects and as such maintains a separate wiki
|-
| Version Control - WispBox || http://code.google.com/p/wispinabox/source/checkout ||
|-
| Version Control - Afrimesh  || http://code.google.com/p/afrimesh/source/checkout ||
|-
| Package Repository || https://launchpad.net/~wispinabox ||
|-
| Build Server || TO COME ||
|-
|-
|}
|}
 
 






----
----

Revision as of 15:33, 4 August 2009


Developer Guide

WISP in a Box development is organized as an Open-Source or Libré software project.

In order to understand what this means and be able to work together in this way we need to agree on the definitions of the following five words:

  • Upstream - We use the term Upstream to refer to projects which our project makes use of. For example net-snmp and afrimesh are both upstream projects of the WispBox.
  • Downstream - Downstream are projects who use our code. For example, if someone were to create a linux distribution which focused on adding VOIP services to a WISP and which used WispBox as a dependency then that project would be considered to be downstream from our project.
The Libré Software Development Cycle
  • Users - We live and breathe for these special individuals as, without them, none of us would have paying jobs. Their interaction with the project is usually in the form of downloading and using our software, reporting bugs on the mailing list or bug tracker and asking for more features.
  • Contributors - Contributors are usually also users but they have both the ability and the desire to contribute code patches, documentation and generally contribute their expertise to project development discussions. Often, future developers on a project are drawn from the pool of contributers. Contributors are a necessary condition to the long-term sustainability of Libré projects. For this reason all new developers are first required to spend some time as a contributor to the project before they are "handed the keys to the house" and gain full access to the project infrastructure.
  • Developers - Developers perform the bulk of the development work and have full access to the project source repositories, servers and other infrastructure.


Upstream Projects

WISP in a Box has many upstream dependencies. The following list are the ones you will see referred to most commonly:

  • Afrimesh - the WispBox component integration toolkit and the core management dashboard.
  • Ubuntu Customization Kit - A set of scripts used by our build system to generate the WispBox livecd images.

Setup Checklist

Task Description
Development Workstation
  • x86
  • FreeBSD or Ubuntu
  • 1x ??? USB WiFi network card
WISP Server
  • AMD ION
  • 1GB RAM
  • 80GB Hard Drive
  • D-Link USB Ethernet
Development Mesh Node
  • D-Link DIR-300
Deployment Mesh Node
  • HPN
Subscribe to mailing lists TODO
Join IRC Install an IRC client and configure it for irc.freenode.net, #afrimesh (ask George if you need help)
Configure WispBox Development Environment

Read: http://code.google.com/p/wispinabox/wiki/DevelopmentEnvironment

Configure Afrimesh Development Environment

Read: http://code.google.com/p/afrimesh/wiki/DevelopmentEnvironment


Core Project Infrastructure

Resource URL Description
Mailing List - User Support TO COME Users, Contributors and Developers should subscribe to and follow this list.
Mailing List - Development TO COME Contributors and Developers should subscribe to and follow this list.
Issue tracker http://code.google.com/p/wispinabox/issues/list Bug reports and feature requests submitted to the Issue tracker are more likely to receive attention!
IRC http://webchat.freenode.net/?channels=afrimesh For IRC client configuration, use: irc.freenode.net, #afrimesh
Wiki - Main http://wirelessafrica.meraka.org.za/wiki/index.php?title=WISP_in_a_Box_Development
Wiki - WispBox http://code.google.com/p/wispinabox/w Content hosted here still needs to be migrated to the main wiki
Wiki - Afrimesh http://code.google.com/p/afrimesh/w Afrimesh services multiple projects and as such maintains a separate wiki
Version Control - WispBox http://code.google.com/p/wispinabox/source/checkout
Version Control - Afrimesh http://code.google.com/p/afrimesh/source/checkout
Package Repository https://launchpad.net/~wispinabox
Build Server TO COME