Ciaran McCreesh <[EMAIL PROTECTED]> posted [EMAIL PROTECTED], excerpted below, on Tue, 26 Aug 2008 14:20:44 +0100:
> On Tue, 26 Aug 2008 06:39:38 +0000 (UTC) Duncan <[EMAIL PROTECTED]> > wrote: >> But I think virtual works just fine for kde-base/kde, too, if one >> simply reads it literally -- it's a virtual package in that it doesn't >> install anything itself, even if it's a meta-package [...] > > So what does 'virtual' actually mean then, and how is it related to the > defined behaviour of this property? I'm unsure of whether that was intended to be a rhetorical question or not, so taking it literally... According to kdict/WordNet: 2: being such in essence or effect though not in actual fact Extending that to the technical/computing realm, again kdict, this time FOLDOC and Jargon file: <jargon, architecture> (Via the technical term virtual memory, probably from the term "virtual image" in optics) 1. Common alternative to logical; often used to refer to the artificial objects (like addressable virtual memory larger than physical memory) created by a computer system to help the system control access to shared resources. 2. Simulated; performing the functions of something that isn't really there. An imaginative child's doll may be a virtual playmate. Opposite of real or physical. So a virtual package would have the essence and effects of a real one (dependencies and the like) but not be "real" in some way (here, zero- install-cost, or more correctly, only the install cost of the dependencies). More directly, a package that doesn't actually install anything itself, only having dependencies that ensure other packages are installed. In original Gentoo usage, virtual packages didn't have ebuilds at all, but referred to dependencies that several different packages could provide, with the the profile generally specifying a default. Now many of them have ebuilds, but the general idea of not installing anything directly themselves, only thru dependencies, remains. This is equally true of the original no-ebuild virtuals, those ebuilds in the virtual/ categories, and various meta-packages such as kde and kde-meta. Thus, they fit the broader defintion of "virtual" in a literal sense, regardless of where they are located in the category tree. However, I like the idea someone else proposed as well. Move all these packages into the virtual category. That could of course be expanded to include java-virtuals if desired, since virtual is still part of the category name. Either as a single category or as anything with "virtual" in the category, this would make things easier for both the package manager (making the property unnecessary) and the user, who would then know on sight (in the tab-completion and in --pretend/ask as well as various $PM messages) which packages were virtual. Putting all virtual packages in the virtual category/ies would certainly simplify the task of explaining to confused users why removing say kde- base/games wanted to remove virtual/kde (instead of kde-base/kde), but wouldn't directly remove kdebase (tho emerge --depclean would then want to do so, until the user did an emerge --no-replace kdebase, at least), to use an example I saw in a different context recently. I therefore believe I like just moving them all to a *virtual*/ category better, thus obviating the need for that particular property in the first place. -- 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