Mike Myers posted <[EMAIL PROTECTED]>, excerpted below, on Sat, 25 Feb 2006 14:07:41 -0600:
> What do I use if I just want to re-emerge a single package with the same > useflags? Like if something broke or if I'm using an overlay? Like, if > I just wanted to reinstall noatun for instance. Is there a way to do > that without having to have everything else reemerged? If I use the > metapackage, the ebuild for any specific package is blocked by the > metapackage ebuilds. You don't seem to have the whole picture, yet. 1) KDE packages as shipped from upstream come in big huge tarballs, kdelibs, kdebase, kdemultimedia, etc, each of which contains a whole bunch of individual libraries and applications. 2) Gentoo's monolithic packages are these same huge tarballs. The trouble is, if there's a security issue or a minor fix in just one application or library, using the monolithic ebuilds means rebuilding the WHOLE big package, ALL of kdebase, for instance, if it's a konqueror or KHTML vulnerability, instead of just one or two smaller packages, as is the case with most other stuff. 3) For this reason, Gentoo developed split ebuilds -- individual packages for Konqueror, konqueror-libs, kwrite, etc, instead of kdebase, likewise for the others, kmail, knode, kontact, the various handheld syncro packages, instead of kdepim, etc. In addition to the above, this also makes it easier to install just the single apps you want, without having so many other dependencies, if you for instance normally run Gnome but want konqueror, but don't want konsole, as you use gterm. 4) Gentoo actually has three levels of KDE metapackage, as well. At the lowest level, corresponding directly to the individual monolithic packages, are the metapackages that merge all of the split packages in the that specific monolithic package. To merge all the split packages in kdebase, for example, simply emerge kdebase-meta. 5) Because the monolithic kdebase includes konqueror and konsole and all the others, it can't be installed at the same time as the individual split packages, so the split packages block the monolithic package that includes them. Likewise, the split-package meta, kdebase-meta, that would merge each individual split package in kdebase, blocks the kdebase monolithic package. 6) Above the monolithic packages on one side and the low-level meta-packages on the other (kdebase, monolithic, on the one side, kdebase-meta on the other, for example, Gentoo has metas-packages that combine them. kde is a virtual package that is composed of all the monolithic packages, kdebase, kdemultimedia, kdepim, etc. At the same overall level on the split ebuild side is kde-meta, which combines kdebase-meta, kdemultimedia-meta, kdepim-meta, etc, each of which itself combines multiple split packages. Thus, we have (the table works best in monospace): monolithic: split: kde (consists of) kde-meta (consists of) kdebase (has inside) kdebase-meta (consists of) konqueror (part of kdebase) konqueror (separate package) libkonqueror (part of kdebase) libkonqueror (separate package) konsole (part of kdebase) konsole (separate package) ... ... kdepim (has inside) kdepim-meta (consists of) kmail (part of kdepim) kmail (separate package) knode (part of kdepim) knode (separate package) ... ... kdemultimedia (has inside) kdemultimedia-meta (consists of) ... ... etc. etc. 7) If you want all of KDE, then, there are two simple ways to get it, emerging kde-meta, to get all the split packages, or emerging kde, to get all the monolithic packages. The split packages at each level block the monolithic packages at the same level, altho it *IS* possible to merge for instance kdebase (monolithic) and kdepim-meta, or kmail, with only its dependencies, since kdebase doesn't have any of the same packages as kdepim-multimedia. So... if you merged kde-meta, you have all the split packages. If you want to remerge one, just do it. You cannot, however, merge kdepim, for example, without unmerging kdepim-meta and all its components, since they are basically two different ways of packaging the exact same thing, so you choose one or the other. BTW, the Gentoo KDE plan is (well was, I believe still is) to only provide the split packages for KDE4 when it comes out, tentatively scheduled 4th quarter this year. The Gentoo monolithic builds likely won't be provided any more, thus once again simplifying things down to one packaging choice. There are some issues with that to clear up first, mostly having to do with architectures where the split KDE builds now take more than twice as long to build, and the arch is slow as it is so we're talking a week build-time instead of 3-4 days, but they are being worked on, and if all goes well... -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman in http://www.linuxdevcenter.com/pub/a/linux/2004/12/22/rms_interview.html -- gentoo-dev@gentoo.org mailing list