Skip to content
Snippets Groups Projects
default.nix 1.87 KiB
{ 
  kapack ? import ( fetchTarball "https://github.com/oar-team/nur-kapack/archive/master.tar.gz") {}
}: 

with kapack.pkgs;

let self = rec {
  my-simgrid = kapack.simgrid-light.overrideAttrs(old: rec {
    version = "33035e7eeaee7a34efd75d675555eec32d34856a";
    src = kapack.pkgs.fetchgit rec {
      url = "https://framagit.org/simgrid/simgrid.git";
      rev = version;
      sha256 = "0a2w8qzw5sa7rccn6m0r6ifjcvzyadijfg8p3g2j6nhpav2rm2l7";
    };
    patches = [];
    doCheck = false;
  });

  my-batsim = (kapack.batsim.override { simgrid = my-simgrid; })
  .overrideAttrs(old: rec {
    version = "ccd208711985af2b10d726a29bd9396e4da8d6a6";
    src = kapack.pkgs.fetchgit rec {
      url = "https://framagit.org/batsim/batsim.git";
      rev = version;
      sha256 = "0sf6i70qh8jfl2vhmrvm9bjrwda4cf15v5xbpnq5gfb57fq87n8v";
    };
    patches = [];
  });

  my_batsched = kapack.batsched.overrideAttrs (attr: rec {
    name = "batmen";
    version = "b63e95fad46962572b1f1d6db5bda979ca20dae0"; # commit "clean nix file and update README"
    # version = "bab23fa5aa9c117d20fa74469147c1ce5fe58160";
    src = kapack.pkgs.fetchgit rec {
      url = "https://gitlab.irit.fr/sepia-pub/mael/batmen.git";
      # url = "https://framagit.org/batsim/batsched";
      rev = version;
      sha256 = "1q2s1f68j4wd8vzzzirpjp7851l342hq6dvd9ky5g62zdps5mqlj";
      # sha256 = "0r8qcvhy6ivx6flzl2lhxi1farkqp4w5w5635v83ckj7cc721njs";
    };
  });

  experiment_env = mkShell rec {
    name = "experiment_env";
    buildInputs = [
      # simulator
      my-batsim
      # scheduler implementations
      my_batsched
      # misc. tools to execute instances
      kapack.batexpe
      kapack.evalys
      (python3.withPackages 
        (ps: with ps; with python3Packages; [jupyter ipython pandas numpy matplotlib
          plotly pip tabulate pytz isodate ordered-set yattag])
      )
      curl
    ];
  };
};
in
  self