From 4bada58a4fb8f8113f2c294c08c717a2357ed5e2 Mon Sep 17 00:00:00 2001 From: Stefan Kreutz Date: Sat, 23 Aug 2025 23:37:47 +0200 Subject: Add experimental Nix flake --- flake.nix | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 flake.nix (limited to 'flake.nix') diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..b848bd2 --- /dev/null +++ b/flake.nix @@ -0,0 +1,38 @@ +{ + description = "A command-line utility and Rust library to compute the WPA pre-shared key of a Wi-Fi SSID and passphrase"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + flake-utils.url = "github:numtide/flake-utils"; + naersk.url = "github:nix-community/naersk"; + }; + + outputs = { self, nixpkgs, flake-utils, naersk, ... }@inputs: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = import nixpkgs { + inherit system; + config = { }; + overlays = [ ]; + }; + naersk' = pkgs.callPackage naersk { }; + in rec { + # nix build + # nix run . -- --help + defaultPackage = packages.wpa-psk-cli; + + # nix build .#wpa-psk-cli + # nix run .#wpa-psk-cli -- --help + packages.wpa-psk-cli = naersk'.buildPackage { + pname = "wpa-psk-cli"; + src = builtins.path { path = ./.; name = "wpa-psk"; }; + meta.mainProgram = "wpa-psk"; + }; + + # nix develop + devShell = pkgs.mkShell { + nativeBuildInputs = with pkgs; [ rustc cargo cargo-edit ]; + }; + } + ); +} -- cgit v1.2.3