From a1d4c8f6d0b0b9c8ae31bd20d3c4e84eba895c57 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Fri, 25 Dec 2020 23:21:34 +0100 Subject: [PATCH] Add Clang to dev shell --- flake.nix | 72 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 38 insertions(+), 34 deletions(-) diff --git a/flake.nix b/flake.nix index 7348653..320a659 100644 --- a/flake.nix +++ b/flake.nix @@ -82,40 +82,44 @@ devShell = # Development shell for working with the # upstream Genode source repositories - forAllLocalSystems (system: - let - pkgs = nixpkgsFor.${system}; - fhs = pkgs.buildFHSUserEnv { - name = "genode-env"; - targetPkgs = pkgs: - (with pkgs; [ - binutils - bison - expect - flex - git - glibc.dev - gnumake - libxml2 - qemu - tcl - which - xorriso - ]); - runScript = "bash"; - extraBuildCommands = let - toolchain = pkgs.fetchzip { - url = - "file://${packages.x86_64-linux-x86_64-genode.genodeSources.toolchain.src}"; - hash = "sha256-26rPvLUPEJm40zLSqTquwuFTJ1idTB0T4VXgaHRN+4o="; - }; - in "ln -s ${toolchain}/local usr/local"; - }; - in pkgs.stdenv.mkDerivation { - name = "genode-fhs-shell"; - nativeBuildInputs = [ fhs ]; - shellHook = "exec genode-env"; - }); + let + devShell' = forAllSystems ({ system, localSystem, crossSystem }: + let + pkgs = nixpkgsFor.${system}; + fhs = pkgs.buildFHSUserEnv { + name = "genode-env"; + targetPkgs = pkgs: + (with pkgs; [ + binutils + bison + nixpkgsFor.${localSystem}.buildPackages.clang + expect + flex + git + glibc.dev + gnumake + libxml2 + qemu + tcl + which + xorriso + ]); + runScript = "bash"; + extraBuildCommands = let + toolchain = pkgs.fetchzip { + url = + "file://${packages.x86_64-linux-x86_64-genode.genodeSources.toolchain.src}"; + hash = + "sha256-26rPvLUPEJm40zLSqTquwuFTJ1idTB0T4VXgaHRN+4o="; + }; + in "ln -s ${toolchain}/local usr/local"; + }; + in pkgs.stdenv.mkDerivation { + name = "genode-fhs-shell"; + nativeBuildInputs = [ fhs ]; + shellHook = "exec genode-env"; + }); + in { x86_64-linux = devShell'.x86_64-linux-x86_64-genode; }; apps = # Utilities accessible via "nix run"