View previous topic :: View next topic |
Author |
Message |
system_exit n00b
Joined: 07 Jul 2011 Posts: 22
|
Posted: Thu Jul 07, 2011 10:25 pm Post subject: Why is IcedTea Dependent on CUPS ? |
|
|
Can someone explain me why icedtea depends on CUPS?
It kind of irritates me because I had only problems wit CUPS and I am pretty much happy running LPRng - what I do no need is to screw my settings with CUPS installation. Can I get rid of the thing somehow ? |
|
Back to top |
|
|
aCOSwt Bodhisattva
Joined: 19 Oct 2007 Posts: 2537 Location: Hilbert space
|
Posted: Thu Jul 07, 2011 10:45 pm Post subject: |
|
|
Well I cannot explain why the OpenJDK builder dev-java/icedtea depends on CUPS, even less that dev/java/icedtea6-bin, that is the Gentoo binary build, does not depends on CUPS.
Would then mean that CUPS is a dependency required by the tools needed to build icedtea.
Anyway... while waiting for the exact reason... you might want to try CUPS-free icedtea6-bin. |
|
Back to top |
|
|
sera Retired Dev
Joined: 29 Feb 2008 Posts: 1017 Location: CET
|
Posted: Fri Jul 08, 2011 6:35 am Post subject: |
|
|
aCOSwt wrote: | Well I cannot explain why the OpenJDK builder dev-java/icedtea depends on CUPS, even less that dev/java/icedtea6-bin, that is the Gentoo binary build, does not depends on CUPS. |
Cups is an optional runtime dependency. If it's there java applications can print. If not an exception is raised attempting to do so. To be able to optionally use cups at runtime the headers need to be available at build time. That's why the binaries get away without this dependency.
aCOSwt wrote: | Would then mean that CUPS is a dependency required by the tools needed to build icedtea. |
Would be an ebuild bug.
aCOSwt wrote: | Anyway... while waiting for the exact reason... you might want to try CUPS-free icedtea6-bin. |
Or just install icedtea and don't bother configuring cups. |
|
Back to top |
|
|
aCOSwt Bodhisattva
Joined: 19 Oct 2007 Posts: 2537 Location: Hilbert space
|
Posted: Fri Jul 08, 2011 7:20 am Post subject: |
|
|
sera wrote: | Cups is an optional runtime dependency. If it's there java applications can print. If not an exception is raised attempting to do so. To be able to optionally use cups at runtime the headers need to be available at build time. That's why the binaries get away without this dependency. |
This makes sense. Thank you sera for this explanation. |
|
Back to top |
|
|
Sigma Kappa n00b
Joined: 04 Mar 2012 Posts: 45
|
Posted: Fri Jun 28, 2013 6:29 am Post subject: |
|
|
My laptop faces and issue of a circular dependency icedtea-bin <---> cups. Personally, I don't need either of them. I thought of breaking this cycle with building icedtea-bin, and could find a formula so that emerge does not complain: USE="-jpeg -cups -java" emerge icedtea-bin.
However, building icedtea without Java support (as suggested by the -java USE-flag) seems absurd.
Any comments on this?
Thank you. |
|
Back to top |
|
|
Slippery Jim Apprentice
Joined: 08 Jan 2005 Posts: 264
|
Posted: Sun Jan 04, 2015 2:38 am Post subject: |
|
|
I don't know, something seems wonky about this CUPS dependency. When I build icedtea, it requires that I build ghostscript[+cups], even if I have icedtea[-cups]. After building icedtea, running "emerge -cv --with-bdeps=n" removes cups (and ghostscript), but icedtea still has libcups linked. Running "emerge @preserved-rebuild" wants to rebuild icedtea, with ghostscript[+cups] again.
Shouldn't the cups headers be a build dependency of icedtea only, with no linkage of libcups if the USE flag is off? |
|
Back to top |
|
|
Ant P. Watchman
Joined: 18 Apr 2009 Posts: 6920
|
Posted: Sun Jan 04, 2015 2:56 am Post subject: |
|
|
Yep, it's idiotic, but upstream imposes this problem on everyone. IIRC the ebuild used to patch that dep out but it was unreliable (assumptions that you'd want to connect a parallel printer to your phone are baked in at all levels of Java...)
Good timing though, I've been cleaning up use flags this week and I've already figured out config files to minimise the amount of crap icedtea pulls in; one for desktop, one for headless.
In both cases I've only got it installed at all for the sake of minecraft/minecraft-server, so YMMV:
/etc/portage/package.use/desktop-java.conf: | # +jbootstrap allows us to unmerge icedtea-bin after building icedtea
dev-java/icedtea jbootstrap -alsa -cups -nsplugin -nss -source -webstart
# Minimize the damage CUPS does by turning everything we can off:
# Be warned that net-print/cups has a terrible QA track record, and -threads usually results in compile errors.
# The current ebuild as of this writing should work, however.
net-print/cups -ssl -threads LINGUAS: -*
# These are all unavoidable CUPS dependencies. + flags are mandatory, - flags are because we can.
app-text/ghostscript-gpl cups
app-text/poppler cxx lcms utils -introspection -jpeg
net-print/cups-filters -foomatic |
/etc/portage/package.use/server-java.conf: | dev-java/icedtea jbootstrap -X -alsa -cups -nsplugin -nss -source -webstart
# Mostly complete list of every unconditional dependency icedtea demands of us.
# USE flags removed where possible. For a server, this is kind of ridiculous...
app-arch/cpio -nls
app-arch/unzip -bzip2 -unicode
app-arch/zip -bzip2 -crypt -unicode
#dev-java/ant-core
dev-libs/atk -introspection
dev-libs/glib -mime
#dev-util/systemtap
#media-libs/alsa-lib
#media-libs/fontconfig
media-libs/freetype -adobe-cff -bzip2
#media-libs/giflib
media-libs/lcms -threads -zlib
#media-libs/libpng
net-print/cups -ssl -threads LINGUAS: -*
sys-apps/attr -nls
#sys-apps/lsb-release
#virtual/jpeg
#x11-libs/cairo
x11-libs/gdk-pixbuf -introspection
x11-libs/gtk+ -introspection
x11-libs/libX11 -ipv6
#x11-libs/libXau
#x11-libs/libXdmcp
#x11-libs/libXext
#x11-libs/libXi
#x11-libs/libXinerama
#x11-libs/libXrender
#x11-libs/libXt
#x11-libs/libXtst
x11-libs/pango -introspection
#x11-proto/inputproto
#x11-proto/xextproto
#x11-proto/xineramaproto
#x11-proto/xproto
# Forced dependencies of the above list. Enabled useflags where mandatory, disabled where possible.
# From net-print/cups:
app-text/ghostscript-gpl cups
app-text/poppler cxx lcms utils -introspection -jpeg
net-print/cups-filters -foomatic
# From x11-libs/gtk+:
x11-libs/cairo X svg -glib
# From x11-libs/pango:
media-libs/harfbuzz glib truetype -cairo -graphite -introspection |
|
|
Back to top |
|
|
|