I'm using gentoo on a Server without any X11. Now I want to update cups (from
ver. 1.1.23-r1 to ver. 1.1.23-r4) but for this new version the ebuild depends on
xpdf and so the whole X-system is requestet for installation.
Why is xpdf needed for this new version?
What can I do, to prevent this?
Steps to Reproduce:
1.emerge -uv cups
request for installation of the whole X-system
updateting cups only
Portage 18.104.22.168-r3 (default-linux/x86/2005.0, gcc-3.3.6, glibc-2.3.5-r2,
System uname: 2.6.14-gentoo-r4 i686 Pentium III (Katmai)
Gentoo Base System version 1.6.13
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
dev-lang/python: 2.3.5-r2, 2.4.2
sys-devel/autoconf: 2.13, 2.59-r6
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
CFLAGS="-march=pentium3 -msse -mmmx -O2 -pipe -fomit-frame-pointer"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium3 -msse -mmmx -O2 -pipe -fomit-frame-pointer"
FEATURES="autoconfig distcc distlocks sandbox sfperms strict"
USE="x86 acl apache2 apm arts avi berkdb bitmap-fonts bzip2 cdb crypt cups eds
emboss encode expat foomaticdb f
ortran gd gdbm gif gpm gstreamer imagemagick imlib ipv6 jpeg lcms libg++ libwww
mad mhash mikmod motif mp3 mpeg
mysql ncurses nls ogg oggvorbis opengl oss pam pcre pdflib perl png python
quicktime readline recode samba sdl
slang spell ssl tcpd tetex tiff truetype truetype-fonts type1-fonts udev
unicode userlocales vorbis xml2 xmms
xv zlib userland_GNU kernel_linux elibc_glibc"
Unset: ASFLAGS, CTARGET, LDFLAGS, LINGUAS, MAKEOPTS
I had the same issue
the problem isn't that cups-1.1.23-r4 need xpdf.
it's that USE='motif' is the default, and xpdf pulls X w/ motif.
# USE="-motif" emerge cups
does this solve your problem?
cups has an old version of xpdf in it's codebase. We don't use it, because we
want to reduce the proliferation of copies of xpdf (witness the recent security
bug for xpdf, which caused some 6 packages to be updated). Instead, we make
cups dep on xpdf. You don't need X or motif on your xpdf package for cups to be
Thanks, that solved my Problem. Sometimes, the answer is so near...
*** Bug 115678 has been marked as a duplicate of this bug. ***
*** Bug 115850 has been marked as a duplicate of this bug. ***
*** Bug 115852 has been marked as a duplicate of this bug. ***
maybe Bug #115863 helps here?
*** Bug 116012 has been marked as a duplicate of this bug. ***
*** Bug 116079 has been marked as a duplicate of this bug. ***
IMHO, it shouldn't be necessary to include USE="-motif" in order to prevent X11 (and any other ebuilds depending on it) from being installed, no matter for which package (IOW: USE="-X" should be sufficient). This is a rather fundamental question though.
*** Bug 116411 has been marked as a duplicate of this bug. ***
*** Bug 116428 has been marked as a duplicate of this bug. ***
*** Bug 116429 has been marked as a duplicate of this bug. ***
OK, can't we have a separate ebuild for whatever xpdf installs currently with USE="-X -motif"? Would be a much saner solution than an ebuild that requires a use flag to install the main binary... My understanding is that it would also be useful for more ebuilds, not just cups.
1. My personal belief is that motif should be off by default in the profile.
2. It helped me realise that if I'm not using X (ie: not a workstation) I likely want the hardened profile which disables motif by default.
3. I should put "x11-base/xorg-x11" in /etc/portage/package.mask so it never emerges xorg-x11.
It'd be nice if it could have check like if [[ has_use X && has_use motif ]]; then emerge with xpdf w/ motif - a short-term solution... I admit I don't know how integral the xpdf stuff is but wouldn't a minimal flag on xpdf be warented to install the base libraries but not the viewer? Of course then you still have a problem of minimal not being the default action.
I'm trying to recommend solutions as I think a dummie ebuild should be avoided if possible.
No, long term solution is poppler. We're working on getting poppler to replace all the non-X functions of xpdf, leaving xpdf *just* installing the xpdf binary. Just disable motif for now and be patient, help is on the way.
according to previous bad experiences due to default profile, I suggest you have a look at default flags in there.
USE="-X -doc" emerge -vtp foo
that shows up the reason of deps, and what the deps depend on ... to skip Xorg installation, I some times have to revers to negative a large dozen of flags. I would not be surprised xpdf is induced by '+doc'.
(In reply to comment #16)
> No, long term solution is poppler. We're working on getting poppler to replace
> all the non-X functions of xpdf, leaving xpdf *just* installing the xpdf
> binary. Just disable motif for now and be patient, help is on the way.
Okay, but this help is perhaps on vacation ;^P <duck_run_hide>
Anycase, I believe the logic for the fix would be as easy as this:
USE="-X" (Or whatever to prevent x from building)
add MOTIF as a dependency
... now to get a manual on the snake's language to be able to fix it myself :(
this bug is already solved in the latest ~x86 xpdf poppler and cups, have a look at it!
(In reply to comment #18)
> ... now to get a manual on the snake's language to be able to fix it myself :(
Leave snakes alone, this is already fixed in the latest xpdf/cups versions... :P
Okay, after adding poppler and cups into /etc/portage/package.keywords:
# emerge --pretend cups
These are the packages that I would merge, in order:
Calculating dependencies /
!!! All ebuilds that could satisfy "x11-proto/xextproto" have been masked.
!!! One of the following masked packages is required to complete your request:
- x11-proto/xextproto-7.0.2 (masked by: package.mask, ~x86 keyword)
# Donnie Berkholz <email@example.com> (07 Aug 2005)
# Modularized X, upstream release candidates
For more information, see MASKED PACKAGES section in the emerge man page or
refer to the Gentoo Handbook.
!!! (dependency required by "x11-libs/qt-3.3.4-r8" [ebuild])
(In reply to comment #21)
> !!! All ebuilds that could satisfy "x11-proto/xextproto" have been masked.
> !!! One of the following masked packages is required to complete your request:
> - x11-proto/xextproto-7.0.2 (masked by: package.mask, ~x86 keyword)
> # Donnie Berkholz <firstname.lastname@example.org> (07 Aug 2005)
> # Modularized X, upstream release candidates
> For more information, see MASKED PACKAGES section in the emerge man page or
> refer to the Gentoo Handbook.
> !!! (dependency required by "x11-libs/qt-3.3.4-r8" [ebuild])
(In reply to comment #21)
Please, don't clutter this bug with irrelevant comments. You need to unmask the dependencies when using modular X ebuilds, exactly as with any other ebuild. Additionally, this has nothing in common with cups, as you can see above the dependency is required by x11-libs/qt-3.3.4-r8
That's caused by qt, not by xpdf. You probably have partially unmasked modular X. If you are using modular X, try re-copying the mask from /usr/portage/profiles/package.mask to /etc/portage/package.unmask, as packages have been added to that mask several times.
*** Bug 117463 has been marked as a duplicate of this bug. ***
*** Bug 117947 has been marked as a duplicate of this bug. ***