{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-parts.url = "github:hercules-ci/flake-parts"; flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs"; flake-compat = { url = "https://git.lix.systems/lix-project/flake-compat/archive/main.tar.gz"; flake = false; }; }; outputs = inputs@{ flake-parts, ... }: flake-parts.lib.mkFlake { inherit inputs; } { systems = [ "x86_64-linux" "aarch64-linux" ]; perSystem = { pkgs, ... }: let scope = pkgs.callPackage ./scope.nix { }; in { devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ cargo rustc rust-analyzer clippy ]; env = scope.buildEnvVars; }; packages = { inherit (scope) sidebus-agent sidebus-broker; }; }; flake = { nixosModules.sidebus-vm = ./nixosModules/sidebus-vm.nix; }; }; }