diff options
Diffstat (limited to 'flake.nix')
| -rw-r--r-- | flake.nix | 60 |
1 files changed, 28 insertions, 32 deletions
@@ -1,15 +1,14 @@ { inputs = { - nixpkgs.url = "github:nixos/nixpkgs/release-21.05"; - flake-utils.url = "github:numtide/flake-utils"; + nixpkgs.url = "github:nixos/nixpkgs/release-22.05"; + flake-utils.url = "github:numtide/flake-utils/master"; nixpkgs-mozilla = { - url = "github:mozilla/nixpkgs-mozilla"; - flake = false; + url = "github:mozilla/nixpkgs-mozilla/master"; }; naersk = { - url = "github:nmattia/naersk"; + url = "github:nmattia/naersk/master"; inputs.nixpkgs.follows = "nixpkgs"; }; }; @@ -28,27 +27,28 @@ overlays = [ (import inputs.nixpkgs-mozilla) - - (self: super: let - rust = (super.rustChannelOf { - channel = "nightly"; - date = "2021-10-26"; - sha256 = "1hLbypXA+nuH7o3AHCokzSBZAvQxvef4x9+XxO3aBao="; - }).rust.override { - extensions = ["rust-src"]; - }; - in { - cargo = rust; - rustc = rust; - - naerskRust = rust; - }) ]; }; - naersk = (inputs.naersk.lib."${system}".override { - inherit (pkgs) cargo rustc; - }); + mkRust = extensions: (pkgs.rustChannelOf { + channel = "nightly"; + date = "2021-10-26"; + sha256 = "1hLbypXA+nuH7o3AHCokzSBZAvQxvef4x9+XxO3aBao="; + }).rust.override { + inherit extensions; + }; + + buildToolchain = mkRust []; + devToolchain = mkRust [ + "rust-analyzer" + "rust-src" + "clippy" + ]; + + naersk = pkgs.callPackage inputs.naersk { + cargo = buildToolchain; + rustc = buildToolchain; + }; deps = with pkgs; [ openssl @@ -70,20 +70,16 @@ }; in { - devShell = pkgs.mkShell { + devShells.default = pkgs.mkShell { buildInputs = (with pkgs; [ - cargo - rustc - - rustracer + devToolchain ]) ++ deps; - RUST_SRC_PATH = "${pkgs.naerskRust}/lib/rustlib/src/rust"; + RUST_SRC_PATH = "${devToolchain}/lib/rustlib/src/rust"; }; - defaultPackage = pkg; - - defaultApp = { + packages.default = pkg; + apps.default = { type = "app"; program = "${pkg}/bin/thulani"; }; |
