Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on May 19, 2022. It is now read-only.

Latest commit

 

History

History
History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

README.rst

Outline

Developer documentation

Building

The build system uses Nix which must be installed before anything can be built. Start by setting up the development/operations environment:

$ nix-shell

Testing

The test system uses Nix which must be installed before any tests can be run.

Unit tests are run using this command:

$ nix-build nixos/unit-tests.nix

Unit tests are also run on CI.

The system tests are run using this command:

$ nix-build nixos/system-tests.nix

The system tests boot QEMU VMs which prevents them from running on CI at this time. The build requires > 10 GB of disk space, and the VMs might be timing out on slow or busy machines. If you run into timeouts, try raising the number of retries.

It is also possible go through the testing script interactively - useful for debugging:

$ nix-build -A private-storage.driver nixos/system-tests.nix

This will give you a result symlink in the current directory. Inside that is bin/nixos-test-driver which gives you a kind of REPL for interacting with the VMs. The kind of Perl in this testScript is what you can enter into this REPL. Consult the official documentation on NixOS Tests for more information.

Architecture overview

.. graphviz:: architecture-overview.dot


Morty Proxy This is a proxified and sanitized view of the page, visit original site.