FS#55683 - [shellcheck] Conflict between ghc and ghc-libs

Attached to Project: Community Packages
Opened by Karl Yngve Lervåg (lervag) - Tuesday, 19 September 2017, 19:46 GMT
Last edited by Eli Schwartz (eschwartz) - Tuesday, 19 September 2017, 23:36 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

Both `ghc` and `ghc-libs` install `/usr/bin/ghc-pkg`, and thus it seems they can't both be installed. However, both are required by `shellcheck`.

This seems to be a new and recent problem, and although I looked for solutions I was not able to find any.

Here is the output of `sudo pacman -Syu` that shows the relevant error message:

```
> sudo pacman -Syu
:: Synchronizing package databases...
core is up to date
haskell-core is up to date
extra is up to date
community is up to date
multilib is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Packages (2) ghc-libs-8.2.1-1 shellcheck-0.4.6-7

Total Installed Size: 160.37 MiB
Net Upgrade Size: 140.07 MiB

:: Proceed with installation? [Y/n]
(2/2) checking keys in keyring [################################] 100%
(2/2) checking package integrity [################################] 100%
(2/2) loading package files [################################] 100%
(2/2) checking for file conflicts [################################] 100%
error: failed to commit transaction (conflicting files)
ghc-libs: /usr/bin/ghc-pkg exists in filesystem
Errors occurred, no packages were upgraded.
```
This task depends upon

Closed by  Eli Schwartz (eschwartz)
Tuesday, 19 September 2017, 23:36 GMT
Reason for closing:  Not a bug
Additional comments about closing:  thirdparty repos are not supported, especially when they clash with the official packages.
Comment by Levente Polyak (anthraxx) - Tuesday, 19 September 2017, 20:13 GMT
looks like your mirror is not fully synced or such? only ghc-libs package contains a ghc-pkg file
Comment by Karl Yngve Lervåg (lervag) - Tuesday, 19 September 2017, 20:15 GMT
Ah, that sounds plausible.
Comment by Doug Newgard (Scimmia) - Tuesday, 19 September 2017, 23:26 GMT
Very likely a conflict with the haskell-core repo, which isn't supported.
Comment by Eli Schwartz (eschwartz) - Tuesday, 19 September 2017, 23:36 GMT
Well, considering that ghc and ghc-libs are part of the same base package, they are both in [community] and ghc depends on ghc-libs, you should not be able to get this result at all.
Not to mention, the dependency graph for shellcheck only mentions ghc-libs, and ghc itself is not listed even as a recursive dependency. ghc-libs was split out from ghc in 8.2.1

But... you have a thirdparty repo enabled -- haskell-core -- and not only that, it is configured to mask [extra] and [community]. Note that haskell-core still ships ghc 8.0.2-1 and has not yet imitated our repositories in splitting out ghc-libs. Meanwhile, you upgraded shellcheck from our repos, as haskell-core does not provide it.

This is the risk you run when using thirdparty repos which clash with the official repos. Please don't open bugreports again until after you make sure you can duplicate the issue when actually getting your packages from *us*.

Loading...