Get In Touch: Difference between revisions
imported>Ixxie Added the #nixos-wiki channel to chat listing. |
imported>Ixxie m Fixed headers to standard format. |
||
Line 1: | Line 1: | ||
This article describes how you can get involved in the NixOS ecosystem. Besides this wiki entry there is also the [https://nixos.org/nixos/community.html official Community Information Website of NixOS]. | This article describes how you can get involved in the NixOS ecosystem. Besides this wiki entry there is also the [https://nixos.org/nixos/community.html official Community Information Website of NixOS]. | ||
= Working on the Nixpkgs repository = | == Working on the Nixpkgs repository == | ||
Development in NixOS primarily driven by the work in [https://github.com/nixos/nixpkgs nixpkgs on github]. This repository contains both all packages available in your NixOS channel and all the options you can use for configuring your system with your <code>configuration.nix</code>. To get your text editor to recognize Nix expressions, consider installing a Nix [https://github.com/nixos-users/wiki/wiki/Editor-Modes editor mode]. | Development in NixOS primarily driven by the work in [https://github.com/nixos/nixpkgs nixpkgs on github]. This repository contains both all packages available in your NixOS channel and all the options you can use for configuring your system with your <code>configuration.nix</code>. To get your text editor to recognize Nix expressions, consider installing a Nix [https://github.com/nixos-users/wiki/wiki/Editor-Modes editor mode]. | ||
== Report issues == | === Report issues === | ||
Any issue can be reported in the nixpkgs issue-tracker [https://github.com/nixos/nixpkgs/issues on github]. Keep in mind that all work on nixpkgs is being done by volunteers and you cannot expect a quick response and solution for all problems you may face. In general Pull-Requests have a much shorter round-trip-time. | Any issue can be reported in the nixpkgs issue-tracker [https://github.com/nixos/nixpkgs/issues on github]. Keep in mind that all work on nixpkgs is being done by volunteers and you cannot expect a quick response and solution for all problems you may face. In general Pull-Requests have a much shorter round-trip-time. | ||
== Create pull requests == | === Create pull requests === | ||
If you want to see your package being provided by a channel, creating an issue will most likely not enough. It is up to you to create a [[Contributing to Nixpkgs|nix package description]] in Nixpkgs and create a pull request in the Nixpkgs repository. Pull requests are a way to tell a github project that you've created some changes, which maintainers can easily review, comment on and, and finally merge into the repository. | If you want to see your package being provided by a channel, creating an issue will most likely not enough. It is up to you to create a [[Contributing to Nixpkgs|nix package description]] in Nixpkgs and create a pull request in the Nixpkgs repository. Pull requests are a way to tell a github project that you've created some changes, which maintainers can easily review, comment on and, and finally merge into the repository. | ||
Line 15: | Line 15: | ||
Here's how to create a pull request on GitHub: | Here's how to create a pull request on GitHub: | ||
=== Fork Nixpkgs on Github === | ==== Fork Nixpkgs on Github ==== | ||
Create a GitHub account and fork nixpkgs/nixos/... repository. | Create a GitHub account and fork nixpkgs/nixos/... repository. | ||
=== Add a remote === | ==== Add a remote ==== | ||
On your host, create a new remote location: | On your host, create a new remote location: | ||
Line 28: | Line 28: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Commit your change locally === | ==== Commit your change locally ==== | ||
Commit your change to your local clone of the repository: | Commit your change to your local clone of the repository: | ||
Line 35: | Line 35: | ||
git commit | git commit | ||
=== Check status === | ==== Check status ==== | ||
Verify everything is ok - no unexpected dangling files git does not know about yet: | Verify everything is ok - no unexpected dangling files git does not know about yet: | ||
Line 41: | Line 41: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Push to your remote repository === | ==== Push to your remote repository ==== | ||
Submitting your change, push to your repository: | Submitting your change, push to your repository: | ||
Line 56: | Line 56: | ||
You can always switch back to master by <code>git checkout master</code>. | You can always switch back to master by <code>git checkout master</code>. | ||
=== Create a pull request on GitHub === | ==== Create a pull request on GitHub ==== | ||
Go to [https://github.com/nixos/nixpkgs the Nixpkgs repository] and push the ''create pull request'' button. Add a description of your work and submit. | Go to [https://github.com/nixos/nixpkgs the Nixpkgs repository] and push the ''create pull request'' button. Add a description of your work and submit. | ||
== Becoming a Nixpkgs maintainer == | === Becoming a Nixpkgs maintainer === | ||
There are two types of maintainer: Members of the NixOS organization and package/module maintainer. | There are two types of maintainer: Members of the NixOS organization and package/module maintainer. | ||
Line 80: | Line 80: | ||
There can be multiple maintainers per package. Maintainers will receive emails from [[Hydra|Hydra]] when package builds enters a failed state. They do not have special privileges as everybody can suggest updates and modifications to any package. However they might be consulted by NixOS members for testing and as a domain experts, when somebody else make a change to a package. | There can be multiple maintainers per package. Maintainers will receive emails from [[Hydra|Hydra]] when package builds enters a failed state. They do not have special privileges as everybody can suggest updates and modifications to any package. However they might be consulted by NixOS members for testing and as a domain experts, when somebody else make a change to a package. | ||
= Communication = | == Communication == | ||
== Join the mailinglist == | === Join the mailinglist === | ||
There is currently only one official Mailinglist related to NixOS, [https://groups.google.com/forum/#!forum/nix-devel nix-devel]. You don't need to be a developer to use nix-devel. | There is currently only one official Mailinglist related to NixOS, [https://groups.google.com/forum/#!forum/nix-devel nix-devel]. You don't need to be a developer to use nix-devel. | ||
== Join the chat == | === Join the chat === | ||
The official NixOS channel resides on [https://webchat.freenode.net/ irc.freenode.org] in <code>#nixos</code> ([https://botbot.me/freenode/nixos/ searchable Log]) and the wiki channel is at <code>#nixos-wiki</code>. | The official NixOS channel resides on [https://webchat.freenode.net/ irc.freenode.org] in <code>#nixos</code> ([https://botbot.me/freenode/nixos/ searchable Log]) and the wiki channel is at <code>#nixos-wiki</code>. | ||
Line 92: | Line 92: | ||
In addition to that there is also the unofficial [https://riot.im/app/#/room/#nix:matrix.org NixOS matrix channel] | In addition to that there is also the unofficial [https://riot.im/app/#/room/#nix:matrix.org NixOS matrix channel] | ||
== Join the forums == | === Join the forums === | ||
Check out the [https://www.reddit.com/r/NixOS/ NixOS Reddit channel] and help answering questions on Stack Overflow for [https://stackoverflow.com/questions/tagged/nixos NixOS] and [https://stackoverflow.com/questions/tagged/nix nix]. | Check out the [https://www.reddit.com/r/NixOS/ NixOS Reddit channel] and help answering questions on Stack Overflow for [https://stackoverflow.com/questions/tagged/nixos NixOS] and [https://stackoverflow.com/questions/tagged/nix nix]. |