This is an experiment to contain the code for all components in a single repository, also known as a monorepository.
Please run sh setup-hooks.sh
to enforce correct naming convention for branches.
The code is grouped by language or framework name.
Motivated by a shareable development experience, this repository provides
nix develop .#rust
compatible shell environment containing a rust toolchain and other tools, includingnats
andjust
just
compatible recipes via the Justfile
handily, just
comes via the nix development shell as well.
nix develop .#rust
just
/flake.nix
/flake.lock
/nix/ /* [blueprint](https://github.com/numtide/blueprint) set up underneath here. */
/Cargo.toml
/Cargo.lock
/rust/ # all rust code lives here
/rust/clients/
/rust/services/
/rust/hpos-hal/
/rust/netdiag/
/rust/util_libs/
Reusable Pulumi modules with examples
/pulumi/
The CI system is driven by buildbot-nix.
CI builds all Nix derivations exposed under the checks
flake output.
While the command is called nix build
, it's also used to execute (i.e. run) various forms of tests.
E.g., this runs the holo-agent integration test defined as NixOS VM test with verbose output:
nix build -vL .#checks.x86_64-linux.holo-agent-integration-nixos
Or this runs the extra-container-holochain
integration test, which is another way to define a NixOS VM test that's attached defined in the package file directly.
nix build -vL .#checks.x86_64-linux.pkgs-extra-container-holochain-integration
This repo is configured with treefmt-nix
which can be invoked via:
nix fmt
Please see the LICENSE file.