NetkitDevelopers

From Netkit Wiki
Jump to: navigation, search

Contributors & Developers Area

We always strive to guarantee that each published Netkit release and lab is prepared with the highest quality standards. This makes Netkit development, although entertaining and involving, a considerably time-consuming process. While having such a useful and broadly-used tool makes the effort definitely worth, we believe that an open contribution and collaboration policy is key to boost the development and to ignite further improvements, as also confirmed by several reports from our users. And, no, you do not have to be an experienced C programmer to be able to send relevant contributions.

Follow the blocks!
For the aforementioned reasons, we decided to make "collaboration entry points" more visible to prospective contributors and developers. If you happen to fall in the category, look for the colored blocks icon scattered through the web site: it marks links, site areas, and resources that are meant to support you in creating your contribution and accommodate it once you believe it is ready for publication.

How to Contribute. I mean, really.

The actions to be undertaken depend on the kind of contribution you would like to bring:

  • You want to actively participate in the development of Netkit:
  1. Welcome on board! Starting from May 2011 we have moved to git for Netkit development. A very good introduction for git newcomers can be found here.
  2. Create an account on Github or log in using your existing account.
  3. Search for one of the following repositories: netkit-core, netkit-uml-kernel, netkit-uml-filesystem: these correspond to the Netkit components.
  4. Fork the repository you are interested in developing on. This creates a read-write 1:1 copy of the official Netkit repository for your own use.
  5. Clone the forked repository on your workstation and start developing freely. You can safely create branches and commits as you like: these changes will only affect your fork of the original Netkit repository.
  6. Once your contribution is reasonably stable, submit a pull request to the official Netkit repository you forked from.
  7. We will consider merging your contribution upstream, thus becoming part of the official distribution.


  • You want to contribute a Netkit lab:
  1. Check the instructions for lab contributors.
  2. Get the Contributor's Pack: this provides you with templates both for the lab and for the slides.
  3. Create your Netkit lab starting from the template. Howtos can be found in this introductory material or in this nice tutorial, as well as in the documentation shipped with the Netkit packages and also published here. In case you still do not feel much comfortable with creating labs, you can proceed by applying variations to an existing Netkit lab (lots are available from the Official Labs page). Please give proper credit if you choose this option.
  4. Prepare slides for your lab following the template as closely as possible. Instructions on preparing the slides are contained in the template itself (just open it as if you had to edit it as a standard presentation).
  5. Pack and submit all the material to our mail address on the Contacts page.
  6. We will inspect your lab, assign it a status and, unless basic elements are missing or improperly prepared, publish it on the Contributed Labs page.


  • You want to contribute new slides:
  1. Check the instructions for lab contributors.
  2. Get the slides template from the Contributor's Pack.
  3. Prepare the slides following the template as closely as possible. Instructions on preparing the slides are contained in the template itself (just open it as if you had to edit it as a standard presentation).
  4. Send us your material using the mail address on the Contacts page.
  5. We will inspect the slides, assign them a status and, unless evidently inappropriate, publish them on the Contributed Labs page.


  • You want to contribute a translation of existing slides:
  1. Contact us using the mail address on the Contacts page and ask us for a PPT version of the slides you are interested in translating.
  2. Carry out the translation while matching as closely as possible the original contents. Put your name among the authors but retain all copyright statements and credits coming from the original version.
  3. Send the slides back to us.
  4. We will inspect the slides, assign them a status and, unless evidently inappropriate, publish them on the Contributed Labs page.


  • You want to contribute...
    • ...a specially packaged Netkit release (e.g., a live CD/DVD), or
    • ...a new Netkit-related tool (e.g., a GUI), or
    • ...an alternative version of an existing Netkit component (e.g., a filesystem image):
  1. Send us your contribution, together with a brief description, using the mail address on the Contacts page.
  2. We will consider the material for publication on the Contributed Downloads page. Depending on the size of the contributed material, we will decide whether or not to host it on our server.


  • You want to notify us about the existence of an additional Netkit-related tool, project, or lab:
  1. Tell us using the mail address on the Contacts page.
  2. We will consider your reference for publications on the External Links page.


  • You want to report successful usage of Netkit in a particular context:
  1. Tell us using the mail address on the Contacts page. Don't be shy: we are always very happy to receive these reports!
  2. We will consider publication of an entry in the Success Stories page.
Personal tools