Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
rstudio-0.98.953 suddenly requires ALL the haskell [SOLVED?]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
ExecutorElassus
Veteran
Veteran


Joined: 11 Mar 2004
Posts: 1435
Location: Berlin, Germany

PostPosted: Sun Jul 06, 2014 4:53 am    Post subject: rstudio-0.98.953 suddenly requires ALL the haskell [SOLVED?] Reply with quote

The July 4th update to rstudio -- and another on the 5th -- added rstudio-0.98.953 and rstudio-0.98.935 to the tree, both of which have the following variable in RDEPEND:

Code:
 app-text/pandoc
        dev-haskell/pandoc-citeproc


On my system, these pull in the following haskell packages:

Code:
[ebuild  N     ] dev-lang/ghc-7.6.3-r1  USE="gmp -binary -doc -ghcbootstrap -ghcmakebinary -llvm"
[ebuild  N     ] app-admin/haskell-updater-1.2.1
[ebuild  N     ] dev-haskell/cabal-1.18.1.3  USE="-profile {-test}"
[ebuild  N     ] dev-haskell/text-1.1.1.3  USE="-developer -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/transformers-0.4.1.0  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/data-default-class-0.0.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/byteable-0.1.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/asn1-types-0.2.3  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/syb-0.4.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/random-1.0.1.1-r1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/utf8-string-0.3.8  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/zlib-0.5.4.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/base64-bytestring-1.0.0.1  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/cereal-0.4.0.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/dlist-0.7.1  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/primitive-0.5.3.0  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/binary-0.7.2.1  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/split-0.2.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/rfc5051-0.1.0.3  USE="-doc -hscolour -mkunicodedata -profile"
[ebuild  N     ] dev-haskell/extensible-exceptions-0.1.1.4  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/digest-0.0.1.2  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/mtl-2.2.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/vector-0.10.11.0  USE="boundschecks -doc -hscolour -internalchecks -profile -unsafechecks"
[ebuild  N     ] dev-haskell/hashable-1.2.2.0  USE="gmp sse2 -doc -hscolour -profile -sse4_1 {-test}"
[ebuild  N     ] dev-haskell/blaze-builder-0.3.3.2  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/crypto-pubkey-types-0.4.2.2  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/transformers-base-0.4.2  USE="orphaninstances -doc -hscolour -profile"
[ebuild  N     ] dev-haskell/securemem-0.1.3  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/cryptohash-0.11.6  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/tagsoup-0.13.1  USE="-doc -download -hscolour -profile"
[ebuild  N     ] dev-haskell/mmorph-1.0.3  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/xml-1.3.13  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/hs-bibutils-5.0  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/list-0.5.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/cmdargs-0.10.7  USE="quotation -doc -hscolour -profile -testprog"
[ebuild  N     ] dev-haskell/tf-random-0.5  USE="-profile"
[ebuild  N     ] dev-haskell/mime-types-0.1.0.4  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/data-default-instances-old-locale-0.0.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/data-default-instances-containers-0.0.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/data-default-instances-dlist-0.0.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/data-default-instances-base-0.0.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/parsec-3.1.5  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/unordered-containers-0.2.4.0  USE="-debug -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/asn1-encoding-0.8.1.3  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/scientific-0.3.2.1  USE="bytestring-builder -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/exceptions-0.6.1  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/monad-control-0.3.3.0  USE="instancest -doc -hscolour -profile"
[ebuild  N     ] dev-haskell/crypto-random-0.0.7  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/crypto-cipher-types-0.0.9  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/pem-0.2.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/data-default-0.5.3  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/blaze-markup-0.6.1.0  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/case-insensitive-1.2.0.0  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/hexpat-0.20.6  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/nats-0.2  USE="hashable -doc -hscolour -profile"
[ebuild  N     ] dev-haskell/zip-archive-0.2.3.2  USE="-doc -executable -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/hslua-0.3.6.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/happy-1.19.3  USE="-doc {-test}"
[ebuild  N     ] dev-haskell/quickcheck-2.7.5  USE="template_haskell -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/regex-base-0.93.2-r1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/network-2.5.0.0  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/attoparsec-0.12.1.0  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/lifted-base-0.2.3.0  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/http-types-0.8.5  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/temporary-1.2.0.3  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/blaze-html-0.7.0.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/cipher-aes-0.2.7  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/crypto-numbers-0.2.3  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/semigroups-0.15.1  USE="bytestring containers hashable text unordered-containers -doc -hscolour -profile"
[ebuild  N     ] dev-haskell/alex-3.1.3  USE="-doc {-test}"
[ebuild  N     ] dev-haskell/regex-pcre-builtin-0.94.4.8.8.35  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/publicsuffixlist-0.1  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/cookie-0.4.1.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/asn1-parse-0.8.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/cipher-des-0.0.6  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/cipher-rc4-0.1.4  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/aeson-0.7.0.6  USE="-developer -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/x509-1.4.11  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/resourcet-1.1.2.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/http-4000.2.17  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/crypto-pubkey-0.2.4  USE="-benchmark -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/void-0.6.1  USE="-doc -hscolour -profile -safe"
[ebuild  N     ] dev-haskell/highlighting-kate-0.5.8.3  USE="-doc -executable -hscolour -pcre-light -profile"
[ebuild  N     ] dev-haskell/streaming-commons-0.1.3  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/socks-0.5.4  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/cprng-aes-0.5.2  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/x509-store-1.4.4  USE="-doc -executable -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/pandoc-types-1.12.3.3  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/conduit-1.1.6  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/http-client-0.3.3.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/aeson-pretty-0.7.1  USE="-doc -hscolour -lib-only -profile"
[ebuild  N     ] dev-haskell/texmath-0.6.6.3  USE="-cgi -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/yaml-0.8.8.3  USE="-doc -hscolour -no-exe -profile -system-libyaml {-test}"
[ebuild  N     ] dev-haskell/x509-validation-1.5.0  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/x509-system-1.4.5  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/tls-1.2.8  USE="compat -doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/connection-0.2.1  USE="-doc -hscolour -profile"
[ebuild  N     ] dev-haskell/http-client-tls-0.2.1.2  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/http-conduit-2.1.2.3  USE="-doc -hscolour -profile {-test}"
[ebuild  N     ] app-text/pandoc-1.12.4.2-r1  USE="http-conduit -doc -embed_data_files -hscolour -profile {-test}"
[ebuild  N     ] dev-haskell/pandoc-citeproc-0.3.1  USE="bibutils hexpat network -doc -embed_data_files -hscolour -profile {-test} -test_citeproc -unicode_collation"
This seems ... excessive. I tried blocking a couple, and emerge failed due to missing dependencies.

How is it that adding a couple haskell dependencies to rstudio adds in ALL the haskell? What was the rationale for adding those two RDEPEND variables in the first place? Aside from masking >rstudio-0.98.500, is there a way around this that doesn't involve installing this whole mess?

Cheers,

EE


Last edited by ExecutorElassus on Mon Sep 15, 2014 1:35 pm; edited 1 time in total
Back to top
View user's profile Send private message
mackal
Tux's lil' helper
Tux's lil' helper


Joined: 04 Aug 2011
Posts: 92

PostPosted: Sun Jul 06, 2014 5:03 am    Post subject: Reply with quote

Looks like a new feature depends on pandoc, which depends on all the Haskell. Best situation would be able to disable that feature, but I have no idea of it supports that :/
Back to top
View user's profile Send private message
gienah
Developer
Developer


Joined: 24 Nov 2010
Posts: 212
Location: AU

PostPosted: Sun Jul 06, 2014 10:07 am    Post subject: Reply with quote

That is a pretty heavy dependency. Looking on the bright side, at least I bumped all
the haskell stuff in portage (which took days) just before the rstudio bump (which the
dev that bumped rstudio said took several hours, I'm not sure he has forgiven me
for nagging him to bump it).

You probably want to use the binary use flag for dev-lang/ghc.

When low level haskell packages like dev-haskell/text are bumped, it causes
lots of rebuilds of the other stuff. The haskell dependencies are complicated which
emerge sometimes has trouble trying to figure out what to do. If emerge
can figure it out, then it only builds the immediate reverse dependencies, then
its necessary to run:

Code:
haskell-updater


to rebuild more of the reverse dependencies, and after that, to try the original
emerge again.
Back to top
View user's profile Send private message
ExecutorElassus
Veteran
Veteran


Joined: 11 Mar 2004
Posts: 1435
Location: Berlin, Germany

PostPosted: Sun Jul 06, 2014 10:25 am    Post subject: Reply with quote

I'm hoping there's a USE variable to set so that it doesn't install any of them. I'm not too thrilled about maintaining a crapload of haskell stuff just so that rstudio can have some markup-conversion capability that I might never need. Here's hoping.

Cheers,

EE
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Mon Jul 07, 2014 4:22 am    Post subject: Reply with quote

ExecutorElassus wrote:
I'm hoping there's a USE variable to set so that it doesn't install any of them. I'm not too thrilled about maintaining a crapload of haskell stuff just so that rstudio can have some markup-conversion capability that I might never need. Here's hoping.

A USE flag would make sense, especially given that it worked without this before. Depends on how important that dep is to whatever it does. It does seem odd to need haskell for an R project, though.
Back to top
View user's profile Send private message
gienah
Developer
Developer


Joined: 24 Nov 2010
Posts: 212
Location: AU

PostPosted: Mon Jul 07, 2014 5:59 am    Post subject: Reply with quote

The pandoc dep is a new feature, it looks like a hard dependency to me:

http://www.rstudio.com/products/rstudio/release-notes/

If you like you could try asking the rstudio developers if the pandoc
dependency could be made conditional:

https://support.rstudio.com/hc/communities/public/topics

However if pandoc was not available it appears to me that it would
break all of the R markdown functionality in rstudio. Unpacking
the rstudio tarball and running:
Code:
grep -r pandoc

Seems to indicate that pandoc is a hard dependency.

I guess you could try breaking it yourself on your machine, maybe
you could try:

Code:
mkdir -p /usr/local/portage/sci-mathematics/rstudio
cd /usr/local/portage/sci-mathematics/rstudio
cp -pR /usr/portage/sci-mathematics/rstudio/* .
sed -e '/app-text\/pandoc/d' -e '/dev-haskell\/pandoc-citeproc/d' -i rstudio-0.98.953.ebuild
repoman fix
emerge -av sci-mathematics/rstudio::x-portage
Back to top
View user's profile Send private message
ExecutorElassus
Veteran
Veteran


Joined: 11 Mar 2004
Posts: 1435
Location: Berlin, Germany

PostPosted: Mon Jul 07, 2014 7:59 am    Post subject: Reply with quote

There is, in fact, already a(n admittedly rudimentary) question about this on the forum:

https://support.rstudio.com/hc/communities/public/questions/200825318-pandoc-citeproc-dependency.

Here's hoping they address it.
Back to top
View user's profile Send private message
ExecutorElassus
Veteran
Veteran


Joined: 11 Mar 2004
Posts: 1435
Location: Berlin, Germany

PostPosted: Thu Aug 14, 2014 10:17 am    Post subject: Reply with quote

So, now there's this posting, which suggests that all that haskell stuff is just to install a more recent version of pandoc needed by rmarkdown.

That seems like a supremely wasteful way to ensure the most recent version of pandoc is on a system, especially when rstudio seems to ship with a version that works.

Is there a way to patch the ebuild to circumvent it trying to do what is pretty self-evidently needless and wasteful?

Cheers,

EE
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Thu Aug 14, 2014 1:23 pm    Post subject: Reply with quote

There's always a way to patch an ebuild; that's the whole point of the format. No idea how effective it will be, nor do I use haskell or R. Best bet is to get help in #gentoo-dev-help and don't forget to learn #bash properly ;)
Back to top
View user's profile Send private message
ExecutorElassus
Veteran
Veteran


Joined: 11 Mar 2004
Posts: 1435
Location: Berlin, Germany

PostPosted: Mon Sep 15, 2014 1:34 pm    Post subject: Reply with quote

hrm. Welp, the haskell stuff disappeared after a version bump to 0.9.1028. The reason for all the haskell in the first place was a hard dependency for a particular version of pandoc-citeproc; since the local installation didn't have it, rstudio tried to build it from source (thus all the haskell). Maybe with time the local installation caught up, or the ebuild now follows the patch I posted earlier.

Anyway, the problem went away, so, uh, [SOLVED], I guess?

Yay?

EE
Back to top
View user's profile Send private message
ExecutorElassus
Veteran
Veteran


Joined: 11 Mar 2004
Posts: 1435
Location: Berlin, Germany

PostPosted: Sun Aug 30, 2015 6:59 pm    Post subject: Reply with quote

Ha ha, remember this thread, and how I thought the issue was solved?

It seems to have returned with 0.99.473-r1, in that it requires pandoc-citeproc again (which, along with ALL the haskell, is masked on my system for this very reason).

Guess I'll go ask #gentoo-dev-help?

Cheers,

EE
Back to top
View user's profile Send private message
gienah
Developer
Developer


Joined: 24 Nov 2010
Posts: 212
Location: AU

PostPosted: Fri Sep 11, 2015 12:13 am    Post subject: Reply with quote

This thread discusses updating haskell packages:
https://forums.gentoo.org/viewtopic-t-1028484.html
In the 7th post is this suggested alternative to editing the sci-mathematics/rstudio ebuild to hack out the
dev-haskell/pandoc and dev-haskell/pandoc-citeproc dependencies.
hasufell wrote:
volca wrote:
I don't develop with haskell, it was more than likely pulled in as a dependency for something else. I can't even remember what program that would be, but I don't think that's important right now..

It was very likely pandoc.

You can just do
Code:
cabal install pandoc

as user, add '~/.cabal/bin' to your PATH and tell portage it is already installed in 'package.provided'.

And likewise with pandoc-citeproc.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum