about summary refs log tree commit diff
path: root/shell.nix
diff options
context:
space:
mode:
Diffstat (limited to 'shell.nix')
-rw-r--r--shell.nix34
1 files changed, 34 insertions, 0 deletions
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 000000000000..425eb0a191f2
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,34 @@
+{ useClang ? false }:
+
+with import <nixpkgs> {};
+
+(if useClang then clangStdenv else stdenv).mkDerivation {
+  name = "nix";
+
+  buildInputs =
+    [ curl bison flex libxml2 libxslt
+      bzip2 xz brotli
+      pkgconfig sqlite libsodium boehmgc
+      docbook5 docbook5_xsl
+      autoconf-archive
+      (aws-sdk-cpp.override {
+        apis = ["s3"];
+        customMemoryManagement = false;
+      })
+      autoreconfHook
+    ];
+
+  configureFlags =
+    [ "--disable-init-state"
+      "--enable-gc"
+    ];
+
+  enableParallelBuilding = true;
+
+  installFlags = "sysconfdir=$(out)/etc";
+
+  shellHook =
+    ''
+      configureFlags+=" --prefix=$(pwd)/inst"
+    '';
+}