#Help Untangling Some Pandoc/Haskell Packages/Dependencies

1 messages · Page 1 of 1 (latest)

sharp nova
#

(Poster's Note: I can move this over to the forums if needed.)


System Information:

  • uname -a: Linux Bryces-HP-ZBook-17-G6-Windows 5.15.90.1-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz GenuineIntel GNU/Linux
  • WSL2 Host OS Version: Windows 11 Pro 22H2, build 22621.2283 (Windows Feature Experience Pack v1000.22662.1000.0)

(Additional information available on request as/if needed, naturally.)


1.) I somehow didn't notice when setting Portage up in my installation up to also use the official Haskell ebuild overlay that I needed to set an explicit priority for it. I've now fixed this and set it to the recommended value of 50.
2.) Meanwhile, though, between before and after fixing that, I ended up in a state where I see the following near the bottom of some output from emerge. (This'll follow shortly; it was too big to fit in one post.

(1/6)

#

(2/6:)

Output from emerge --pretend --verbose --update --deep --newuse --changed-slot=y --with-bdeps=y @world:

WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:

dev-haskell/ansi-terminal:0

  (dev-haskell/ansi-terminal-1.0:0/1.0::haskell, ebuild scheduled for merge) USE="-doc -example -hoogle -hscolour -profile" ABI_X86="(64)" conflicts with
    <dev-haskell/ansi-terminal-0.12:= required by (dev-haskell/ansi-wl-pprint-0.6.9:0/0.6.9::gentoo, installed) USE="-doc -examples -hscolour -profile" ABI_X86="(64)"
    ^                          ^^^^
    <dev-haskell/ansi-terminal-0.12:0/0.10.3= required by (dev-haskell/ansi-wl-pprint-0.6.9:0/0.6.9::gentoo, installed) USE="-doc -examples -hscolour -profile" ABI_X86="(64)"
    ^                          ^^^^^^^^^^^^^^
    >=dev-haskell/ansi-terminal-0.9.1:0/0.10.3= required by (dev-haskell/ansi-wl-pprint-0.6.9:0/0.6.9::gentoo, installed) USE="-doc -examples -hscolour -profile" ABI_X86="(64)"
                                     ^^^^^^^^^^
#

(3/6:)

Output from emerge --pretend --verbose --update --deep --newuse --changed-slot=y --with-bdeps=y @installed:

WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:

dev-haskell/ansi-terminal:0

  (dev-haskell/ansi-terminal-1.0:0/1.0::haskell, ebuild scheduled for merge) USE="-doc -example -hoogle -hscolour -profile" ABI_X86="(64)" conflicts with
    >=dev-haskell/ansi-terminal-0.9.1:0/0.10.3= required by (dev-haskell/ansi-wl-pprint-0.6.9:0/0.6.9::gentoo, installed) USE="-doc -examples -hscolour -profile" ABI_X86="(64)"
                                     ^^^^^^^^^^
    <dev-haskell/ansi-terminal-0.12:= required by (dev-haskell/ansi-wl-pprint-0.6.9:0/0.6.9::gentoo, installed) USE="-doc -examples -hscolour -profile" ABI_X86="(64)"
    ^                          ^^^^
    <dev-haskell/ansi-terminal-0.12:0/0.10.3= required by (dev-haskell/ansi-wl-pprint-0.6.9:0/0.6.9::gentoo, installed) USE="-doc -examples -hscolour -profile" ABI_X86="(64)"
    ^                          ^^^^^^^^^^^^^^

⁝ # Unrelated output stripped/trimmed.  
#

(4/6:)

dev-haskell/optparse-applicative:0

  (dev-haskell/optparse-applicative-0.18.1.0:0/0.18.1.0::haskell, ebuild scheduled for merge) USE="-doc -hoogle -hscolour -profile -test" ABI_X86="(64)" conflicts with
    >=dev-haskell/optparse-applicative-0.7:0/0.16.1.0= required by (dev-haskell/wai-app-static-3.1.7.2-r1:0/3.1.7.2::haskell, installed) USE="-doc -hoogle -hscolour -print -profile -test" ABI_X86="(64)"
                                          ^^^^^^^^^^^^
    >=dev-haskell/optparse-applicative-0.13:0/0.16.1.0= required by (dev-haskell/pandoc-crossref-0.3.16.0:0/0.3.16.0::haskell, installed) USE="-doc -hoogle -hscolour -profile -test" ABI_X86="(64)"
                                           ^^^^^^^^^^^^
    <dev-haskell/optparse-applicative-0.18:0/0.16.1.0= required by (dev-haskell/pandoc-crossref-0.3.16.0:0/0.3.16.0::haskell, installed) USE="-doc -hoogle -hscolour -profile -test" ABI_X86="(64)"
    ^                                 ^^^^^^^^^^^^^^^^
    <dev-haskell/optparse-applicative-0.18:= required by (dev-haskell/pandoc-crossref-0.3.16.0:0/0.3.16.0::haskell, installed) USE="-doc -hoogle -hscolour -profile -test" ABI_X86="(64)"
    ^                                 ^^^^
#

(5/6:)


dev-haskell/ansi-wl-pprint:0

  (dev-haskell/ansi-wl-pprint-1.0.2:0/1.0.2::haskell, ebuild scheduled for merge) USE="-doc -examples -hoogle -hscolour -profile" ABI_X86="(64)" conflicts with
    <dev-haskell/ansi-wl-pprint-0.7:0/0.6.9= required by (dev-haskell/optparse-applicative-0.16.1.0:0/0.16.1.0::gentoo, installed) USE="-doc -hscolour -profile -test" ABI_X86="(64)"
    ^                           ^^^^^^^^^^^^
    >=dev-haskell/ansi-wl-pprint-0.6.8:0/0.6.9= required by (dev-haskell/optparse-applicative-0.16.1.0:0/0.16.1.0::gentoo, installed) USE="-doc -hscolour -profile -test" ABI_X86="(64)"
                                      ^^^^^^^^^
    <dev-haskell/ansi-wl-pprint-0.7:= required by (dev-haskell/optparse-applicative-0.16.1.0:0/0.16.1.0::gentoo, installed) USE="-doc -hscolour -profile -test" ABI_X86="(64)"
    ^                           ^^^
#

(6/6:)

Can I fix this myself, or do I have to wait for an update to sync down to fix these issues?

ashen citrus
sharp nova
#

Ah, sure; didn't know that was a thing. I'll work on getting that sorted out.

Just the shell console output, or the whole multi-part post?

#

OK, that's emergeing now.

#

(Or I can just manually copy and paste it into a GitHub Gist or onto a pastebin web site.)

ashen citrus
#

Let's be fancy.
emerge --pretend --verbose --update --deep --newuse --changed-slot=y --with-bdeps=y @world > emerge.txt && wgetpaste emerge.txt

sharp nova
#

OK, here you go:

https://0x0.st/HfnX.out

(Ignore dev-libs/tree-sitter-bash; that's unrelated and has been around for a short while, and I'm not taking care of it right now.)

#

(And I know that one's blocked on a dependency update that hasn't hit the main Gentoo ebuild repository yet, anyway; I'll just wait for that to land.)

ashen citrus
sharp nova
#

It shows up for me if I visit the link in a browser, but sure.

ashen citrus
#

@sharp nova is there a version of ansi terminal that you would prefer to keep the most?

sharp nova
#

No; it's just a dependency for something else. (pandoc-crossref, it looks like, I think?) I'd simply like to keep my dependencies straight and up to date.

ashen citrus
#

okay lets masking anything that isn't the most recent version so try echo =dev-haskell/ansi-terminal-1.0:0/1.0::haskell >> /etc/portage/package.mask

#

let me know if this works :]

sharp nova
#

…🤦 The fix is obvious in hindsight.

Shouldn't the priority setting a applied later to prefer ::haskell over ::gentoo' for Haskell packages, or do I need to add a blanket pattern to mask all those, too?

ashen citrus
sharp nova
#

Nods.

sharp nova
#

Hmm, I think dev-haskell/pandoc-crossref::haskell is just broken right now; it pulls conflicting dependencies. I've played around with un-merging, re-merging, and reinstalling a small part of its dependency tree, but that couldn't get it to emerge properly. I've just uninstalled it for now. Now I'm cleaning up after myself by doing a @world update and a depclean.

hexed lava
#

You might be better off asking on irc

#

~show irc

#

where bot

#

~show IRC

#

give up

sharp nova
# ashen citrus That may not be the case.

This is the output I currently get from equery --no-color --no-pipe depgraph dev-haskell/pandoc-crossref --depth=3 after redirecting it to a file:

https://bpa.st/R4PQ

(There's at least one spurious irrelevant entry in there, but you get the idea.)

Notice how:

  • dev-haskell/ansi-terminal
  • dev-haskell/ansi-wl-pprint
  • dev-haskell/optparse-applicative

each appear not once, but twice in the dependency graph, and with different versions each time.

Unfortunately, equery depgraph doesn't appear to have an option to tell it to show it which ebuild repository it's pulling a dependency node in from.

ashen citrus
sharp nova
#

I couldn't get Portage to behave and resolve the dependency conflicts here no matter how I masked things, so I don't have anything Haskell-related masked right now.

(I have dev-lang/rust-bin masked, but that's unrelated.)

ashen citrus
sharp nova
#

I don't have 'testing' set as an accepted keyword, as far as I know. The Haskell ebuild overlay doesn't have any stable keywords, though.

#

I've hopped into their IRC; let's see if I can get any helpful discussion happening there…

ashen citrus
#

That's for the best sorry to let you down

sharp nova
#

Eh, you don't know what you don't know. 🤷‍♂️

ashen citrus
#

May I ask what channel?

#

nevermind I believe I am caught up

wispy garden
#

oh wait, no, you can even keep this version

#

the problem is with pandoc-crossref, it blocks new optparse-applicative, seems like

#

let me see if I can fix it

wispy garden
sharp nova
#

Oh, wow, thank you very much!

sharp nova
#

That emerge'd successfully! Thanks again!