{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; cclyzerpp-flake.url = "github:peperunas/cclyzerpp/flake"; edk2-vulnerable.url = "git+ssh://git@github.com/BreakingBoot/edk2-vulnerable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils, cclyzerpp-flake, edk2-vulnerable }: flake-utils.lib.eachDefaultSystem (system: let inherit (edk2-vulnerable.packages.${system}) bitcodeEDK2; inherit (cclyzerpp-flake.packages.${system}) cclyzerpp; pkgs = import nixpkgs { inherit system; config.allowUnfree = true; }; shellWithPkgs = packages: pkgs.mkShell { inherit packages; }; shell = with pkgs; shellWithPkgs [ codeql klee souffle cclyzerpp bitcodeEDK2 ]; in { packages = rec { workbench = { files_handling = pkgs.callPackage ./workbench/files_handling/default.nix { }; }; default = workbench.files_handling; }; devShell = shell; }); }