Welcome to NethForge

NethForge is the place where you can find extra modules built by the community for NethServer.

List of available modules

Enable NethForge repository

NethForge repository is part of the default NethServer installation since 6.8. To configure it on previous releases, add it from the Software Center page, or type the following commands:

yum install nethserver-nethforge-release
rpm --import  /etc/pki/rpm-gpg/RPM-GPG-KEY-NETHFORGE-6

The package will configure two new repositories:
  • nethforge
    enabled by default, package in this repository will can be installed using the web interface
  • nethforge-testing
    disabled by default, packages in this repository should be installed using the command line

Install a module

From nethforge:
  • Open the server-manager web interface and go to Package manager page. You should see a new category on the top called NethForge.
  • Simply choose a package and install it!

From nethforge-testing:

  • Issue the following command:
    yum install --enablerepo=nethforge-testing package-name
    

If the contributor followed the guidelines, you don't need extra commands after installation, since the 'signal-event module_name-update' will have expanded and restarted required services.

But in certain cases you may have to change module options and then you will have to do a 'signal-event module_name-save' after you have modified that options with DB commands.

Create a new module

Summary of the current process:
  • the contributor develops the package(s) inside his own machine
  • when the package is ready for QA, (s)he should raise a request to the ML (or IRC channel)
  • a repository maintainer (Packager) will take care of building the RPM and release it to the nethforge-testing repository
  • as soon as the package is verified, a repo maintainer will publish the rpm to the nethforge repository
Everyone who wants to contribute a new module, should create an account. To ease this step here is a list of supported OpenID providers with corresponding URL:

Insert the URL inside the field OpenID URL and, if needed, substitute USER with your username.

When you create a new a module:
  • make sure the module git repository is publicly available
  • file a new Feature issue for the new module, creating a new category for it
  • create a wiki page which describes the module, based on Module template.

All packages should follow the well-known RPM guidelines, from the Developer manual.

Quality Assurance (QA)

When a package is ready to be tested, please announce it to the mailing list (or IRC) and a developer will take care to publish the RPM (and all dependencies) to nethforge-testing repository.

Related issue should be placed on QA state without an assignee. Then, any other community member can assign the issue to itself and test the package.

If all listed tests are successfully completed, the issue state can be changed to VERIFIED, if some tests fail the issue state should be set to TRIAGED.

When the issue is VERIFIED, the developer will move the package to official nethforge repository.

The full development process is documented on the Developer manual.