diff --git a/pkgs/development/compilers/clash-ghc/default.nix b/pkgs/development/compilers/clash-ghc/default.nix new file mode 100644 index 00000000000..a7e87b78dc7 --- /dev/null +++ b/pkgs/development/compilers/clash-ghc/default.nix @@ -0,0 +1,33 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, bifunctors, clashLib, clashPrelude, filepath, ghcPaths +, hashable, haskeline, lens, makeWrapper, mtl, text, transformers, unbound +, unorderedContainers, thLift +}: + +cabal.mkDerivation (self: { + pname = "clash-ghc"; + version = "0.4"; + sha256 = "0pyv8snrmy7x9gv6xna5rd5chacrdvczcjs7854b80pifhag5c2g"; + isLibrary = false; + isExecutable = true; + buildDepends = [ + bifunctors clashLib clashPrelude filepath ghcPaths hashable + haskeline lens mtl text transformers unbound unorderedContainers + thLift + ]; + buildTools = [ makeWrapper ]; + postInstall = '' + echo ${clashPrelude} + wrapProgram $out/bin/clash \ + --add-flags "-package-db ${clashPrelude}/lib/ghc-${self.ghc.version}/package.conf.d/${clashPrelude.fname}.installedconf" \ + --add-flags "-package-db ${thLift}/lib/ghc-${self.ghc.version}/package.conf.d/${thLift.fname}.installedconf" \ + --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"-package-db\")" + ''; + meta = { + homepage = "http://christiaanb.github.io/clash2"; + description = "CAES Language for Synchronous Hardware"; + license = "unknown"; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/clash-lib/default.nix b/pkgs/development/libraries/haskell/clash-lib/default.nix new file mode 100644 index 00000000000..40860d38911 --- /dev/null +++ b/pkgs/development/libraries/haskell/clash-lib/default.nix @@ -0,0 +1,24 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, aeson, attoparsec, concurrentSupply, contravariant +, deepseq, errors, fgl, filepath, hashable, lens, ListLike, mtl +, text, time, transformers, unbound, unorderedContainers +, uuParsinglib, wlPprintText +}: + +cabal.mkDerivation (self: { + pname = "clash-lib"; + version = "0.4"; + sha256 = "1c3bxjm356cs7wf49zlazbv44bw06rs81akmsfzkfccrl7gjy7yc"; + buildDepends = [ + aeson attoparsec concurrentSupply contravariant deepseq errors fgl + filepath hashable lens ListLike mtl text time transformers unbound + unorderedContainers uuParsinglib wlPprintText + ]; + meta = { + homepage = "http://christiaanb.github.io/clash2"; + description = "CAES Language for Synchronous Hardware - As a Library"; + license = "unknown"; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/clash-prelude/default.nix b/pkgs/development/libraries/haskell/clash-prelude/default.nix new file mode 100644 index 00000000000..b463b957e87 --- /dev/null +++ b/pkgs/development/libraries/haskell/clash-prelude/default.nix @@ -0,0 +1,16 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, dataDefault, thLift }: + +cabal.mkDerivation (self: { + pname = "clash-prelude"; + version = "0.6.0.1"; + sha256 = "0d929g7js15aagd1pa2lfbhd1yiykd0ngp6fv522yhy1yyijn1l7"; + buildDepends = [ dataDefault thLift ]; + meta = { + homepage = "http://christiaanb.github.io/clash2/"; + description = "CAES Language for Synchronous Hardware - Prelude library"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/concurrent-supply/default.nix b/pkgs/development/libraries/haskell/concurrent-supply/default.nix new file mode 100644 index 00000000000..7b91f2f018b --- /dev/null +++ b/pkgs/development/libraries/haskell/concurrent-supply/default.nix @@ -0,0 +1,16 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, hashable }: + +cabal.mkDerivation (self: { + pname = "concurrent-supply"; + version = "0.1.7"; + sha256 = "0crg4rm5wibw9h6lmsi43d280xg1xr9xbgqr9s4inxq7x0yyn68c"; + buildDepends = [ hashable ]; + meta = { + homepage = "http://github.com/ekmett/concurrent-supply/"; + description = "A fast concurrent unique identifier supply with a pure API"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 7aec36480d0..175cac83858 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -446,6 +446,10 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in circlePacking = callPackage ../development/libraries/haskell/circle-packing {}; + clashLib = callPackage ../development/libraries/haskell/clash-lib {}; + + clashPrelude = callPackage ../development/libraries/haskell/clash-prelude {}; + classyPrelude = callPackage ../development/libraries/haskell/classy-prelude {}; classyPreludeConduit = callPackage ../development/libraries/haskell/classy-prelude-conduit {}; @@ -526,6 +530,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in concurrentExtra = callPackage ../development/libraries/haskell/concurrent-extra {}; + concurrentSupply = callPackage ../development/libraries/haskell/concurrent-supply {}; + converge = callPackage ../development/libraries/haskell/converge {}; cookie = callPackage ../development/libraries/haskell/cookie {}; @@ -3104,6 +3110,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in arbtt = callPackage ../applications/misc/arbtt {}; + clashGhc = callPackage ../development/compilers/clash-ghc {}; + idris_plain = callPackage ../development/compilers/idris {}; idris = callPackage ../development/compilers/idris/wrapper.nix {};