From e1ba92938fd7d2c5688dbafcfc45c9acf93af674 Mon Sep 17 00:00:00 2001 From: Jeremy Wall Date: Sun, 7 Aug 2022 16:24:47 -0400 Subject: [PATCH] nix package updates and stabilization --- flake.lock | 19 ++++++++++--------- flake.nix | 19 ++++++++++++------- nix/cargoVendorDeps/default.nix | 21 --------------------- nix/kitchen/default.nix | 3 +++ 4 files changed, 25 insertions(+), 37 deletions(-) delete mode 100644 nix/cargoVendorDeps/default.nix diff --git a/flake.lock b/flake.lock index a3fd0c1..79acbba 100644 --- a/flake.lock +++ b/flake.lock @@ -67,11 +67,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1639947939, - "narHash": "sha256-pGsM8haJadVP80GFq4xhnSpNitYNQpaXk4cnA796Cso=", + "lastModified": 1659610603, + "narHash": "sha256-LYgASYSPYo7O71WfeUOaEUzYfzuXm8c8eavJcel+pfI=", "owner": "nix-community", "repo": "naersk", - "rev": "2fc8ce9d3c025d59fee349c1f80be9785049d653", + "rev": "c6a45e4277fa58abd524681466d3450f896dc094", "type": "github" }, "original": { @@ -82,11 +82,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1645937171, - "narHash": "sha256-n9f9GZBNMe8UMhcgmmaXNObkH01jjgp7INMrUgBgcy4=", + "lastModified": 1659868656, + "narHash": "sha256-LINDS957FYzOb412t/Zha44LQqGniMpUIUz4Pi+fvSs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "22dc22f8cedc58fcb11afe1acb08e9999e78be9c", + "rev": "80fc83ad314fe701766ee66ac8286307d65b39e3", "type": "github" }, "original": { @@ -127,15 +127,16 @@ ] }, "locked": { - "lastModified": 1646533330, - "narHash": "sha256-JwtPZekfbIwUFO5xza9sDHOxKsT5E2PFBkJxtvNOI7M=", + "lastModified": 1659599305, + "narHash": "sha256-htzFq5RffyoKSZxiLfpUq5CyhkQwycsXB5ptale5e78=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "1a459694c46b984f4f55bfe4a59d874c828fb1e8", + "rev": "28cedcb8dfea9f1b96b0635cf99fe6bdca163f4e", "type": "github" }, "original": { "owner": "oxalica", + "ref": "stable", "repo": "rust-overlay", "type": "github" } diff --git a/flake.nix b/flake.nix index e59fcda..f93c911 100644 --- a/flake.nix +++ b/flake.nix @@ -6,7 +6,7 @@ gitignore = { url = "github:hercules-ci/gitignore.nix"; flake = false; }; flake-utils.url = "github:numtide/flake-utils"; rust-overlay = { - url = "github:oxalica/rust-overlay"; + url = "github:oxalica/rust-overlay?ref=stable"; inputs.nixpkgs.follows = "nixpkgs"; }; naersk.url = "github:nix-community/naersk"; @@ -21,19 +21,24 @@ in flake-utils.lib.eachDefaultSystem (system: let - overlays = [ rust-overlay.overlay ]; + overlays = [ rust-overlay.overlays.default ]; pkgs = import nixpkgs { inherit system overlays; }; - # TODO(jwall): Could this get by with minimal instead? - rust-wasm = pkgs.rust-bin.stable.latest.default.override { + rust-wasm = pkgs.rust-bin.stable."1.60.0".default.override { extensions = [ "rust-src" ]; + # Add wasm32 as an extra target besides the native target. targets = [ "wasm32-unknown-unknown" ]; }; - naersk-lib = naersk.lib."${system}"; + # make sure to use our rust-wasm build target as the rust toolchain + # in naersk. + naersk-lib = pkgs.callPackage naersk { + rustc = rust-wasm; + cargo = rust-wasm; + }; kitchenWasm = kitchenWasmGen { inherit pkgs rust-wasm version; }; kitchen = (kitchenGen { - inherit pkgs version naersk-lib kitchenWasm; + inherit pkgs version naersk-lib kitchenWasm rust-wasm; # Because it's a workspace we need the other crates available as source root = (pkgs.callPackage gitignore { }).gitignoreSource ./.; }); @@ -52,7 +57,7 @@ program = "${kitchen}/bin/kitchen"; }; devShell = pkgs.mkShell { - buildInputs = [ rust-wasm ] ++ (with pkgs; [wasm-bindgen-cli wasm-pack diesel-cli]); + buildInputs = [ rust-wasm ] ++ (with pkgs; [wasm-bindgen-cli wasm-pack]); }; } ); diff --git a/nix/cargoVendorDeps/default.nix b/nix/cargoVendorDeps/default.nix deleted file mode 100644 index 41c0f9e..0000000 --- a/nix/cargoVendorDeps/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -{pkgs ? (import ) {}, - lockFile ? ./../../Cargo.lock, - version ? "0.2.1"}: - let - cargoDeps = (pkgs.rustPlatform.importCargoLock { inherit lockFile; }); - #recipes = ./../../recipes; -in -with pkgs; -stdenv.mkDerivation { - name = "cargo-vendor-deps"; - version = "0.0.0"; - phases = [ "installPhase" ]; - installPhase = '' - mkdir -p $out - cp -r ${cargoDeps}/* $out/ - cp -r ${cargoDeps}/.cargo $out/ - ls -al $out/ - ''; - #cp -r ${recipes} $out/recipes-${version} -} - \ No newline at end of file diff --git a/nix/kitchen/default.nix b/nix/kitchen/default.nix index 0c18a02..bc93dc5 100644 --- a/nix/kitchen/default.nix +++ b/nix/kitchen/default.nix @@ -4,13 +4,16 @@ kitchenWasm, version, naersk-lib, + rust-wasm, }: with pkgs; (naersk-lib.buildPackage rec { pname = "kitchen"; inherit version; + buildInputs = [ rust-wasm ]; # However the crate we are building has it's root in specific crate. src = root; + nativeBuildInputs = if stdenv.isDarwin then [ xcbuild ] else [ ]; cargoBuildOptions = opts: opts ++ ["-p" "${pname}" ]; postPatch = '' mkdir -p web/dist