{ 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; }; }); }