diff options
Diffstat (limited to 'doc/rst/getting_started_with_nss/index.rst')
-rw-r--r-- | doc/rst/getting_started_with_nss/index.rst | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/doc/rst/getting_started_with_nss/index.rst b/doc/rst/getting_started_with_nss/index.rst new file mode 100644 index 000000000..4f9ae3540 --- /dev/null +++ b/doc/rst/getting_started_with_nss/index.rst @@ -0,0 +1,106 @@ +.. _mozilla_projects_nss_getting_started_with_nss: + +Getting Started With NSS +======================== + +.. _how_to_get_involved_with_nss: + +`How to get involved with NSS <#how_to_get_involved_with_nss>`__ +---------------------------------------------------------------- + +.. container:: + + | Network Security Services (NSS) is a base library for cryptographic algorithms and secure + network protocols used by Mozilla software. + | Would you like to get involved and help us to improve the core security of Mozilla Firefox and + other applications that make use of NSS? We are looking forward to your contributions! + | We have a large list of tasks waiting for attention, and we are happy to assist you in + identifying areas that match your interest or skills. You can find us on `Mozilla + IRC <https://developer.mozilla.org/en-US/docs/Mozilla/QA/Getting_Started_with_IRC>`__ in + channel `#nss <irc://irc.mozilla.org/#nss>`__ or you could ask your questions on the + `mozilla.dev.tech.crypto <https://lists.mozilla.org/listinfo/dev-tech-crypto/>`__ newsgroup. + + The NSS library and its supporting command line tools are written in the C programming language. + Its build system and the automated tests are based on makefiles and bash scripts. + + Over time, many documents have been produced that describe various aspects of NSS. You can start + with: + + - the current `primary NSS documentation page <https://developer.mozilla.org/en-US/docs/NSS>`__ + from which we link to other documentation. + - a `General Overview <https://developer.mozilla.org/en-US/docs/Overview_of_NSS>`__ of the + applications that use NSS and the features it provides. + - a high level :ref:`mozilla_projects_nss_an_overview_of_nss_internals`. + - learn about getting the :ref:`mozilla_projects_nss_nss_sources_building_testing` + - `Old documentation <https://www-archive.mozilla.org/projects/security/pki/nss/>`__ that is on + the archived mozilla.org website. + + (Unfortunately the NSS project doesn't have a technical writer at this time, so our documentation + is not as organized as we would like it to be. You could contribute by organizing it in a better + way.) + +.. _nss_sample_code: + +`NSS Sample Code <#nss_sample_code>`__ +-------------------------------------- + +.. container:: + + A good place to start learning how to write NSS applications are the command line tools that are + maintained by the NSS developers. You can find them in subdirectory mozilla/security/nss/cmd + + Or have a look at some basic :ref:`mozilla_projects_nss_nss_sample_code`. + + A new set of samples is currently under development and review, see `Create new NSS + samples <https://bugzilla.mozilla.org/show_bug.cgi?id=490238>`__. + + You are welcome to download the samples via: hg clone https://hg.mozilla.org/projects/nss; cd + nss; hg update SAMPLES_BRANCH + +.. _how_to_contribute: + +`How to Contribute <#how_to_contribute>`__ +------------------------------------------ + +.. container:: + + ... (this section is still under construction, but there are many contribution opportunities) + + Start by opening a bugzilla account at `bugzilla.mozilla.org <https://bugzilla.mozilla.org/>`__ + if you don't have one. + + NSS :: Libraries component for issues you'd like to work on. We maintain a list of `NSS bugs + marked with a keyword "good-first-bug" that you can + view <https://bugzilla.mozilla.org/buglist.cgi?keywords=good-first-bug%2C%20&keywords_type=allwords&classification=Components&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Libraries&product=NSS>`__. + +.. _creating_your_patch: + +`Creating your Patch <#creating_your_patch>`__ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. container:: + + Seee our section on :ref:`mozilla_projects_nss_nss_sources_building_testing` to get started + making your patch. When you're satisfied with it, you'll need code review. + +.. _code_review: + +`Code Review <#code_review>`__ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. container:: + + `http://phabricator.services.mozilla.com/ <https://phabricator.services.mozilla.com>`__ is our + code review tool, which uses your Bugzilla account. Use our `Phabricator user instructions to + upload patches for + review <https://moz-conduit.readthedocs.io/en/latest/phabricator-user.html>`__. + + Some items that will be evaluated during code review are `listed in checklist form on + Github. <https://github.com/mozilla/nss-tools/blob/master/nss-code-review-checklist.yaml>`__ + + After passing review, your patch can be landed by a member of the NSS team. You can find us on + `Mozilla IRC <https://developer.mozilla.org/en-US/docs/Mozilla/QA/Getting_Started_with_IRC>`__ in + channel `#nss <irc://irc.mozilla.org/#nss>`__. + + Note that we don't land code that isn't both reviewed and tested. Code only works when it has + tests, and tests only work when they're part of the automation.
\ No newline at end of file |