|
15 | 15 | }; |
16 | 16 | }; |
17 | 17 |
|
18 | | - outputs = |
19 | | - { self |
20 | | - , systems |
21 | | - , nixpkgs |
22 | | - , treefmt-nix |
23 | | - , ... |
24 | | - } @ inputs: |
25 | | - let |
26 | | - eachSystem = f: |
27 | | - nixpkgs.lib.genAttrs (import systems) ( |
28 | | - system: |
| 18 | + outputs = { |
| 19 | + self, |
| 20 | + systems, |
| 21 | + nixpkgs, |
| 22 | + treefmt-nix, |
| 23 | + ... |
| 24 | + } @ inputs: let |
| 25 | + eachSystem = f: |
| 26 | + nixpkgs.lib.genAttrs (import systems) ( |
| 27 | + system: |
29 | 28 | f (import nixpkgs { |
30 | 29 | inherit system; |
31 | | - overlays = [ inputs.rust-overlay.overlays.default ]; |
| 30 | + overlays = [inputs.rust-overlay.overlays.default]; |
32 | 31 | }) |
33 | | - ); |
| 32 | + ); |
34 | 33 |
|
35 | | - rustToolchain = eachSystem (pkgs: (pkgs.rust-bin.stable.latest.default.override { |
36 | | - extensions = [ "rust-src" ]; |
37 | | - })); |
| 34 | + rustToolchain = eachSystem (pkgs: (pkgs.rust-bin.stable.latest.default.override { |
| 35 | + extensions = ["rust-src"]; |
| 36 | + })); |
38 | 37 |
|
39 | | - treefmtEval = eachSystem (pkgs: treefmt-nix.lib.evalModule pkgs ./treefmt.nix); |
40 | | - in |
41 | | - { |
42 | | - # You can use crane to build the Rust application with Nix |
| 38 | + treefmtEval = eachSystem (pkgs: treefmt-nix.lib.evalModule pkgs ./treefmt.nix); |
| 39 | + in { |
| 40 | + # You can use crane to build the Rust application with Nix |
43 | 41 |
|
44 | | - # packages = eachSystem (pkgs: let |
45 | | - # craneLib = inputs.crane.lib.${pkgs.system}; |
46 | | - # in { |
47 | | - # default = craneLib.buildPackage { |
48 | | - # src = craneLib.cleanCargoSource (craneLib.path ./.); |
49 | | - # }; |
50 | | - # }); |
| 42 | + # packages = eachSystem (pkgs: let |
| 43 | + # craneLib = inputs.crane.lib.${pkgs.system}; |
| 44 | + # in { |
| 45 | + # default = craneLib.buildPackage { |
| 46 | + # src = craneLib.cleanCargoSource (craneLib.path ./.); |
| 47 | + # }; |
| 48 | + # }); |
51 | 49 |
|
52 | | - devShells = eachSystem (pkgs: { |
53 | | - # Based on a discussion at https://github.com/oxalica/rust-overlay/issues/129 |
54 | | - default = pkgs.mkShell (with pkgs; { |
55 | | - nativeBuildInputs = [ |
56 | | - clang |
57 | | - gdb |
58 | | - # Use mold when we are runnning in Linux |
59 | | - (lib.optionals stdenv.isLinux mold) |
60 | | - ]; |
61 | | - buildInputs = [ |
62 | | - rustToolchain.${pkgs.system} |
63 | | - rust-analyzer-unwrapped |
64 | | - cargo |
65 | | - cargo-insta |
66 | | - cargo-hack |
67 | | - cargo-expand |
68 | | - # pkg-config |
69 | | - # openssl |
70 | | - ]; |
71 | | - RUST_SRC_PATH = rustPlatform.rustLibSrc; |
72 | | - }); |
| 50 | + devShells = eachSystem (pkgs: { |
| 51 | + # Based on a discussion at https://github.com/oxalica/rust-overlay/issues/129 |
| 52 | + default = pkgs.mkShell (with pkgs; { |
| 53 | + nativeBuildInputs = [ |
| 54 | + clang |
| 55 | + gdb |
| 56 | + # Use mold when we are runnning in Linux |
| 57 | + (lib.optionals stdenv.isLinux mold) |
| 58 | + ]; |
| 59 | + buildInputs = [ |
| 60 | + rustToolchain.${pkgs.system} |
| 61 | + rust-analyzer-unwrapped |
| 62 | + cargo |
| 63 | + cargo-insta |
| 64 | + cargo-hack |
| 65 | + cargo-expand |
| 66 | + bacon |
| 67 | + # pkg-config |
| 68 | + # openssl |
| 69 | + ]; |
| 70 | + RUST_SRC_PATH = rustPlatform.rustLibSrc; |
73 | 71 | }); |
| 72 | + }); |
74 | 73 |
|
75 | | - formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper); |
| 74 | + formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper); |
76 | 75 |
|
77 | | - checks = eachSystem (pkgs: { |
78 | | - formatting = treefmtEval.${pkgs.system}.config.build.check self; |
79 | | - }); |
80 | | - }; |
| 76 | + checks = eachSystem (pkgs: { |
| 77 | + formatting = treefmtEval.${pkgs.system}.config.build.check self; |
| 78 | + }); |
| 79 | + }; |
81 | 80 | } |
0 commit comments