Files
camino-package-runtime/flake.nix
T

50 lines
2.1 KiB
Nix

{
description = "Quixos Camino package runtime helpers";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
quixos-protocol.url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git?ref=refs/tags/quixos-reachability/9867bf4552c09ee71ebeefe08e652fd870894130&rev=9867bf4552c09ee71ebeefe08e652fd870894130";
quixosNixHelpers = {
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git?ref=refs/tags/quixos-reachability/7177130c0365f2fa58ea4877366e1c5d17db4c01&rev=7177130c0365f2fa58ea4877366e1c5d17db4c01";
flake = false;
};
};
outputs = inputs@{ nixpkgs, flake-utils, quixosNixHelpers, ... }:
let
quixosHelpers = import "${quixosNixHelpers}/quixos-package-helpers.nix";
packageOutputs = quixosHelpers.mkCaminoTsYarnNixifyFlake {
inherit inputs nixpkgs flake-utils;
packageRoot = ./.;
sourceName = "quixos-camino-package-runtime-source";
promptName = "camino-package-runtime";
nativeBuildInputs = { pkgs, ... }: [
pkgs.protobuf
];
buildEnv = { inputs, pkgs, system }: {
QUIXOS_PROTO_PATH = "${pkgs.protobuf}/include:${inputs.quixos-protocol.packages.${system}.default}/proto";
};
devShellPackages = { pkgs, ... }: [
pkgs.protobuf
];
devShellHook = { inputs, pkgs, system, ... }: ''
export QUIXOS_PROTO_PATH="${pkgs.protobuf}/include:${inputs.quixos-protocol.packages.${system}.default}/proto''${QUIXOS_PROTO_PATH:+:$QUIXOS_PROTO_PATH}"
'';
};
in
packageOutputs // flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
builtPackage = packageOutputs.packages.${system}.default;
in
{
checks.dist-current = pkgs.runCommand "camino-package-runtime-dist-current" { } ''
diff --recursive --unified \
${./dist} \
${builtPackage}/libexec/-quixos-camino-package-runtime/dist
touch "$out"
'';
});
}