Repository navigation
Expand file tree
/
Copy pathflake.nix
More file actions
95 lines (88 loc) · 3.22 KB
/
Copy pathflake.nix
File metadata and controls
95 lines (88 loc) · 3.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
{
description = "holo-host monorepository";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-24.11";
nixpkgs-2405.url = "github:NixOS/nixpkgs?ref=nixos-24.05";
nixpkgs-2411.url = "github:NixOS/nixpkgs?ref=nixos-24.11";
nixpkgs-unstable.url = "github:NixOS/nixpkgs?ref=nixos-unstable";
blueprint.url = "github:numtide/blueprint";
blueprint.inputs.nixpkgs.follows = "nixpkgs";
treefmt-nix.url = "github:numtide/treefmt-nix";
treefmt-nix.inputs.nixpkgs.follows = "nixpkgs";
nixago.url = "github:jmgilman/nixago";
nixago.inputs.nixpkgs.follows = "nixpkgs";
srvos.url = "github:nix-community/srvos";
srvos.inputs.nixpkgs.follows = "nixpkgs";
disko.url = "github:nix-community/disko";
disko.inputs.nixpkgs.follows = "nixpkgs";
crane.url = "github:ipetkov/crane";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
extra-container.url = "github:erikarvstedt/extra-container";
extra-container.inputs.nixpkgs.follows = "nixpkgs";
# Add support for multiple holochain versions
holonix_0_5 = {
url = "github:holochain/holonix?ref=main-0.5";
inputs = {
nixpkgs.follows = "nixpkgs";
crane.follows = "crane";
rust-overlay.follows = "rust-overlay";
};
};
holonix_0_4 = {
url = "github:holochain/holonix?ref=main-0.4";
inputs = {
nixpkgs.follows = "nixpkgs";
crane.follows = "crane";
rust-overlay.follows = "rust-overlay";
};
};
holonix_0_3 = {
url = "github:holochain/holonix?ref=main-0.3";
inputs = {
nixpkgs.follows = "nixpkgs";
crane.follows = "crane";
rust-overlay.follows = "rust-overlay";
};
};
hc-http-gw = {
url = "github:holochain/hc-http-gw";
inputs = {
holonix.follows = "holonix_0_4";
nixpkgs.follows = "nixpkgs";
rust-overlay.follows = "rust-overlay";
};
};
};
outputs =
inputs:
let
portAlloc = import ./nix/lib/port-allocation.nix { lib = inputs.nixpkgs.lib; };
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; };
blueprintOutputs = inputs.blueprint {
inherit inputs;
prefix = "nix/";
nixpkgs.config.allowUnfree = true;
};
in
blueprintOutputs // {
checks.x86_64-linux.port-allocation = pkgs.runCommand "port-allocation-check" {} ''
echo "${builtins.concatStringsSep "\n" portAlloc.testResults}" > $out
'';
checks.x86_64-linux.extra-container-build-validation =
blueprintOutputs.packages.x86_64-linux.extra-container-holochain.tests.build-validation;
checks.x86_64-linux.extra-container-error-detection =
blueprintOutputs.packages.x86_64-linux.extra-container-holochain.tests.error-detection;
checks.x86_64-linux.extra-container-version-validation =
blueprintOutputs.packages.x86_64-linux.extra-container-holochain.tests.version-validation;
checks.x86_64-linux.holo-agent-integration-nixos =
import ./nix/checks/holo-agent-integration-nixos.nix {
inherit inputs;
flake = blueprintOutputs;
pkgs = pkgs;
system = "x86_64-linux";
};
};
}