Skip to content

Getting Help and Community

Overview

Official Nix / NixOS support and discussion live on Discourse (async forum), the Matrix space (real-time chat), and GitHub (issues and PRs). The community page is the index of moderated spaces, teams, calendars, and meetups. This wiki synthesizes manuals and patterns; it is not live support—search manuals and prior threads before posting.

Details

Read first

Before opening a thread or chat:

  1. Manuals and search.nixos.org for your channel or flake pin — see Reading manuals and search.
  2. Common failure modes — FAQ: common errors and Troubleshooting.
  3. Discourse search (and Matrix room history if you already chat there) for the same error string or option name.

Where to go

Channel Use for Prefer when
Discourse (discourse.nixos.org) Help questions, longer debugging, design discussion, announcements You want searchable answers, can wait hours–days, or need a durable thread
Matrix (#space:nixos.org) Real-time help, development chat, off-topic Quick clarification; room list and culture live under the space linked from the community page—do not invent room names
GitHub issues (NixOS org) Bugs and actionable defects in a specific repo Package/module bug → nixpkgs; Nix CLI/evaluator → nix; include a minimal repro
RFCs (NixOS/rfcs) Substantial design that needs ecosystem consensus Large language/Nixpkgs/OS interface changes — see RFC process
This wiki Vocabulary, architecture, cross-links Learning structure; not incident support

Discourse categories change over time; useful entry points include Help (/c/learn), Development (subcategories such as Nix and Nixpkgs Architecture), Announcements, Guides, and language-specific Help subforums. Pick the closest category and search it before posting.

Official spaces on the community page are moderated by the NixOS Moderation Team. Report abuse to moderation@nixos.org. Unofficial spaces (meetups, third-party chats) may use different rules—the community page labels them separately.

Governance context (foundation, boards, forks): NixOS Foundation, Forks and governance splits.

Norms for asking well

  • State the goal in one sentence, then the failure (exact error text).
  • Give versions: nix --version; on NixOS, the release or generation; whether you use flakes or channels/NIX_PATH.
  • Minimal reproduction: smallest flake.nix / configuration.nix / expression that fails—not a full private config.
  • For evaluation failures, retry with --show-trace and paste the relevant tail (not megabytes of logs).
  • Redact secrets: tokens, private keys, sops/agenix material, personal hostnames if needed.
  • Prefer Discourse for anything others will search for later; use Matrix for short back-and-forth, then summarize the fix on Discourse if it is generally useful.

Examples

Checklist before posting (Discourse Help)

1. Searched Discourse + manuals for the error / option name
2. nix --version  →  …
3. NixOS release or flake inputs (nixpkgs rev / channel)  →  …
4. Flakes? yes/no
5. Command that fails (exact)
6. Minimal config / expression (5–20 lines)
7. Error output (trimmed); used --show-trace if eval failed
8. No secrets in the paste

Choosing the venue (examples)

  • services.nginx option missing after upgrade” → manuals/search first, then Discourse Help (or nixpkgs issue if you confirmed a packaging/module regression).
  • “How do I structure a flake with multiple hosts?” → Discourse or Matrix; wiki config-repo patterns for synthesis.
  • “Package foo fails to build on x86_64-linux” → nixpkgs issue with nix-build/nix build log and platform.
  • “Proposal: change default NixOS release schedule” → RFC process, not a Help thread alone.

References

See also