48 lines
1.4 KiB
Nix
48 lines
1.4 KiB
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
};
|
|
outputs = { nixpkgs, flake-utils, ... }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; in {
|
|
devShells = let
|
|
mkShell = pkgs.mkShell.override { stdenv = pkgs.clangStdenv; };
|
|
go = pkgs.go;
|
|
cilium-ebpf = let version = "0.11.0"; in pkgs.buildGoModule {
|
|
inherit version;
|
|
|
|
name = "cilium-ebpf";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "cilium";
|
|
repo = "ebpf";
|
|
rev = "v${version}";
|
|
sha256 = "+radPnp1l7OUYCEMvuVQU26V4o57R9cQkiU6khfdHAc=";
|
|
};
|
|
vendorSha256 = "qt6cXgU7lSw84F4/opvNnrsVU9LvjdT+LvEvaFL9CTQ=";
|
|
|
|
doCheck = false;
|
|
doInstallCheck = false;
|
|
};
|
|
in {
|
|
default = mkShell {
|
|
buildInputs = with pkgs; [
|
|
bpftool
|
|
go
|
|
cilium-ebpf
|
|
];
|
|
};
|
|
};
|
|
packages = let
|
|
file-lock = pkgs.buildGoModule {
|
|
name = "file-lock";
|
|
version = "0.0.1";
|
|
|
|
src = ./.;
|
|
vendorSha256 = "FhZNRT3zb5FUSgCG8EwVRdwKkBuXlQsbG0RQcg5SFrQ=";
|
|
};
|
|
in {
|
|
inherit file-lock;
|
|
|
|
default = file-lock;
|
|
};
|
|
});
|
|
} |