{ inputs = { naersk.url = "github:nix-community/naersk/master"; nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, utils, naersk }: utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; naersk-lib = pkgs.callPackage naersk { }; in { packages.default = with pkgs; naersk-lib.buildPackage { name = "openpgp-card"; src = ./.; buildInputs = [ cargo rustc rustfmt pcsclite nettle pre-commit rustPackages.clippy ]; nativeBuildInputs = [ pkg-config rustPlatform.bindgenHook ]; RUST_SRC_PATH = rustPlatform.rustLibSrc; }; devShell = with pkgs; mkShell { buildInputs = [ cargo rustc rustfmt pcsclite nettle pre-commit rustPackages.clippy ]; nativeBuildInputs = [ pkg-config rustPlatform.bindgenHook ]; RUST_SRC_PATH = rustPlatform.rustLibSrc; }; overlays.default = (final: prev: { openpgp-card = self.packages.${prev.system}.default; }); }); }