79 lines
No EOL
3.4 KiB
Nix
79 lines
No EOL
3.4 KiB
Nix
let
|
|
buildDepError = pkg:
|
|
builtins.throw ''
|
|
The Haskell package set does not contain the package: ${pkg} (build dependency).
|
|
|
|
If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
|
|
'';
|
|
sysDepError = pkg:
|
|
builtins.throw ''
|
|
The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
|
|
|
|
You may need to augment the system package mapping in haskell.nix so that it can be found.
|
|
'';
|
|
pkgConfDepError = pkg:
|
|
builtins.throw ''
|
|
The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
|
|
|
|
You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
|
|
'';
|
|
exeDepError = pkg:
|
|
builtins.throw ''
|
|
The local executable components do not include the component: ${pkg} (executable dependency).
|
|
'';
|
|
legacyExeDepError = pkg:
|
|
builtins.throw ''
|
|
The Haskell package set does not contain the package: ${pkg} (executable dependency).
|
|
|
|
If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
|
|
'';
|
|
buildToolDepError = pkg:
|
|
builtins.throw ''
|
|
Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
|
|
|
|
If this is a system dependency:
|
|
You may need to augment the system package mapping in haskell.nix so that it can be found.
|
|
|
|
If this is a Haskell dependency:
|
|
If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
|
|
'';
|
|
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
|
|
{
|
|
flags = {};
|
|
package = {
|
|
specVersion = "2.4";
|
|
identifier = { name = "canvas"; version = "0.0.0.0"; };
|
|
license = "BSD-3-Clause";
|
|
copyright = "";
|
|
maintainer = "nek0@nek0.eu";
|
|
author = "nek0";
|
|
homepage = "";
|
|
url = "";
|
|
synopsis = "A test implementation for drawing images with SDL2 and OpenGL";
|
|
description = "";
|
|
buildType = "Simple";
|
|
isLocal = true;
|
|
};
|
|
components = {
|
|
exes = {
|
|
"canvas" = {
|
|
depends = [
|
|
(hsPkgs."base" or (buildDepError "base"))
|
|
(hsPkgs."affection" or (buildDepError "affection"))
|
|
(hsPkgs."sdl2" or (buildDepError "sdl2"))
|
|
(hsPkgs."OpenGL" or (buildDepError "OpenGL"))
|
|
(hsPkgs."OpenGLRaw" or (buildDepError "OpenGLRaw"))
|
|
(hsPkgs."GLUtil" or (buildDepError "GLUtil"))
|
|
(hsPkgs."JuicyPixels" or (buildDepError "JuicyPixels"))
|
|
(hsPkgs."JuicyPixels-extra" or (buildDepError "JuicyPixels-extra"))
|
|
(hsPkgs."stm" or (buildDepError "stm"))
|
|
(hsPkgs."containers" or (buildDepError "containers"))
|
|
(hsPkgs."linear" or (buildDepError "linear"))
|
|
(hsPkgs."bytestring" or (buildDepError "bytestring"))
|
|
(hsPkgs."random" or (buildDepError "random"))
|
|
];
|
|
buildable = true;
|
|
};
|
|
};
|
|
};
|
|
} // rec { src = (pkgs.lib).mkDefault ../.; } |