Haskell: Difference between revisions

From NixOS Wiki
imported>Srid
m (Update URL)
imported>Srid
m (formatting)
Line 1: Line 1:
== Introduction ==
== Introduction ==


[https://www.srid.ca/1948201.html Nix recipes for Haskellers] aims to get a beginner comfortable managing simple Haskell programs and projects using Nix.
[https://www.srid.ca/1948201.html '''Nix recipes for Haskellers'''] aims to get a beginner comfortable managing simple Haskell programs and projects using Nix.


== FAQ ==
== FAQ ==


* '''How are Haskell packages managed in nixpkgs?''':  https://discourse.nixos.org/t/haskellpackages-stm-containers-fails-to-build/5416/4?u=srid
* [https://discourse.nixos.org/t/haskellpackages-stm-containers-fails-to-build/5416/4?u=srid '''How are Haskell packages managed in nixpkgs?''']


* '''How to fix broken Haskell packages?''': https://www.youtube.com/watch?v=KLhkAEk8I20
* [https://www.youtube.com/watch?v=KLhkAEk8I20 '''How to fix broken Haskell packages?''' (video)]


== Limitations ==
== Limitations ==


When using <code>cabal2nix</code>, Nix does not pull a cabal package by respecting the constraint specified in the cabal file (see [https://github.com/chrissound/Cabal2NixLimitationExample example]). Issue is discussed [https://stackoverflow.com/questions/57441156/pulling-in-specific-haskell-packages-cabal-dependencies-with-nix here]. You should be using `callCabal2nix` anyway.
When using <code>cabal2nix</code>, Nix does not pull a cabal package by respecting the constraint specified in the cabal file (see [https://github.com/chrissound/Cabal2NixLimitationExample example]). Issue is discussed [https://stackoverflow.com/questions/57441156/pulling-in-specific-haskell-packages-cabal-dependencies-with-nix here]. You should be using `callCabal2nix` anyway.

Revision as of 21:40, 11 August 2020

Introduction

Nix recipes for Haskellers aims to get a beginner comfortable managing simple Haskell programs and projects using Nix.

FAQ

Limitations

When using cabal2nix, Nix does not pull a cabal package by respecting the constraint specified in the cabal file (see example). Issue is discussed here. You should be using `callCabal2nix` anyway.