2. Hoe bij te dragen

Bijdragen aan het systeem vallen over het algemeen in één of meer van de volgende 5 categoriën:

2.1. Foutrapportages en algemeen commentaar

Een idee of suggestie van algemene technische aard dient naar FreeBSD technische discussie mailinglijst gemaild te worden. Evenzo kunnen mensen die in dit soort dingen geïnteresseerd zijn (en een tolerantie voor grote hoeveelheden mail hebben!) zich abonneren op de FreeBSD technische discussie mailinglijst. Zie Het FreeBSD Handboek voor meer informatie over deze en andere mailinglijsten.

Als u een bug vindt of een specifieke verandering opstuurt, gebruik dan alstublieft het programma send-pr(1) of het webgebaseerde equivalent om het te rapporteren. Probeer om elk veld van het bugrapport in te vullen. Voeg patches direct bij het rapport tenzij ze 65kB overschrijden. Als de patch geschikt is om op de broncodeboom te worden toegepast, vermeld dan [PATCH] in het overzicht van het rapport. Wanneer u patches bijvoegt, gebruik dan geen knippen-en-plakken omdat knippen-en-plakken tabs in spaties omzet en de patches onbruikbaar maakt. Overweeg wanneer patches veel groter zijn dan 20 kB om ze te comprimeren (bijvoorbeeld met gzip(1) of bzip2(1)) en uuencode(1) te gebruiken om hun gecomprimeerde vorm in uw probleemrapport op te nemen.

Na het opsturen van een rapport dient u een bevestiging met daarbij een volgnummer te krijgen. Bewaar dit volgnummer zodat u ons op de hoogte kunt houden met details over het probleem door mail te sturen naar . Gebruik het nummer als het berichtonderwerp, bijvoorbeeld "Re: kern/3377". Aanvullende informatie voor elk foutrapport dient op deze manier opgestuurd te worden.

Als u geen bevestiging ontvangt binnen een redelijke tijd (3 dagen tot een week, afhankelijk van uw emailverbinding) of als u, om enige reden, het commando send-pr(1) niet kunt gebruiken, dan kunt u iemand vragen om het voor u op te sturen door mail te sturen naar de FreeBSD problem reports mailinglijst.

Zie ook dit artikel over het schrijven van goede probleemrapporten.

2.2. Veranderingen aan de documentatie

Veranderingen aan de documentatie worden overzien door de FreeBSD documentatieproject mailinglijst. Bekijk de FreeBSD Documentation Primer voor volledige instructies. Stuur bijdragen en veranderingen (zelfs kleine zijn welkom!) door send-pr(1) te gebruiken zoals beschreven is in Foutrapportages en algemeen commentaar.

2.3. Veranderingen aan bestaande broncode

Een toevoeging of verandering aan de bestaande broncode is een iets lastigere zaak en hangt in grote mate af van hoe ver u achterloopt met de huidige toestand van FreeBSD-ontwikkelingen. Er is een speciale doorgaande uitgave van FreeBSD die bekend staat als “FreeBSD-CURRENT” die op verscheidene manieren beschikbaar wordt gesteld voor het gemak van ontwikkelaars die actief aan het systeem werken. Zie Het FreeBSD Handboek voor meer informatie over het verkrijgen en gebruiken van FreeBSD-CURRENT.

Het werken met oudere broncode betekent helaas dat uw veranderingen soms te verouderd of te ver afgedwaald zijn om eenvoudig in FreeBSD gerëintegreerd te worden. De kansen hierop kunnen enigszins geminimaliseerd worden door een abonnement te nemen op de FreeBSD aankondigingen mailinglijst en de FreeBSD-CURRENT mailinglijst lijsten, waar discussies over de huidige toestand van het systeem plaatsvinden.

Aannemende dat u in staat bent om redelijk recente broncode veilig te stellen om uw veranderingen op te baseren, is de volgende stap het produceren van een verzameling diffs om naar de onderhoudsmensen van FreeBSD te sturen. Dit wordt gedaan met het commando diff(1).

Het geprefereerde diff(1)-formaat voor het opsturen van patches is het verenigde uitvoerformaat gegenereerd door diff -u.

% diff -u oudbestand nieuwbestand

of

% diff -u -r -N oudemap nieuwemap

zouden een verzameling van verenigde diffs genereren voor het gegeven bronbestand of maphiërarchie.

Zie diff(1) voor meer details.

Als u eenmaal een verzameling aan diffs heeft (welke u kunt testen met het commando patch(1)), dient u ze op te sturen voor opname in FreeBSD. Gebruik het programma send-pr(1) zoals beschreven in Foutrapportages en algemeen commentaar. Stuur de diffs niet alleen naar de FreeBSD technische discussie mailinglijst op omdat ze dan verloren raken! We stellen uw toezending erg op prijs (dit is een vrijwilligersproject!); omdat we het druk hebben kan het zijn dat we het niet direct kunnen behandelen, maar het blijft in de PR-database totdat we het doen. Geef uw toezending aan door [PATCH] in het overzicht van het rapport op te nemen.

Als u het geschikt acht (bijvoorbeeld als u bestanden toegevoegd, verwijderd, of hernoemd heeft), bundelt u uw veranderingen in een tar-bestand en draait u het programma uuencode(1) erop. Archieven die met shar(1) zijn aangemaakt zijn ook welkom.

Als uw verandering mogelijk gevoelig van aard is, bijvoorbeeld als u onzeker bent over copyright-zaken die de verdere distributie ervan dicteren, dan dient u het direct naar FreeBSD core team te sturen in plaats van het met send-pr(1) op te sturen. Het FreeBSD core team bereikt een veel kleinere groep mensen die veel dagelijks werk op FreeBSD doen. Merk op dat deze groep het ook erg druk heeft, daarom dient u alleen mail naar hen te sturen als dit echt noodzakelijk is.

Bekijk alstublieft intro(9) en style(9) voor wat informatie over de codeerstijl. We zouden het op prijs stellen als u op zijn minst op de hoogte bent van deze informatie voordat u code opstuurt.

2.4. Nieuwe code of grote pakketten met toegevoegde waarde

In het geval van een significante bijdrage van een grote bijdrage aan werk, of van een belangrijke nieuwe mogelijkheid aan FreeBSD, is het bijna altijd nodig om de veranderingen als uuencoded tar-bestanden te versturen of ze naar een web- of FTP-site up te loaden zodat andere mensen ze kunnen benaderen. Als u geen toegang heeft tot een web- of FTP-site, vraag dan een geschikte FreeBSD-mailinglijst om iemand de veranderingen voor u te laten hosten.

Bij het werken met grote hoeveelheden code komt het gevoelige onderwerp van copyright ook altijd naar voren. Acceptabele copyrights voor code voor opname in FreeBSD zijn:

  1. Het BSD-copyright. Dit copyright wordt het meeste verkozen wegens zijn natuur van “geen voorwaarden” en de algemene aantrekkelijkheid voor commerciële ondernemingen. Ver van het ontmoedigen van dit soort commercieel gebruik, moedigt het FreeBSD Project zulke participatie door commerciële interesses actief aan die uiteindelijk geneigd kunnen zijn om zelf iets in FreeBSD te investeren.

  2. De GNU General Public License, of “GPL”. Deze licentie is niet zo populair bij ons wegens de extra hoeveelheid moeite die gevraagd wordt van iedereen die de code voor commerciële doeleinden gebruikt, maar vanwege de grote hoeveelheid aan ge-GPL-de code die we momenteel nodig hebben (compiler, assembler, tekstopmaker, enz.) zou het dom zijn om aanvullende bijdragen onder deze licentie te verwerpen. Code onder de GPL gaat ook naar een ander deel van de boom, namelijk /sys/gnu of /usr/src/gnu, en is daardoor eenvoudig te herkennen voor iedereen voor wie de GPL problemen geeft.

Bijdragen die onder een ander soort copyright vallen moeten zorgvuldig worden herzien voordat hun opname in FreeBSD wordt overwogen. Bijdragen waarvoor nogal beperkende commerciële copyrights gelden worden over het algemeen verworpen, alhoewel de auteurs altijd worden aangemoedigd om zulke veranderingen via hun eigen kanalen beschikbaar te maken.

Om een copyright in “BSD-stijl” op uw werk te plaatsen, dient u de volgende tekst aan het uiterste begin van elk broncodebestand te plaatsen dat u wilt beschermen, en daarbij de tekst tussen de %% door de juiste informatie te vervangen:

Copyright (c) %%juiste_jaren_hier%%
        %%uw_naam_hier%%, %%uw_staat%%  %%uw_postcode%%.
	All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer as
   the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY %%uw_naam_hier%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%uw_naam_hier%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

        $Id$

Voor uw gemak staat een kopie van deze tekst in /usr/share/examples/etc/bsd-style-copyright.

2.5. Geld, hardware, of Internettoegang

We accepteren altijd graag donaties om het FreeBSD Project verder te verspreiden en in een vrijwilligersonderneming zoals het onze kan een klein beetje een groot verschil maken! Hardwaredonaties zijn ook erg belangrijk om onze lijst van ondersteunde randapparatuur uit te breiden aangezien ons het over het algemeen aan de middelen ontbreekt om zelf zulke dingen te kopen.

2.5.1. Geld doneren

De FreeBSD Foundation is een non-profit, belastinguitgesloten stichting die opgericht is om de doelen van het FreeBSD Project verder te verspreiden. Als een 501(c)3-entiteit is de Foundation over het algemeen uitgesloten van inkomstenbelasting van de overheid van de Verenigde Staten alsook van inkomstenbelasting van de staat Colorado. Donaties aan een entiteit die van belasting is uitgesloten zijn vaak aftrekbaar van het belastbaar overheidsinkomen.

Donaties kunnen als check verstuurd worden aan:


    The FreeBSD Foundation
    P.O. Box 20247
    Boulder,
    CO 80308
    USA
  



De FreeBSD Foundation is nu in staat om donaties via het web met PayPal te ontvangen. Om een donatie te maken bezoekt u de website van de Foundation.

Meer informatie over de FreeBSD Foundation kan gevonden worden in The FreeBSD Foundation -- an Introduction. Om de Foundation per email te bereiken, schrijft u naar .

2.5.2. Hardware doneren

Het FreeBSD Project accepteert graag hardwaredonaties die het goed kan gebruiken. Als u geïnteresseerd bent in het doneren van hardware, neem dan contact op met het Donations Liaison Office.