Back to the contribution section index

How to contribute...

...code for the core

We are always happy when somebody contributes code for Nucleus. Keep in mind that Nucleus is Open Source (GPL), so if you contribute code, that code must also be licensed under the GPL.

Nucleus 3.x

For Nucleus 3.x we have no special preference for how you contribute your code. You can either give us a step by step explanation of the needed mods, or you can use the patch-program. (Please include the Nucleus version for which you created your mods in the info you give us)

Manual instructions

These are most often used, and are a collection of instructions like “in file.php around line xxx, find 'xxxxx' and change it by 'yyyyyy'”

CVS patch

To create a patch file, move to the root directory of the CVS checkout, and run the following command, where filename.diff is the name of the diff/patch file to produce.

cvs -z3 diff -u > filename.diff

Applying the patch is done by placing filename.diff in the root of the CVS checkout and then executing the following command:

patch -p0 < filename.diff

If you've been making fixes of your own, use:

patch -Np0 < filename.diff

Note that on Windows systems, the patch utility isn't pre-installed. You'll need to install Cygwin or similar to have it available.

Nucleus 5

For Nucleus 5 we will be using DARCS, so this is the preferred way to offer code.

Here is a short introduction:

  1. get the code from darcs:
    darcs get http://darcs-repo.doesnt.exist.yet/
  2. edit/add the files you need
  3. If you have added files use
    darcs add myfile

    to add it to darcs

  4. Record your changes:
    darcs record -m "your log message here"
  5. Send the patch. Either directly via darcs:
    darcs send

    , or by creating a darcs-patch:

    darcs send -o mymods.patch

    . The second version creates a file “mymods.patch” which you can mail/upload in the tracker/or place at the forum (TODO: we should have one single place to accept patches, either a mailinglist, or the bugtracker?). (we can then simply apply the patch using “darcs apply”).

Important

Since we want to created the most beatiful code on earth for Nucleus 5 we ask you to keep the following things in mind:

  • Work TestDriven! All code (if possible) requires UnitTests
  • Code must preferable follow our CodingGuidelines. Your submission will be handled faster and you will help us to keep consistency by following them
  • Refactoring: Refactor your code! This ensures that all code is Human Readable (and not only computer readable)

...plugins

Until we have a better place for plugins you can create a page at this wiki to publish your plugins.

...skins

If you want to contribute a skin please post a link to a downloadable version of the skin at the Skins-forum.

Please follow the Skin Submission Guidelines.

Once reviewed it will be added to the Skins Repository.

...documentation

TODO: What's the preferred method to contribute documentation? FAQ, tutorials, core-docs,….

...support

If you want to help other people (which is greatly appreciated!) you can do so by regularly visiting the forum. Also joining #nucleuscms on IRC is useful.

contributing/howto.txt · Last modified: 2006/07/05 13:03 (external edit)
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki