Skip to content

Instantly share code, notes, and snippets.

@idontgetoutmuch
idontgetoutmuch / stack.yaml
Created April 12, 2019 12:29
Stack -> cabal new
extra-deps:
- inline-r-0.9.2
- vector-0.12.0.1
- Frames-0.6.1
- vinyl-0.11.0
- discrimination-0.3
- inline-c-0.6.1.0
- git: https://github.com/idontgetoutmuch/Kalman.git
commit: 4926787e24fb122c34b2ad70fe402d6d71a547c1
- git: https://github.com/idontgetoutmuch/random-fu-multivariate.git
self: super:
{
mySundials = super.callPackage ./pkgs/sundials { };
myScikits-odes = super.callPackage ./pkgs/scikits-odes { };
}
# self: super:
# {
# mySundials = super.callPackage ./pkgs/sundials { };
# myScikits-odes = super.pythonPackages.callPackage ./pkgs/scikits-odes { sundials_3_lapack = self.mySundials; };
# }
self: super:
let
pythonOverlay = pself: psuper:
self: super:
let
pythonOverlay = pself: psuper:
{
sundials_3_lapack = pself.callPackage ./pkgs/sundials { };
myScikits-odes = pself.callPackage ./pkgs/scikits-odes { };
};
haskellOverlay = hself: hsuper:
{
my-random-fu-multivariate = hself.callPackage ./pkgs/random-fu-multivariate { };
{ compiler ? "ghc864"
, nixpkgs ? import <nixpkgs> {}
, packages ? (_: [])
, pythonPackages ? (_: [])
, rtsopts ? "-M3g -N2"
, systemPackages ? (_: [])
}:
import (./release.nix) { inherit compiler nixpkgs packages pythonPackages rtsopts systemPackages; }
self: super:
let
pythonOverlay = pself: psuper:
{
sundials_3_lapack = pself.callPackage ./pkgs/sundials { };
myScikits-odes = pself.callPackage ./pkgs/scikits-odes { };
};
haskellOverlay = hself: hsuper:
{
my-random-fu-multivariate = hself.callPackage ./pkgs/random-fu-multivariate { };
let
pkgs = import ../pkgs.nix;
haskellOverlay = hself: hsuper: {
my-random-fu-multivariate = hself.callPackage ./pkgs/random-fu-multivariate { };
};
in import "${pkgs.ihaskell}/release.nix" {
compiler = "ghc864";
nixpkgs = import pkgs.nixpkgs { overlays = [ haskellOverlay ]; };
packages = self: with self; [ my-random-fu-multivariate ];
let
pkgs = import ../pkgs.nix;
overlay = sel: sup: {
haskell = sup.haskell // {
packages = sup.haskell.packages // {
ghc864 = sup.haskell.packages.ghc864.override {
overrides = self: super: {
my-random-fu-multivariate = self.callHackage ./pkgs/random-fu-multivariate { };
my-cmaes = sel.haskell.lib.dontCheck (self.callPackage ./pkgs/cmaes { });
};
name: cmaes
version: 0.2.3
synopsis: CMA-ES wrapper in Haskell
description:
@cmaes@ is a wrapper for Covariance Matrix Adaptation Evolution
Strategy(CMA-ES), an evolutionary algorithm for difficult non-linear
non-convex optimization problems in continuous domain. To use this
package you need python2 with numpy available on your system. The
package includes @cma.py@ , Nikolaus Hansen's production-level CMA
{ system ? builtins.currentSystem }:
let
nixpkgs = builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs-channels/archive/nixos-19.03.tar.gz";
sha256 = "06cqc37yj23g3jbwvlf9704bl5dg8vrzqvs5y2q18ayg9sw61i6z";
};
in
import nixpkgs {
inherit system;
config = {}; # prevent nixpkgs from loading user configuration