Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 687424 - dev-java/icedtea USE=-cups DEPENDs on net-print/cups
Summary: dev-java/icedtea USE=-cups DEPENDs on net-print/cups
Status: RESOLVED CANTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Andrew John Hughes
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-05 09:35 UTC by Alexander Weber
Modified: 2019-06-05 20:41 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Weber 2019-06-05 09:35:54 UTC
On my server the USE="-cups" is set in make.conf. I try to install icedtea, but the ebuild forces the net-print/cups installation.

Reproducible: Always

Steps to Reproduce:
Set USE="-cups" and try to emerge icedtea package.
Actual Results:  
These are the packages that would be merged, in order:

Calculating dependencies  .. ... done!
[ebuild  N     ] net-print/cups-2.2.11::gentoo  USE="X acl dbus pam ssl threads usb -debug -java -kerberos -lprng-compat -python (-selinux) -static-libs -systemd -xinetd -zeroconf" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild  N     ] net-print/cups-filters-1.21.6::gentoo  USE="dbus foomatic jpeg pdf png postscript tiff -ipp_autosetup -ldap -pclm -perl -static-libs -test -zeroconf" 0 KiB
[ebuild  N    ~] dev-java/icedtea-3.12.0:8::gentoo  USE="alsa gtk jbootstrap pch source system-lcms webstart (-cacao) -cups -doc -examples -headless-awt (-jamvm) -kerberos -libressl -nsplugin -pax_kernel -pulseaudio -sctp (-selinux) -shenandoah -smartcard -test -zero" 0 KiB


Expected Results:  
Icedtea should not request the cups package installation if USE="-cups" is set.
Otherwise the USE flag should be removed from icedtea package if cups cannot be optional.
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2019-06-05 10:52:35 UTC
RDEPEND="...
    cups? ( ${CUPS_COMMON_DEP} )
"
DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND}
Comment 2 Georgy Yakovlev gentoo-dev 2019-06-05 18:01:03 UTC
this is by design unfortunately.

cups required to build. but cups may be removed at runtime as it's not required to actually run.


the only suggestion I have if you want to skip cups completely is:

preferred way:
build and remove it right after. if you disable all use flags for cups it'll pull a lot less deps. but every time you build icedtea you'll have to install it again, you can save it (along with deps) as binpkg and quickly install and remove as needed.

Hacky way:
1) modify ebuild in your overlay not to pull cups
2) download cups manually and unpack it somewhere
3) pass EXTRA_ECONF which includes options
  --with-cups             specify prefix directory for the cups package
  --with-cups-include     specify directory for the cups include files

something like:
EXTRA_ECONF=" --with-cups-include /tmp/cups/cups-x.x.x/include"


i don't know if it'll work, you can try. We can't do that in main repo.

Closing this, as nothing reasonable can be done from gentoo side. It's openjdk  build system that requires cups at build time unconditionally.
Comment 3 Alexander Weber 2019-06-05 19:23:56 UTC
I compiled the icedtea and removed cups. The next "emerge -uvatDNj world" gives me:

Calculating dependencies... done!
[nomerge       ] dev-java/icedtea-3.12.0:8::gentoo  USE="alsa gtk jbootstrap pch source system-lcms webstart (-cacao) -cups -doc -examples -headless-awt (-jamvm) -kerberos -libressl -nsplugin -pax_kernel -pulseaudio -sctp (-selinux) -shenandoah -smartcard -test -zero" 
[nomerge       ]  net-print/cups-2.2.11::gentoo  USE="X acl dbus pam ssl threads usb -debug -java -kerberos -lprng-compat -python (-selinux) -static-libs -systemd -xinetd -zeroconf" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7" 
[ebuild  N     ]   net-print/cups-filters-1.21.6::gentoo  USE="dbus foomatic jpeg pdf png postscript tiff -ipp_autosetup -ldap -pclm -perl -static-libs -test -zeroconf" 0 KiB
[ebuild   R    ]    app-text/ghostscript-gpl-9.26::gentoo  USE="X cups* dbus gtk tiff unicode -static-libs" L10N="de (-ja) -ko -zh-CN -zh-TW" 0 KiB
[ebuild  N     ]     net-print/cups-2.2.11::gentoo  USE="X acl dbus pam ssl threads usb -debug -java -kerberos -lprng-compat -python (-selinux) -static-libs -systemd -xinetd -zeroconf" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7" 0 KiB


So it is not possible to remove cups the package. Other words it is not possible to update the system anymore without the package.
Comment 4 Georgy Yakovlev gentoo-dev 2019-06-05 20:37:29 UTC
try with --with-bdeps n -with-bdeps-auto n
or as alternative --exclude "cups cups-filters"

you will still need cups next time icedtea will get updated.

as alternative you can use icedtea-bin, which does not pull cups unless it's enabled.
Comment 5 Georgy Yakovlev gentoo-dev 2019-06-05 20:41:13 UTC
also to pull much less overall deps with cups disable all useflags on cups and cups-filters, this will be much more manageable and will not pull X, ghostscript and many more stuff.