haskell.nix
Alternative Haskell Infrastructure for Nixpkgs (by input-output-hk)
penrose
Haskell to JavaScript compiler, based on GHC (by ghcjs)
haskell.nix | penrose | |
---|---|---|
16 | 16 | |
599 | 2,618 | |
0.5% | 0.0% | |
9.7 | 0.0 | |
4 days ago | over 2 years ago | |
Nix | Haskell | |
Apache License 2.0 | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
haskell.nix
Posts with mentions or reviews of haskell.nix.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2025-05-20.
-
Haskell Project Template with Nix Flakes
Haskell.nix -- a more flexible but complex option from IOHK.
-
Why does Nix have Haskell packages that are incompatible with GHC for a given version?
I'm not a great haskeller but I found haskell.nix better for Haskell projects, like the commenter on Discourse suggested. I've had a few issued regarding package versions with nixpkgs that haskell.nix solved.
-
Simple GHC stack for a novice
FWIW, there's also libraries like haskell.nix that solve the caching problem.
-
Any up-to-date cross-compiling methods for Raspberry Pi?
I would try haskell.nix.
-
Take the Nix Pill
If you want to hurt your brain, check out haskell.nix. That's some good stuff right there ^^
-
Trying to build a statically linked binary against glibc (Linux)
The haskell.nix framework is good for this.
-
GHC 9.4.1 Windows changes
One cool thing is that this will enable GHC builds using ucrt instead of vscrt in the future. Concretely, together with NixOS/nixpkgs#171418 and its follow-up NixOS/nixpkgs#173498), this will e.g. allow haskell.nix to upgrade to a newer wine pin for TH cross compilation: https://github.com/input-output-hk/haskell.nix/blob/dd13e822529ae5342494969bce8a457522a60100/overlays/wine.nix
-
How to make stack work like it's supposed to
I've been using IOHK's alternative infrastructure for this reason. It has its quirks but I've been happier with it. Before that I think I was using developPackage from the nixpkgs haskell tooling which had some introspection ability. You may consider trying that out. But as I remember this will not abide by your version bounds.
-
Announcing `safe-coloured-text`
There's a lot to like here. Alas, despite minimal dependencies, terminfo is somehow uniquely problematic in haskell.nix.
- A question about the current state of Haskell running natively on Apple silicon:
penrose
Posts with mentions or reviews of penrose.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-10.
-
Secretly introduced rust in my company, now they love it!
There is a fork that compiles to js https://github.com/ghcjs/ghcjs compiler, and I believe the official glasgow compiler is working towards also supporting js/wasm (although I don't think they are supported as of yet).
-
Resurrection/modernization of an old Haskell+Haste project (boardgame Yinsh)
I don't know anything about Haste, but you can get GHCJS 8.6 (or 8.10 with a bloated executable) via nix fairly easily or alternatively wait until the JS target recently merged into mainline ghc gets production ready: https://engineering.iog.io/2023-01-26-ghc-update.
-
How does GHC built from source set header search path?
Ah GHCJS does have this header: https://github.com/ghcjs/ghcjs/blob/ghc-8.10/lib/boot/data/include/stg/DLL.h
- Haskell, JS, and WebDev?
-
Status of GHCJS for larger projects
It seems like https://github.com/ghcjs/ghcjs/issues/821 is a rigid dealbreaker for any sizable project.
-
GHCJS or Asterius
About the FFI: GHCJS extended the FFI to support inlined JS, named arguments, etc. See https://github.com/ghcjs/ghcjs/blob/master/doc/foreign-function-interface.md For now the JS backend only implements FFI calls similarly to native FFI. The rest will be open to discussion later (e.g. in a ghc-proposal) and should take into account the Wasm backend so that the same user code compiles with both backends as much as possible.
- Just few questions on Miso and GHCjs
-
Memory from finished thread is not getting reclaimed
Other than that, I ran into a GHCJS and Miso bug, but they weren't too hard to solve.
-
GHC Pluggable Backend?
There are a bunch of open branches. And yes, there is ghcjs support in haskell.nix, see this comment.
-
Is GHCJS stuck on GHC 8.6.5?
When I compile the ghc-8.8 branch locally, I get a number of test failures from the test suite. I'm not sure exactly how to fix them and they aren't currently my highest hobby priority.
What are some alternatives?
When comparing haskell.nix and penrose you can also consider the following projects:
nixkell - A simple Nix-Haskell skeleton
ascii-art-to-unicode - Small program to convert ASCII box art to Unicode box drawings.
ghc-whole-program-compiler-project - GHC Whole Program Compiler and External STG IR tooling
rebase - A more progressive alternative to the "base" package
Cabal - Official upstream development repository for Cabal and cabal-install
safe - Haskell library for safe (pattern match free) functions