Resources: Difference between revisions

From NixOS Wiki
imported>Nix
update the guide. trim it to mostly active information.
remove search.nix.gsc.io since it is inaccessible and see https://discourse.nixos.org/t/is-channels-nix-gsc-io-active-or-is-there-an-alternative/32303/6
 
(46 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{Note|Reference documentation and learning materials for using Nix standalone are maintained at [https://nix.dev/ nix.dev].}}


This article is an overview of resources available both within the NixOS community Wiki and elsewhere. For communication channels, support and information of contributing, see the community menu.
This article is an overview of resources available both within the NixOS Wiki and elsewhere. For communication channels, support and information of contributing, see the community menu.


=== Wiki ===
=== Wiki - search by topic ===
While most people just search for the article they want to read, there is also a way to reach almost all arcticles via 2 to 3 clicks from the starting page via the main 5 topic categories:


The NixOS Wiki's core articles are divided into [[:Category:Resource|five categories]]. Each category link will list all pages in that category:
# [[:{{ns:14}}:Software|Software]]
# [[:{{ns:14}}:Hardware|Hardware]]
# [[:{{ns:14}}:Desktop|Desktop]] - how to setup PCs
# [[:{{ns:14}}:Server|Server]] - how to setup servers
# [[:{{ns:14}}:Community|Community]] - people, communication, work on NixOS
 
=== Wiki - search by article type ===
The NixOS Wiki's core articles are divided into [[:Category:Resource|five type categories]]. Each category link will list all pages in that category:
# [[:Category:Pedias|Pedias]], for encyclopedic description
# [[:Category:Pedias|Pedias]], for encyclopedic description
# [[:Category:Guide|Guides]], for broad hands-on understanding and connections to other learning resources
# [[:Category:Guide|Guides]], for broad hands-on understanding and connections to other learning resources
# [[:Category:Tutorial|Tutorials]], intended to teach a particular process or project
# [[:Category:Tutorial|Tutorials]], intended to teach a particular process or project
# [[:Category:Cookbook|Cookbooks]], collections of tips and tricks
# [[:Category:Cookbook|Cookbooks]], collections of tips and tricks
# [[:Category:Reference|Reference]], material for the nitty gritty details
# [[:Category:Reference|Reference]], full manuals and technical coverage
<br>
Pages are also organized by the six most prominent components of the [[Nix Ecosystem]] &mdash; NixOS, [[Nix package manager | Nix: the package manager]], [[Nix Expression Language | Nix: the language (Nix Expressions)]], Nixpkgs, NixOps and Hydra.
 
{| class="wikitable table" style="text-align: left; width: 100%"
Pages are also organized by the six most prominent components of the [[Nix Ecosystem]]: NixOS, [[Nix Package Manager | Nix the package manager]] and [[Nix Expression Language | Nix the language]] (usually covered together), Nixpkgs, NixOps and Hydra.
! NixOS Wiki Resources
 
{| class="table"
|+ NixOS Wiki Resources
|-
|-
! Category
! Category
! [[:Category:NixOS|NixOS]]
! [[:Category:NixOS|NixOS]]
! [[:Category:Nix|Nix]]
! [[:Category:Nix|Nix]]
! [[:Category:Nix Language|Nix Expressions]]
! [[:Category:Nixpkgs|Nixpkgs]]
! [[:Category:Nixpkgs|Nixpkgs]]
! [[:Category:NixOps|NixOps]]
! [[:Category:NixOps|NixOps]]
Line 26: Line 33:
! [[:Category:Pedias|Pedia]]
! [[:Category:Pedias|Pedia]]
| [[NixOS]]
| [[NixOS]]
| [[Nix Package Manager | Nix]]
| [[Nix package manager | Nix]]
| [[Nix Expression Language]]
| [[Nixpkgs]]
| [[Nixpkgs]]
| [[NixOps]]
| [[NixOps]]
Line 32: Line 40:
|-
|-
! [[:Category:Cookbook|Cookbook]]
! [[:Category:Cookbook|Cookbook]]
| [[NixOS Cookbook]]
| [[Cheatsheet|NixOS Cheatsheet]]
| [[Nix Cookbook]]
| [[Nix Cookbook]]
| [[Nixpkgs Cookbook]]
| [[Nix Language: Tips & Tricks]]
| [[NixOps Cookbook]]
| <!-- [[Nixpkgs Cookbook]] -->
| [[Hydra Cookbook]]
| <!-- [[NixOps Cookbook]] -->
|}
| <!-- [[Hydra Cookbook]] -->
 
|-
{| class="table"
|-
|+ NixOS Official Resources
! NixOS Official Resources
|-
|-
! Category
! Category
! NixOS
! NixOS
! Nix
! Nix
! Nix Expressions
! Nixpkgs
! Nixpkgs
! NixOps
! NixOps
Line 52: Line 61:
| [https://nixos.org/nixos/manual/ NixOS Manual]
| [https://nixos.org/nixos/manual/ NixOS Manual]
| [https://nixos.org/nix/manual/ Nix Manual]
| [https://nixos.org/nix/manual/ Nix Manual]
| [https://nixos.org/nix/manual/#chap-writing-nix-expressions Nix Manual:<br>Writing Nix Expressions]
| [https://nixos.org/manual/nixpkgs/stable/ Nixpkgs Manual]
| [https://nixos.org/manual/nixpkgs/stable/ Nixpkgs Manual]
| [https://nixops.readthedocs.io/en/latest/release-notes/index.html Nixops Manual]
| [https://nixops.readthedocs.io/en/latest/release-notes/index.html Nixops Manual]
Line 57: Line 67:
|}
|}


{{Note| [[Home Manager]] is also a major community project to make user environment management in NixOS easier. It is intended to replace much of what you would do with ''nix-env'', to reduce hard-to-track [https://en.wikipedia.org/wiki/Imperative_programming imperative] actions.<br>[https://nix-community.github.io/home-manager/ Official Home Manager manual]}}
Also, see [[Applications]] for an overview of tools in the extended ecosystem.
Also, see [[Applications]] for an overview of tools in the extended ecosystem.


=== More documentation ===
=== More documentation ===


* [https://nixos.org/nixos/nix-pills/index.html Nix Pills] - series of blog post about Nix/Nixpkgs internals
* [https://github.com/nix-community/awesome-nix awesome-nix] - community-curated list of Nix learning resources and tools
* [https://nix.dev/ nix.dev] - A Github-managed, community-built Nix developer's reference; organized by Domen Kožar


=== News ===
=== News ===


* [http://planet.nixos.org/ planet.nixos.org] - Aggregator for blogs related to nix/nixOS
* [http://planet.nixos.org/ planet.nixos.org] - Aggregator for blogs related to nix/nixOS
* [http://weekly.nixos.org/ NixOS Weekly] - A semi-regular Nix email newsletter. Averages about once every three weeks, actually.
* [https://discourse.nixos.org/ NixOS Discourse] - Official forum
* [https://discourse.nixos.org/ NixOS Discourse]
* [https://nixpkgs.news nixpkgs.news]


=== Interactive websites ===
=== Interactive websites ===
Line 74: Line 84:
* [https://search.nixos.org/packages NixOS Packages Search] - full-text search through all packages of NixOS
* [https://search.nixos.org/packages NixOS Packages Search] - full-text search through all packages of NixOS
* [https://search.nixos.org/options NixOS Option Search] - full-text search through all options of NixOS
* [https://search.nixos.org/options NixOS Option Search] - full-text search through all options of NixOS
* [https://search.nix.gsc.io/ NixOS Code Search] - full-text search through NixOS related packages
* [https://noogle.dev/ Noogle] - Nix API search engine that lets you search nix functions
* [https://nixcloud.io/tour/?id=1 A tour of nix] - interactive Nix tutorial
* [https://nixcloud.io/tour/?id=1 A tour of nix] - interactive Nix tutorial
* [https://status.nixos.org/ Nix Channel Status] - when nixpkgs/nixos channels were updated last
* [https://status.nixos.org/ Nix Channel Status] - when nixpkgs/nixos channels were updated last
* [https://hydra.nixos.org/ Hydra]
* [https://hydra.nixos.org/ Hydra]
* [https://malob.github.io/nix-review-tools-reports/ Nix Review Tools Reports] - reports showing problematic dependencies for major Hydra jobsets


=== Tutorials ===
=== Tutorials ===
* [https://ianthehenry.com/posts/how-to-learn-nix/ How to learn Nix] - A set of over 40 posts from 2021, looking at &mdash; as the author describes &mdash; not just what Nix does, but what it '''''does'''''. It is their notes from reading the manual, doing experiments, and trying to deeply understand Nix.
* [https://rgoswami.me/posts/ccon-tut-nix/ Tutorial Introduction to Nix] - An introduction focused on the use of shell environments, for Python and with links to R versions as well
* [https://nixcloud.io/tour Interactive Tour of Nix] - An interactive tutorial of the Nix Expression Language by Joachim Schiele and Paul Seitz
* [https://github.com/nixcloud/nix-shell-workshop Nix shell workshop]
* [https://scrive.github.io/nix-workshop/ Scrive workshop ] - Nix language and packaging workshop
* [https://danielunderwood.dev/post/nixos-nas/ ZFS NAS]
* [https://nixos-and-flakes.thiscute.world/ NixOS & Flakes Book - An unofficial book for beginners] - A beginner friendly tutorial about NixOS and Flakes. By Ryan Yin
* [https://leanpub.com/nixos-in-production NixOS in Production] - A NixOS handbook for professional use. By Gabriella Gonzalez
==== Video tutorials ====


* [[Wil T Nix Guides]] - A video series in 8 parts, covering the Nix ecosystem from foundations, providing orientation with all available resources, and showing hands on how to get NixOS installed and running (including managing all your configuration through git and using Flakes).
* [[Wil T Nix Guides]] - A video series in 8 parts, covering the Nix ecosystem from foundations, providing orientation with all available resources, and showing hands on how to get NixOS installed and running (including managing all your configuration through git and using Flakes).
* [https://rgoswami.me/posts/ccon-tut-nix/ Tutorial Introduction to Nix] - an introduction focused on the use of shell environments, for Python and with links to R versions as well
* [https://www.youtube.com/playlist?list=PLuVXx3vBwgelE9hbg5lH4w-JFU7llOqtI Nix Friday] - a series of 24 video streams of 1-2 hours on learning Nix and meeting community members
* [https://nixcloud.io/tour Interactive Tour of Nix] - an interactive tutorial of the Nix Expression Language by Joachim Schiele and Paul Seitz
* [https://www.youtube.com/playlist?list=PLyzwHTVJlRc8yjlx4VR4LU5A5O44og9in The Nix Hour] - A weekly beginner-oriented improvised QA-style lecture on Nix
* [https://github.com/nixcloud/nix-shell-workshop Nix shell workshop]
* [https://www.youtube.com/playlist?list=PLko9chwSoP-15ZtZxu64k_CuTzXrFpxPE Vimjoyer's Nix Tutorials] - A regularly released tutorial series about configuring things with Nix.
* [https://scrive.github.io/nix-workshop/ Scrive workshop ] - nix language and packaging workshop
* [https://www.youtube.com/playlist?list=PL_WcXIXdDWWpuypAEKzZF2b5PijTluxRG NixOS Config Guides for Nerds and Other Cool People] - A tutorial series geared towards people that have some Linux command line experience.
* [https://www.youtube.com/playlist?list=PLRGI9KQ3_HP_OFRG6R-p4iFgMSK1t5BHs Nixology] - A tutorial series by Burke Libbey, originally released internally at Shopify
* [https://youtu.be/9DJtHIpdp0Y Informal intro to the Nix language, derivations and nixpkgs] - A thorough introduction to the Nix language
* [https://m.youtube.com/playlist?list=PLAWyx2BxU4OyERRTbzNAaRHK08DQ0DD_l EmergentMind's Nix Tutorials] - A tutorial series for Nix configuration and secrets management
 
=== Examples ===
* [[Configuration Collection]]
* [[Comparison of NixOS setups]]


=== Talks ===
=== Talks ===
* [https://www.youtube.com/watch?v=7sQa04olUA0&list=PLgknCdxP89RcXpf7xLU7tuWXTOsL1rSHU NixCon 2020 Talks]
 
* [https://www.youtube.com/watch?v=pfg9ykBo9oM&list=PLgknCdxP89Re9oFsLnAb5iLO0XG_rMuAo NixCon 2019 Talks]
==== NixCon ====
 
*[https://media.ccc.de/c/nixcon2023 NixCon 2023 Talks]
* [https://www.youtube.com/playlist?list=PLgknCdxP89ReD6gxl755B6G_CI65z4J2e NixCon 2022 Talks]
* [https://www.youtube.com/playlist?list=PLgknCdxP89RcXpf7xLU7tuWXTOsL1rSHU NixCon 2020 Talks]
* [https://www.youtube.com/playlist?list=PLgknCdxP89Re9oFsLnAb5iLO0XG_rMuAo NixCon 2019 Talks]
* [https://www.youtube.com/playlist?list=PLgknCdxP89ReJKWX3sthcsbBYsoihzSQX NixCon 2018 Talks]
* [https://www.youtube.com/playlist?list=PLgknCdxP89ReJKWX3sthcsbBYsoihzSQX NixCon 2018 Talks]
* [https://www.youtube.com/watch?v=fdj9tzRaLn4&list=PLgknCdxP89ReQzhfKwMYjLdwWsc7us8ns&index=1 NixCon 2017 Talks]
* [https://www.youtube.com/playlist?list=PLgknCdxP89ReQzhfKwMYjLdwWsc7us8ns&index=1 NixCon 2017 Talks]
* [https://media.ccc.de/c/nixcon2015 NixCon 2015 Talks] produced and hosted by the CCC Video Operation Center
* [https://media.ccc.de/c/nixcon2015 NixCon 2015 Talks] produced and hosted by the CCC Video Operation Center
==== Other ====
* [https://fosdem.org/2024/schedule/track/nix-devroom/ FOSDEM 2024 - Nix and NixOS devroom]
* [https://www.youtube.com/playlist?list=PLt4-_lkyRrOPcBuz_tjm6ZQb-6rJjU3cf Summer of Nix 2023 Talks]
* [https://archive.fosdem.org/2023/schedule/track/nix_and_nixos/ FOSDEM 2023 - Nix and NixOS devroom]
* [https://www.youtube.com/playlist?list=PLt4-_lkyRrOMWyp5G-m_d1wtTcbBaOxZk Summer of Nix 2022 Talks]








[[Category:Reference]]
[[Category:Guide]]

Latest revision as of 06:48, 14 September 2024

Note: Reference documentation and learning materials for using Nix standalone are maintained at nix.dev.

This article is an overview of resources available both within the NixOS Wiki and elsewhere. For communication channels, support and information of contributing, see the community menu.

Wiki - search by topic

While most people just search for the article they want to read, there is also a way to reach almost all arcticles via 2 to 3 clicks from the starting page via the main 5 topic categories:

  1. Software
  2. Hardware
  3. Desktop - how to setup PCs
  4. Server - how to setup servers
  5. Community - people, communication, work on NixOS

Wiki - search by article type

The NixOS Wiki's core articles are divided into five type categories. Each category link will list all pages in that category:

  1. Pedias, for encyclopedic description
  2. Guides, for broad hands-on understanding and connections to other learning resources
  3. Tutorials, intended to teach a particular process or project
  4. Cookbooks, collections of tips and tricks
  5. Reference, full manuals and technical coverage

Pages are also organized by the six most prominent components of the Nix Ecosystem — NixOS, Nix: the package manager, Nix: the language (Nix Expressions), Nixpkgs, NixOps and Hydra.

NixOS Wiki Resources
Category NixOS Nix Nix Expressions Nixpkgs NixOps Hydra
Pedia NixOS Nix Nix Expression Language Nixpkgs NixOps Hydra
Cookbook NixOS Cheatsheet Nix Cookbook Nix Language: Tips & Tricks
NixOS Official Resources
Category NixOS Nix Nix Expressions Nixpkgs NixOps Hydra
Reference NixOS Manual Nix Manual Nix Manual:
Writing Nix Expressions
Nixpkgs Manual Nixops Manual Hydra Manual
Note: Home Manager is also a major community project to make user environment management in NixOS easier. It is intended to replace much of what you would do with nix-env, to reduce hard-to-track imperative actions.
Official Home Manager manual

Also, see Applications for an overview of tools in the extended ecosystem.

More documentation

  • awesome-nix - community-curated list of Nix learning resources and tools

News

Interactive websites

Tutorials

Video tutorials

Examples

Talks

NixCon

Other