taskell icon indicating copy to clipboard operation
taskell copied to clipboard

Install fails on Fedora 30

Open joshhansen opened this issue 5 years ago • 3 comments

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

joshhansen avatar Dec 31 '19 06:12 joshhansen

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.

smallhadroncollider avatar Jan 01 '20 12:01 smallhadroncollider

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.

joshhansen avatar Jan 04 '20 00:01 joshhansen

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).

smallhadroncollider avatar Jan 14 '20 11:01 smallhadroncollider