Get in Touch

Course Outline

Declarative System Sovereignty

  • The causes of drift and audit failures in imperative configuration management.
  • Nix store, derivations, and the use of pure functions for system construction.
  • Differences between NixOS and traditional distributions: immutability and atomic upgrades.

Installation and Fundamentals

  • NixOS installation from ISO with both manual and automated partitioning options.
  • The Nix language syntax: sets, functions, and imports.
  • The structure of configuration.nix and the module system.
  • Searching for packages and options using nix search and man pages.

Package and Service Management

  • System-wide versus per-user package installation using nix-env.
  • Declarative enabling of systemd services.
  • Custom package overrides and overlays.
  • Garbage collection and store optimization techniques.

Reproducible Environments

  • nix-shell and shell.nix for ad-hoc development setups.
  • Nix Flakes for lockfile-based reproducibility.
  • devenv and devshell to streamline team onboarding.
  • Direnv integration for automatic environment switching.

Remote Deployment

  • Fleet management using NixOps and Colmena.
  • Configuration of remote building and binary caches.
  • Secrets management via agenix and sops-nix.
  • Deployment testing with NixOS VMs and containers.

System Updates and Rollbacks

  • nixos-rebuild modes: switch, test, and boot.
  • Atomic rollback to previous system generations.
  • Channel management and pinning for reproducible updates.
  • Emergency recovery procedures and bootloader configuration.

Advanced Topics

  • NixOS containers and lightweight virtualization strategies.
  • Cross-compilation and ARM build processes.
  • Generation of custom ISO and netboot images.
  • Harnessing Hydra for continuous integration of Nix packages.

Requirements

  • Advanced experience in Linux system administration and shell scripting.
  • Foundational understanding of functional programming concepts.
  • Familiarity with Git and version-controlled configuration workflows.

Target Audience

  • Infrastructure engineers looking to implement reproducible, declarative systems.
  • DevOps teams seeking to substitute Ansible, Puppet, or Chef with Nix.
  • Organizations requiring bit-for-bit reproducible deployment processes.
 21 Hours

Number of participants


Price per participant

Upcoming Courses

Related Categories