summaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorFelix Singer <felixsinger@posteo.net>2021-09-14 20:42:34 +0200
committerFelix Singer <felixsinger@posteo.net>2021-09-16 22:55:02 +0000
commit821311e23eec64747d68a2e42eeb26e61929d9b0 (patch)
treef296a72b3b3c57fdac44ffbcf9160020aa2de32c /util
parent40d2c04937480f4291bbe7d745a921c4f4e2c8e7 (diff)
util/nixshell: Add Nix shell for toolchain compilation
Add a Nix shell file which provides an environment for compilation of the coreboot toolchain. The Nix shell can be used by running the following command: $ nix-shell --pure util/nixshell/toolchain.nix The `--pure` parameter is optional, but it makes sure that the environment is as minimal as possible and does not contain any unrelated or unneeded software or configuration. Once compiled, the coreboot toolchain can be used without loading the shell environment. If `--pure` is used, SSL connections won't work since the `SSL_CERT_FILE` environment variable is not configured, which makes the build tool unable to download the source files. Thus, let it point to the system certificate store. Change-Id: I341ee28c5451d2c6cb4ff22de67161d99f4ca77a Signed-off-by: Felix Singer <felixsinger@posteo.net> Reviewed-on: https://review.coreboot.org/c/coreboot/+/57646 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
Diffstat (limited to 'util')
-rw-r--r--util/nixshell/toolchain.nix20
1 files changed, 20 insertions, 0 deletions
diff --git a/util/nixshell/toolchain.nix b/util/nixshell/toolchain.nix
new file mode 100644
index 0000000000..da252f268a
--- /dev/null
+++ b/util/nixshell/toolchain.nix
@@ -0,0 +1,20 @@
+with import <nixpkgs> {};
+
+stdenvNoCC.mkDerivation {
+ name = "coreboot-toolchain";
+
+ buildInputs = [
+ bison
+ curl
+ flex
+ git
+ gnat11
+ gnumake
+ patch
+ zlib
+ ];
+
+ shellHook = ''
+ export SSL_CERT_FILE="/etc/ssl/certs/ca-certificates.crt"
+ '';
+}