X-Git-Url: http://git.scottworley.com/tattlekey/blobdiff_plain/3808750687e7b6f953c251ae1281be5309d7d736..d7789e5bc00881da0f9e0e96b867309f5289dc8f:/client/default.nix diff --git a/client/default.nix b/client/default.nix index a2bbf91..eb65f49 100644 --- a/client/default.nix +++ b/client/default.nix @@ -1,12 +1,16 @@ { pkgs ? import { }, }: let - tattlekey = { lib, stdenv, cmake, pico-sdk, python3 }: + tattlekey = { lib, stdenv, cmake, pico-sdk, pico-examples, python3 }: stdenv.mkDerivation { pname = "tattlekey"; version = "0.0.1"; src = lib.cleanSource ./.; nativeBuildInputs = [ cmake python3 ]; + postUnpack = '' + # Per https://datasheets.raspberrypi.com/picow/connecting-to-the-internet-with-pico-w.pdf page 9 + cp ${pico-examples}/pico_w/wifi/lwipopts_examples_common.h lwipopts.h + ''; cmakeFlags = [ "-DCMAKE_C_COMPILER=/usr/bin/arm-none-eabi-gcc" "-DCMAKE_CXX_COMPILER=/usr/bin/arm-none-eabi-c++" @@ -17,17 +21,27 @@ let diskImageFormat = "qcow2"; }; - pico-sdk = pkgs.pico-sdk.overrideAttrs (old: rec { - version = "1.5.1"; + pico-sdk-version = "1.5.1"; + + pico-sdk = pkgs.pico-sdk.overrideAttrs (old: { + version = pico-sdk-version; src = pkgs.fetchFromGitHub { fetchSubmodules = true; owner = "raspberrypi"; repo = "pico-sdk"; - rev = version; + rev = pico-sdk-version; hash = "sha256-GY5jjJzaENL3ftuU5KpEZAmEZgyFRtLwGVg3W1e/4Ho="; }; }); + pico-examples = pkgs.fetchFromGitHub { + fetchSubmodules = true; + owner = "raspberrypi"; + repo = "pico-examples"; + rev = "sdk-${pico-sdk-version}"; + hash = "sha256-mJIOWUqsQJcg7FUWZePf+pA/YblZskDtIVnUJiz7szU="; + }; + distro = "debian11x86_64"; extraPackages = [ @@ -41,4 +55,4 @@ let debImage = pkgs.vmTools.diskImageFuns."${distro}" { inherit extraPackages; }; in pkgs.vmTools.runInLinuxImage -(pkgs.callPackage tattlekey { pico-sdk = pico-sdk; }) +(pkgs.callPackage tattlekey { inherit pico-examples pico-sdk; })