HORIZON HASKELLDocsSearch packagesCtrl K
Theme: |

9 sites

Horizon Haskell Handbook

Stable package sets for Haskell on nix

Horizon Haskell is a publishing system for creating and maintaining stable package sets for Haskell on Nix. Horizon also builds package sets for GHC's JavaScript backend: horizon-javascript has the libraries that run in the browser.

Stable package sets save development time by providing collections of packages known to build and work together. Horizon lets you compute custom stable package sets for Nix and store them as reusable inputs for your Haskell projects.

Horizon is built to recover packages that have fallen out of date, and to keep them building by finding compatibility issues ahead of major GHC releases.

At the revisions below, horizon-platform builds 1,143 packages against the GHC 10.0 pre-release and 1,097 against GHC 9.14.1, and horizon-advance builds 709 against the GHC 10.0 pre-release. Every Horizon package set is API-compatible with nixpkgs' haskellPackages, so you can try Horizon with any nixpkgs-compatible Haskell project.

For an overview of the project, listen to the Full Time Nix episode or watch the YouTube series on how the toolchain works. For questions, ask in #horizon-haskell:matrix.org.

(Note: The old video uses a Dhall config, but the new version of the tool uses Vortex)

Search packagesCtrl K

Binary cache

https://cache.openfp.netShow cache settings

CI-built outputs are cached at https://cache.openfp.net: with these settings Nix fetches them instead of building them.

nix.confsubstituter and key
extra-substituters = https://cache.openfp.net
extra-trusted-public-keys = cache.openfp.net-1:ThN0P23SdgO8mRfZDCr0FZICFv9f2Llv1wqpfDoaMY4=
flake.nixnixConfig
nixConfig = {
  extra-substituters = "https://cache.openfp.net";
  extra-trusted-public-keys = "cache.openfp.net-1:ThN0P23SdgO8mRfZDCr0FZICFv9f2Llv1wqpfDoaMY4=";
};