|
8 | 8 | flake-parts.url = "github:hercules-ci/flake-parts"; |
9 | 9 | }; |
10 | 10 |
|
11 | | - outputs = |
12 | | - inputs: |
13 | | - inputs.flake-parts.lib.mkFlake { inherit inputs; } { |
14 | | - systems = [ "x86_64-linux" ]; |
15 | | - perSystem = |
16 | | - { pkgs, config, ... }: |
17 | | - { |
18 | | - devShells = |
19 | | - let |
20 | | - rustToolchain = |
21 | | - with inputs.fenix.packages.${pkgs.system}; |
22 | | - combine ( |
23 | | - with stable; |
| 11 | + outputs = inputs: |
| 12 | + inputs.flake-parts.lib.mkFlake {inherit inputs;} { |
| 13 | + systems = ["x86_64-linux"]; |
| 14 | + perSystem = { |
| 15 | + pkgs, |
| 16 | + config, |
| 17 | + ... |
| 18 | + }: { |
| 19 | + devShells = let |
| 20 | + rustToolchain = with inputs.fenix.packages.${pkgs.system}; |
| 21 | + combine ( |
| 22 | + with stable; [ |
| 23 | + clippy |
| 24 | + rustc |
| 25 | + cargo |
| 26 | + rustfmt |
| 27 | + rust-src |
| 28 | + targets.aarch64-unknown-linux-gnu.stable.rust-std |
| 29 | + ] |
| 30 | + ); |
| 31 | + rustPackages = with pkgs; [ |
| 32 | + rustToolchain |
| 33 | + openssl |
| 34 | + pkg-config |
| 35 | + cargo-deny |
| 36 | + cargo-edit |
| 37 | + cargo-watch |
| 38 | + rust-analyzer |
| 39 | + ]; |
| 40 | + in { |
| 41 | + default = |
| 42 | + (pkgs.buildFHSEnv { |
| 43 | + name = "sw8s-rust-fhs"; |
| 44 | + targetPkgs = pkgs: |
| 45 | + with pkgs.llvmPackages_19; |
24 | 46 | [ |
25 | | - clippy |
26 | | - rustc |
27 | | - cargo |
28 | | - rustfmt |
29 | | - rust-src |
30 | | - targets.aarch64-unknown-linux-gnu.stable.rust-std |
| 47 | + libclang |
| 48 | + libllvm |
| 49 | + bintools |
| 50 | + clang |
31 | 51 | ] |
32 | | - ); |
33 | | - rustPackages = with pkgs; [ |
34 | | - rustToolchain |
35 | | - openssl |
36 | | - pkg-config |
37 | | - cargo-deny |
38 | | - cargo-edit |
39 | | - cargo-watch |
40 | | - rust-analyzer |
| 52 | + ++ rustPackages; |
| 53 | + extraOutputsToInstall = [ |
| 54 | + "dev" |
| 55 | + "out" |
41 | 56 | ]; |
42 | | - in |
43 | | - { |
44 | | - default = |
45 | | - (pkgs.buildFHSEnv.override { stdenv = pkgs.llvmPackages_19.libcxxStdenv; } { |
46 | | - name = "sw8s-rust-fhs"; |
47 | | - targetPkgs = |
48 | | - pkgs: with pkgs; [ |
49 | | - gccNGPackages_15.libstdcxx |
50 | | - llvmPackages_19.clang-tools |
51 | | - llvmPackages_19.libclang |
52 | | - llvmPackages_19.libllvm |
53 | | - gcc |
54 | | - glibc |
55 | | - glib |
56 | | - glm |
57 | | - llvmPackages_19.bintools |
58 | | - llvmPackages_19.clang |
59 | | - llvmPackages_19.libcxx |
60 | | - ] ++ rustPackages; |
61 | | - extraOutputsToInstall = ["dev" "out" "lib "]; |
62 | | - profile = '' |
63 | | - export BINDGEN_EXTRA_CLANG_ARGS="-isystem /usr/lib/clang/19/include/" |
64 | | - export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I /usr/lib/clang/19/include/" |
65 | | - export JETSON_DEVSHELL_MODE=1 |
66 | | - ''; |
67 | | - }).env; |
68 | | - }; |
69 | | - formatter = pkgs.nixfmt-tree; |
70 | | - packages.image = pkgs.dockerTools.streamNixShellImage { |
71 | | - name = "test"; |
72 | | - tag = "latest"; |
73 | | - drv = config.devShells.fhs; |
| 57 | + profile = '' |
| 58 | + export JETSON_DEVSHELL_MODE=1 |
| 59 | + ''; |
| 60 | + }).env; |
| 61 | + noFHS = pkgs.mkShell { |
| 62 | + nativeBuildInputs = [pkgs.pkg-config]; |
| 63 | + buildInputs = with pkgs; |
| 64 | + [ |
| 65 | + llvmPackages_19.clang |
| 66 | + opencv |
| 67 | + ] |
| 68 | + ++ rustPackages; |
| 69 | + LIBCLANG_PATH = "${pkgs.llvmPackages_19.libclang.lib}/lib"; |
74 | 70 | }; |
75 | 71 | }; |
| 72 | + formatter = pkgs.nixfmt-tree; |
| 73 | + packages.image = pkgs.dockerTools.streamNixShellImage { |
| 74 | + name = "test"; |
| 75 | + tag = "latest"; |
| 76 | + drv = config.devShells.fhs; |
| 77 | + }; |
| 78 | + }; |
76 | 79 | }; |
77 | 80 | } |
0 commit comments