aboutsummaryrefslogtreecommitdiff
path: root/shell.nix
diff options
context:
space:
mode:
authorAdrian Kummerlaender2019-10-29 21:07:35 +0100
committerAdrian Kummerlaender2019-10-29 21:07:35 +0100
commit022f427afe9bab50ece321442f6a62899771bbbc (patch)
tree0ee76857a9f42371d4b9f549ff8444fe4ee22ed1 /shell.nix
parenta725685ddaa2eaa0711ceb51e1f74d09349d618e (diff)
downloadboltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.tar
boltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.tar.gz
boltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.tar.bz2
boltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.tar.lz
boltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.tar.xz
boltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.tar.zst
boltzgen_examples-022f427afe9bab50ece321442f6a62899771bbbc.zip
Merge shell environments
Diffstat (limited to 'shell.nix')
-rw-r--r--shell.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 0000000..0ccedfa
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,47 @@
+{ pkgs ? import <nixpkgs> { }, ... }:
+
+pkgs.stdenvNoCC.mkDerivation rec {
+ name = "boltzgen-env";
+ env = pkgs.buildEnv { name = name; paths = buildInputs; };
+
+ buildInputs = let
+ boltzgen = pkgs.python3.pkgs.buildPythonPackage rec {
+ pname = "boltzgen";
+ version = "0.1";
+
+ src = pkgs.fetchFromGitHub {
+ owner = "KnairdA";
+ repo = "boltzgen";
+ rev = "v0.1.1";
+ sha256 = "03fv7krhgc43gfjill8wb4aafr8xi69i2yh9zr68knnmrkrb8vpi";
+ };
+
+ propagatedBuildInputs = with pkgs.python37Packages; [
+ sympy
+ numpy
+ Mako
+ ];
+
+ doCheck = false;
+ };
+
+ local-python = pkgs.python3.withPackages (python-packages: with python-packages; [
+ boltzgen
+ numpy
+ pyopencl setuptools
+ matplotlib
+ ]);
+
+ in with pkgs; [
+ local-python
+ opencl-info
+ gcc9
+ cmake
+ ];
+
+ shellHook = ''
+ export NIX_SHELL_NAME="${name}"
+ export PYOPENCL_COMPILER_OUTPUT=1
+ export PYTHONPATH="$PWD:$PYTHONPATH"
+ '';
+}