60 lines
2.7 KiB
Nix
60 lines
2.7 KiB
Nix
{
|
|
description = "Quixos todo runtime package";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
|
|
camino-package-runtime = {
|
|
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/camino-package-runtime.git?ref=refs/heads/exported&rev=765c321f8a8710f351e63d3910ab46a2d5935393";
|
|
inputs.quixos-protocol.follows = "quixos-protocol";
|
|
inputs.quixosNixHelpers.follows = "quixosNixHelpers";
|
|
};
|
|
quixos-protocol.url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git?ref=refs/heads/exported&rev=e6b34535afa6e94a118e1f9d082054855e7df632";
|
|
quixosNixHelpers = {
|
|
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git?ref=refs/heads/exported&rev=1f0c39b01501d646fe97dfc6e5777ccab0bde2f1";
|
|
flake = false;
|
|
};
|
|
task-schema = {
|
|
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git?rev=fc518cbe75bb1960ee9d76dd2825d8e0f1cca9e4&dir=quixos-instance/schemas/quixos.todo.Task";
|
|
flake = false;
|
|
};
|
|
schemas-root = {
|
|
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git?rev=fc518cbe75bb1960ee9d76dd2825d8e0f1cca9e4&dir=quixos-instance/schemas";
|
|
flake = false;
|
|
};
|
|
};
|
|
|
|
outputs = inputs@{ nixpkgs, flake-utils, quixosNixHelpers, ... }:
|
|
let
|
|
quixosHelpers = import "${quixosNixHelpers}/quixos-package-helpers.nix";
|
|
in
|
|
quixosHelpers.mkCaminoTsYarnNixifyFlake {
|
|
inherit inputs nixpkgs flake-utils;
|
|
packageRoot = ./.;
|
|
promptName = "todo-runtime";
|
|
nativeBuildInputs = { inputs, system, ... }: [
|
|
inputs.camino-package-runtime.packages.${system}.default
|
|
];
|
|
buildEnv = { inputs, pkgs, system, ... }: {
|
|
QUIXOS_TODO_TASK_SCHEMA = "${inputs.task-schema}/schema.camino.proto";
|
|
CAMINO_PROTO_PATH = "${pkgs.protobuf}/include:${inputs.quixos-protocol.packages.${system}.default}/proto:${inputs.schemas-root}";
|
|
};
|
|
bundle = {
|
|
entry = "dist/gen/quixos.todo.Task.server.js";
|
|
};
|
|
installServer = {
|
|
libexecName = "todo-runtime";
|
|
descriptorPath = "descriptor.quixos-package.txtpb";
|
|
};
|
|
devShellPackages = { inputs, pkgs, system }: [
|
|
pkgs.protobuf
|
|
inputs.camino-package-runtime.packages.${system}.default
|
|
];
|
|
devShellHook = { inputs, pkgs, system, ... }: ''
|
|
export QUIXOS_TODO_TASK_SCHEMA="${inputs.task-schema}/schema.camino.proto"
|
|
export QUIXOS_PROTO_PATH="${pkgs.protobuf}/include:${inputs.quixos-protocol.packages.${system}.default}/proto:${inputs.schemas-root}:${inputs.task-schema}''${QUIXOS_PROTO_PATH:+:$QUIXOS_PROTO_PATH}"
|
|
'';
|
|
};
|
|
}
|