taskell
taskell copied to clipboard
Install fails on Fedora 30
The recommended instructions for installing Taskell fail to work on Fedora 30:
$ cabal update
Downloading the latest package list from hackage.haskell.org
To revert to previous state run:
cabal update --index-state='2019-12-31T01:20:01Z'
$ cabal install taskell
Resolving dependencies...
cabal: Could not resolve dependencies:
[__0] trying: taskell-1.7.0.0 (user goal)
[__1] next goal: template-haskell (dependency of taskell)
[__1] rejecting: template-haskell-2.15.0.0 (conflict: taskell =>
template-haskell>=2.14.0.0 && <2.15)
[__1] rejecting: template-haskell-2.14.0.0 (only already installed instances
can be used)
[__1] rejecting: template-haskell-2.13.0.0, template-haskell-2.12.0.0,
template-haskell-2.11.1.0, template-haskell-2.11.0.0,
template-haskell-2.10.0.0, template-haskell-2.9.0.0, template-haskell-2.8.0.0,
template-haskell-2.7.0.0, template-haskell-2.6.0.0, template-haskell-2.5.0.0,
template-haskell-2.4.0.1, template-haskell-2.4.0.0, template-haskell-2.3.0.1,
template-haskell-2.3.0.0, template-haskell-2.2.0.0 (conflict: taskell =>
template-haskell>=2.14.0.0 && <2.15)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, taskell, template-haskell
I've been a bit rubbish at updating the hackage versions (where cabal pulls from). Have just uploaded the latest one now (and updated the build script to automatically do it from now on).
Run cabal update then give it another go. Hopefully 1.8.2 should install ok.
New version number, same problem:
$ cabal install taskell
Resolving dependencies...
cabal: Could not resolve dependencies:
[__0] trying: taskell-1.9.0.0 (user goal)
[__1] next goal: template-haskell (dependency of taskell)
[__1] rejecting: template-haskell-2.15.0.0 (conflict: taskell =>
template-haskell>=2.14.0.0 && <2.15)
[__1] rejecting: template-haskell-2.14.0.0 (only already installed instances
can be used)
[__1] rejecting: template-haskell-2.13.0.0, template-haskell-2.12.0.0,
template-haskell-2.11.1.0, template-haskell-2.11.0.0,
template-haskell-2.10.0.0, template-haskell-2.9.0.0, template-haskell-2.8.0.0,
template-haskell-2.7.0.0, template-haskell-2.6.0.0, template-haskell-2.5.0.0,
template-haskell-2.4.0.1, template-haskell-2.4.0.0, template-haskell-2.3.0.1,
template-haskell-2.3.0.0, template-haskell-2.2.0.0 (conflict: taskell =>
template-haskell>=2.14.0.0 && <2.15)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, taskell, template-haskell
Taskell seems to want template-haskell-2.14 but Cabal refuses to install it because "only already installed instances can be used".
It turns out that when I installed Cabal using dnf install cabal-install, version 2.13.0.0 of template-haskell was installed in the system as a dependency. This does not fulfill the requirements of Taskell and seems to interfere with a satisfactory version being installed. If there's any chance a lower version of template-haskell would be sufficient, it would make installation much easier for me.
I attempted to install Taskell inside a sandbox to isolate it from the system template-haskell version but it gives the same error. Unfortunately, Cabal sandboxes do not appear to provide a facility for isolating from installed system packages, at least in version 2.2.0.0 which I'm running.
Have you tried building with Stack? I honestly don't know much about the Cabal build process and I'm not sure I'm going to have time to set up a Fedora VM to test it any time soon (sorry, just taken on an extra day at work).