Welcome to the NixOS Modules Lessons repository! Here, you'll find a comprehensive collection of resources designed to teach you about NixOS modules—an essential component of the NixOS Linux distribution. Whether you're just starting out or looking to deepen your understanding, this repository is your go-to source for learning all about NixOS modules.
NixOS is a Linux distribution known for its unique approach to package management and system configuration. At the heart of NixOS lies the Nix package manager, which employs a purely functional and declarative approach to system configuration. NixOS modules are an integral part of this system, enabling users to define and manage various aspects of their system's configuration in a modular and composable manner.
To get started with learning NixOS modules, simply clone this repository and explore the available resources. Whether you prefer reading documentation, following tutorials, experimenting with examples, or tackling exercises, there's something here for everyone.
We welcome contributions from the community to help enhance and expand this repository. Whether it's fixing a typo, adding a new tutorial, sharing an insightful example, or suggesting improvements, your contributions are invaluable. Please refer to the CONTRIBUTING file for guidelines on how to contribute.
This repository is licensed under the MIT License, fostering open collaboration and knowledge sharing.
Much of content in these lessons is original but could only be attempted after consuming and thanks to the already existing resources out there. The lessons here were inspired by or directly lifted content from the following resources:
- The nixpkgs source code:
- The original module article on nix.dev
- The NixOS Manual
- The NixOS Wiki