The stable upgrade path from texlive 2012 to texlive 2014 leads to a hard blocker on every machine where the german localization is enabled. Here's an example output. The USE change is not typical and unrelated to the problem. The message about a Boost slot conflict is also unrelated (and goes away once all other things are fixed). (All can be resolved by doing "emerge -aC dev-texlive/texlive-langgerman" first, but that's not really the most user-friendly way to do it...) (Leaving two identically configured machines in current state for debugging purposes.) pc1011300176 ~ # emerge -uDNav world These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild U ] dev-util/boost-build-1.56.0::gentoo [1.55.0::gentoo] USE="-examples -python {-test}" PYTHON_TARGETS="python2_7%*" 92.557 KiB [ebuild N ] app-arch/lzip-1.16::gentoo 85 KiB [ebuild U ] dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo [1.55.0-r2:0/1.55.0::gentoo] USE="nls threads -context -debug -doc -icu -mpi -python -static-libs -tools" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7 python3_3 -python3_4" 0 KiB [ebuild U ] sys-apps/coreutils-8.23::gentoo [8.21::gentoo] USE="acl nls -caps -gmp -multicall% (-selinux) -static -vanilla -xattr" 5.298 KiB [ebuild U ] sys-devel/bc-1.06.95-r1::gentoo [1.06.95::gentoo] USE="readline -libedit -static" 284 KiB [ebuild U ] sys-apps/ed-1.10::gentoo [1.6::gentoo] 63 KiB [ebuild U ] dev-lang/spidermonkey-17.0.0-r4:17::gentoo [17.0.0-r3:17::gentoo] USE="-debug -jit -minimal -static-libs {-test}" 6.621 KiB [ebuild U ] dev-python/pytest-2.7.1::gentoo [2.6.3::gentoo] USE="-doc {-test}" PYTHON_TARGETS="python2_7 python3_3 (-pypy) (-pypy3) -python3_4" 520 KiB [ebuild U ] dev-python/ssl-fetch-0.3::gentoo [0.2::gentoo] PYTHON_TARGETS="python2_7 python3_3 (-pypy) -python3_4" 12 KiB [ebuild U ] dev-libs/kpathsea-6.2.0_p20140525:0/6.2.0::gentoo [6.1.0_p20120701:0/0::gentoo] USE="-doc -source -static-libs" 40.722 KiB [ebuild U ] app-text/ps2pkm-1.5_p20140525::gentoo [1.5_p20120701::gentoo] 0 KiB [ebuild U ] dev-tex/bibtexu-3.71_p20140525::gentoo [3.71_p20120701::gentoo] USE="-doc% -source%" 10 KiB [ebuild U ] app-text/dvipsk-5.994_p20140525::gentoo [5.992_p20120701::gentoo] USE="-doc -source" 146 KiB [ebuild U ] app-text/texlive-core-2014-r4::gentoo [2012-r1::gentoo] USE="X xetex* -cjk -doc -source -tk" 1.028 KiB [blocks b ] <app-text/texlive-core-2013 ("<app-text/texlive-core-2013" is blocking dev-libs/kpathsea-6.2.0_p20140525, dev-tex/bibtexu-3.71_p20140525, dev-texlive/texlive-fontutils-2014) [uninstall ] dev-tex/luatex-0.70.1-r2::gentoo USE="-doc" [blocks b ] dev-tex/luatex ("dev-tex/luatex" is blocking app-text/texlive-core-2014-r4) [uninstall ] app-text/dvipdfmx-20110311-r1::gentoo [blocks b ] app-text/dvipdfmx ("app-text/dvipdfmx" is blocking app-text/texlive-core-2014-r4) [ebuild U ] app-admin/puppet-3.7.3-r1::gentoo [3.7.3::gentoo] USE="ldap -augeas -diff -doc -emacs -minimal -rrdtool (-selinux) -shadow -sqlite% {-test} -vim-syntax -xemacs (-sqlite3%)" RUBY_TARGETS="ruby19 ruby20" 0 KiB [ebuild U ] sys-libs/e2fsprogs-libs-1.42.13::gentoo [1.42.12::gentoo] USE="nls -static-libs" ABI_X86="(64) -32 (-x32)" 592 KiB [ebuild U ] sys-fs/e2fsprogs-1.42.13::gentoo [1.42.12::gentoo] USE="nls -static-libs" 6.360 KiB [ebuild U ] sys-apps/help2man-1.46.6::gentoo [1.45.1::gentoo] USE="nls" 168 KiB [ebuild NS ] sys-devel/automake-1.15:1.15::gentoo [1.14.1:1.14::gentoo] 1.462 KiB [ebuild U ] www-client/firefox-31.8.0::gentoo [31.7.0::gentoo] USE="dbus jit minimal startup-notification -bindist -custom-cflags -custom-optimization -debug -gstreamer -hardened (-pgo) -pulseaudio (-selinux) -system-cairo -system-icu -system-jpeg -system-libvpx -system-sqlite {-test} -wifi" LINGUAS="de -af -ar -as -ast -be -bg -bn_BD -bn_IN -br -bs -ca -cs -csb -cy -da -el -en_GB -en_ZA -eo -es_AR -es_CL -es_ES -es_MX -et -eu -fa -fi -fr -fy_NL -ga_IE -gd -gl -gu_IN -he -hi_IN -hr -hu -hy_AM -id -is -it -ja -kk -km -kn -ko -ku -lt -lv -mai -mk -ml -mr -nb_NO -nl -nn_NO -or -pa_IN -pl -pt_BR -pt_PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv_SE -ta -te -th -tr -uk -vi -xh -zh_CN -zh_TW -zu" 145.637 KiB [ebuild R ] x11-libs/fltk-1.3.2:1::gentoo USE="cairo opengl pdf threads* xft* xinerama -debug -doc -examples -games -static-libs" 4.162 KiB [ebuild U ] sys-libs/pam-1.2.1::gentoo [1.1.8-r2::gentoo] USE="berkdb cracklib nls pie%* -audit -debug -nis (-selinux) {-test} -vim-syntax" ABI_X86="(64) -32 (-x32)" 1.729 KiB [ebuild U ] net-misc/openssh-6.9_p1-r2::gentoo [6.7_p1::gentoo] USE="X hpn ldap pam pie ssl%* -X509 -bindist -debug% -kerberos -ldns -libedit -sctp (-selinux) -skey -ssh1% -static" 1.498 KiB [ebuild U ] dev-texlive/texlive-basic-2014::gentoo [2012::gentoo] USE="-doc -source" 5.407 KiB [blocks b ] <dev-texlive/texlive-basic-2014 ("<dev-texlive/texlive-basic-2014" is blocking app-text/texlive-core-2014-r4) [uninstall ] dev-texlive/texlive-documentation-base-2012::gentoo USE="-source" [blocks b ] dev-texlive/texlive-documentation-base ("dev-texlive/texlive-documentation-base" is blocking dev-texlive/texlive-basic-2014) [ebuild U ] dev-texlive/texlive-latex-2014::gentoo [2012::gentoo] USE="-doc -source" 858 KiB [ebuild U ] dev-texlive/texlive-fontsrecommended-2014::gentoo [2012::gentoo] USE="-doc -source" 90.398 KiB [ebuild U ] dev-texlive/texlive-genericrecommended-2014::gentoo [2012::gentoo] USE="-doc -source" 210 KiB [ebuild U ] dev-texlive/texlive-fontutils-2014::gentoo [2012::gentoo] USE="-doc -source" 207 KiB [ebuild U ] dev-texlive/texlive-langgerman-2014::gentoo [2012::gentoo] USE="-doc -source" 278 KiB [ebuild U ] dev-texlive/texlive-genericextra-2014::gentoo [2012::gentoo] USE="-doc -source" 320 KiB [ebuild U ] dev-texlive/texlive-langenglish-2014::gentoo [2012::gentoo] USE="-doc -source" 28 KiB [ebuild U ] dev-texlive/texlive-fontsextra-2014::gentoo [2012::gentoo] USE="-doc -source" 217.237 KiB [ebuild U ] dev-texlive/texlive-pictures-2014::gentoo [2012::gentoo] USE="-doc -source" 2.517 KiB [ebuild U ] dev-texlive/texlive-latexrecommended-2014::gentoo [2012-r1::gentoo] USE="-doc -source" 7.229 KiB [ebuild U ] dev-texlive/texlive-pstricks-2014::gentoo [2012::gentoo] USE="-doc -source" 25.674 KiB [ebuild U ] dev-texlive/texlive-latexextra-2014::gentoo [2012::gentoo] USE="-doc -source" 8.861 KiB [ebuild U ] dev-texlive/texlive-science-2014::gentoo [2012-r1::gentoo] USE="-doc -source" 2.390 KiB [ebuild U ] dev-texlive/texlive-mathextra-2014::gentoo [2012-r1::gentoo] USE="-doc -source" 444 KiB [ebuild U ] dev-texlive/texlive-publishers-2014::gentoo [2012::gentoo] USE="-doc -source" 8.130 KiB [ebuild U ] dev-texlive/texlive-bibtexextra-2014::gentoo [2012-r1::gentoo] USE="-doc -source" 1.206 KiB [ebuild N ] dev-texlive/texlive-xetex-2014::gentoo USE="X -doc -source" 861 KiB [ebuild U ] dev-texlive/texlive-formatsextra-2014::gentoo [2012::gentoo] USE="-doc -source" 253 KiB [ebuild U ] dev-texlive/texlive-plainextra-2014::gentoo [2012::gentoo] USE="-doc -source" 298 KiB [uninstall ] dev-texlive/texlive-texinfo-2012::gentoo USE="-doc -source" [blocks b ] dev-texlive/texlive-texinfo ("dev-texlive/texlive-texinfo" is blocking dev-texlive/texlive-plainextra-2014) [ebuild U ] app-text/texlive-2014::gentoo [2012::gentoo] USE="X extra png publishers science truetype xml -cjk -context -detex -dvi2tty -epspdf -games -graphics -humanities -jadetex -luatex -metapost -music -omega -pdfannotextractor -pstricks -tex4ht -texi2html -xetex -xindy (-doc%) (-dvipdfm%)" LINGUAS="de en -af -ar -as -bg -bn -br% -ca -cs -cy -da -el -en_GB -eo -es -et -eu -fa -fi -fr -ga -gl -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it -ja -kn -ko -la -lo -lt -lv -ml -mn -mr -nb -nl -nn -no -or -pa -pl -pt -rm% -ro -ru -sa_IN -sco% -sk -sl -sq% -sr -sv -ta -te -th -tk -tr -uk -vi -zh (-bo%)" 0 KiB [blocks B ] <dev-texlive/texlive-langgerman-2013 ("<dev-texlive/texlive-langgerman-2013" is hard blocking dev-texlive/texlive-basic-2014) [blocks B ] <dev-texlive/texlive-latexrecommended-2014 ("<dev-texlive/texlive-latexrecommended-2014" is blocking dev-texlive/texlive-latex-2014, dev-texlive/texlive-fontsrecommended-2014) Total: 44 packages (40 upgrades, 2 new, 1 in new slot, 1 reinstall, 4 uninstalls), Size of downloads: 681.739 KiB Conflict: 8 blocks (2 unsatisfied) !!! Multiple package instances within a single package slot have been pulled !!! into the dependency graph, resulting in a slot conflict: dev-libs/boost:0 (dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo, ebuild scheduled for merge) pulled in by (no parents that aren't satisfied by other packages in this slot) (dev-libs/boost-1.55.0-r2:0/1.55.0::gentoo, installed) pulled in by dev-libs/boost:0/1.55.0 required by (app-office/libreoffice-bin-4.4.3.2:0/0::gentoo, installed) ^^^^^^^^^ dev-libs/boost:0/1.55.0= required by (app-text/libetonyek-0.1.1:0/0::gentoo, installed) ^^^^^^^^^^ (and 11 more with the same problems) It may be possible to solve this problem by using package.mask to prevent one of those packages from being selected. However, it is also possible that conflicting dependencies exist such that they are impossible to satisfy simultaneously. If such a conflict exists in the dependencies of two different packages, then those packages can not be installed simultaneously. You may want to try a larger value of the --backtrack option, such as --backtrack=30, in order to see if that will solve this conflict automatically. For more information, see MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook. * Error: The above package list contains packages which cannot be * installed at the same time on the same system. (dev-texlive/texlive-basic-2014:0/0::gentoo, ebuild scheduled for merge) pulled in by >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-xetex-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-fontutils-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-genericextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-fontsextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-pictures-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-plainextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (app-text/texlive-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-genericrecommended-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-pstricks-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-langenglish-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-langgerman-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-formatsextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-fontsrecommended-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-basic-2014 required by (dev-texlive/texlive-latex-2014:0/0::gentoo, ebuild scheduled for merge) (dev-texlive/texlive-latex-2014:0/0::gentoo, ebuild scheduled for merge) pulled in by >=dev-texlive/texlive-latex-2014 required by (dev-texlive/texlive-bibtexextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-latex-2008 required by (dev-texlive/texlive-formatsextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-latex-2014 required by (app-text/texlive-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-latex-2014 required by (dev-texlive/texlive-mathextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-latex-2014 required by (dev-texlive/texlive-publishers-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-latex-2014 required by (dev-texlive/texlive-latexrecommended-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-latex-2014 required by (dev-texlive/texlive-science-2014:0/0::gentoo, ebuild scheduled for merge) dev-texlive/texlive-latex required by (dev-tex/xcolor-2.11:0/0::gentoo, installed) >=dev-texlive/texlive-latex-2012 required by (dev-tex/revtex-4.1_p2-r1:0/0::gentoo, installed) (dev-texlive/texlive-fontsrecommended-2014:0/0::gentoo, ebuild scheduled for merge) pulled in by >=dev-texlive/texlive-fontsrecommended-2014 required by (dev-texlive/texlive-latexextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-fontsrecommended-2014 required by (dev-texlive/texlive-mathextra-2014:0/0::gentoo, ebuild scheduled for merge) >=dev-texlive/texlive-fontsrecommended-2014 required by (app-text/texlive-2014:0/0::gentoo, ebuild scheduled for merge) dev-texlive/texlive-fontsrecommended required by (dev-tex/leaflet-20041222:0/0::gentoo, installed) For more information about Blocked Packages, please refer to the following section of the Gentoo Linux x86 Handbook (architecture is irrelevant): https://wiki.gentoo.org/wiki/Handbook:X86/Working/Portage#Blocked_packages The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by dev-texlive/texlive-xetex-2014::gentoo # required by dev-texlive/texlive-formatsextra-2014::gentoo # required by app-text/texlive-2014::gentoo[extra] # required by @system # required by @world (argument) >=app-text/texlive-core-2014-r4 xetex
I thought portage could automatically unmerge hard blockers like it does for soft ones. If not, there's absolutely nothing we can do; iirc those problems are all of the like: texlive-basic-2014 installs new hyphenation configurations for german; whose support files are only provided by texlive-langgerman-2014+. However, all texlive-langgerman enable german hyphenations for latex & co. latex (or any language.dat/def, depending on what changed) formats cannot be rebuilt when both tl-basic-2014 and tl-langgerman-2012 are installed. The "latex" command does not work anymore. texlive-latex fails to build until you update or remove tl-langgerman. As a consequence, the following scenario is completely broken: - update tl-basic to 2014 while keeping tl-langgerman 2012 - update tl-latex -> boom. tl-basic cannot depend on tl-lang* of course since that'd be too easy :)
(In reply to Alexis Ballier from comment #1) > I thought portage could automatically unmerge hard blockers like it does for > soft ones. It's not implemented yet (bug 250286). > If not, there's absolutely nothing we can do; iirc those problems are all of > the like: > > texlive-basic-2014 installs new hyphenation configurations for german; whose > support files are only provided by texlive-langgerman-2014+. > However, all texlive-langgerman enable german hyphenations for latex & co. > > latex (or any language.dat/def, depending on what changed) formats cannot be > rebuilt when both tl-basic-2014 and tl-langgerman-2012 are installed. The > "latex" command does not work anymore. texlive-latex fails to build until > you update or remove tl-langgerman. > > As a consequence, the following scenario is completely broken: > - update tl-basic to 2014 while keeping tl-langgerman 2012 > - update tl-latex -> boom. > > tl-basic cannot depend on tl-lang* of course since that'd be too easy :) I'm not familiar enough with the texlive dependencies to make an informed suggestion here. Maybe an indirect dependency could enforce the required constraint though, using a virtual for indirection so that texlive-basic doesn't depend directly on texlive-langgerman.
(In reply to Alexis Ballier from comment #1) > I thought portage could automatically unmerge hard blockers like it does for > soft ones. > > If not, there's absolutely nothing we can do; iirc those problems are all of > the like: > > texlive-basic-2014 installs new hyphenation configurations for german; whose > support files are only provided by texlive-langgerman-2014+. > However, all texlive-langgerman enable german hyphenations for latex & co. > > latex (or any language.dat/def, depending on what changed) formats cannot be > rebuilt when both tl-basic-2014 and tl-langgerman-2012 are installed. The > "latex" command does not work anymore. texlive-latex fails to build until > you update or remove tl-langgerman. > > As a consequence, the following scenario is completely broken: > - update tl-basic to 2014 while keeping tl-langgerman 2012 > - update tl-latex -> boom. > > tl-basic cannot depend on tl-lang* of course since that'd be too easy :) Zac, would portage be able to temporarily unmerge the hard-blocked texlive-langgerman if it's only in PDEPEND of texlive?
(In reply to Andreas K. Hüttel from comment #3) > Zac, would portage be able to temporarily unmerge the hard-blocked > texlive-langgerman if it's only in PDEPEND of texlive? No, there's no support for anything like that yet.
(In reply to Zac Medico from comment #2) > I'm not familiar enough with the texlive dependencies to make an informed > suggestion here. Maybe an indirect dependency could enforce the required > constraint though, using a virtual for indirection so that texlive-basic > doesn't depend directly on texlive-langgerman. What I meant is that the dep from tl-basic to tl-lang* *have* to be negative since tl-lang* already (R)DEPEND on tl-basic; adding even an indirect dep would introduce circular deps which portage could never solve.