-
Notifications
You must be signed in to change notification settings - Fork 0
/
default.nix
43 lines (43 loc) · 1.36 KB
/
default.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
let
# pkgs = import <nixpkgs> {};
pkgs = let
nixpkgs-rev = "73392e79aa62e406683d6a732eb4f4101f4732be"; # nixos-unstable on 2019-07-03
in import (builtins.fetchTarball {
name = "nixpkgs-${nixpkgs-rev}";
url = "https://github.com/nixos/nixpkgs/archive/${nixpkgs-rev}.tar.gz";
# `git ls-remote https://github.com/nixos/nixpkgs-channels nixos-unstable`
}) {};
inherit (pkgs) lib;
in pkgs.mkShell {
buildInputs = with pkgs; [
(python3.withPackages(ps: with ps; [
# use my forked version of baselines
# (https://github.com/openai/baselines/pull/931 etc.)
(baselines.overrideAttrs (attrs: {
# src = lib.cleanSource /home/timo/repos/baselines; # for quick experimenting
src = pkgs.fetchFromGitHub {
owner = "timokau";
repo = "baselines";
rev = "02ba90d5f855961e70e7dd0e0eb0eb6c723fb2a1";
sha256 = "1ql6bskp41vfkiaprw4nfxy647j5gg360qgjhqxssh8yinfcc3xb";
};
}))
graph_nets
matplotlib
pydot
ipython
pycallgraph # profiling
numpy
scipy
multiprocess # multiprocessing with better serialization (lambdas)
psutil # load balancing
pylint
pytest
]))
graphviz # for pycallgraph profiling
];
shellHook = ''
export OPENAI_LOG_FORMAT=stdout,csv,tensorboard
export OPENAI_LOGDIR=$PWD/logs/$(date -Is)
'';
}