Hello, On Thu, 31 Jul 2014, Anton Aylward wrote:
On 07/31/2014 11:31 AM, Cristian Rodríguez wrote:
El 31/07/14 a las #4, Anton Aylward escribió:
So, right now, given that I'm not using wayland, and as you say probably won't be for some while, can I simply delete these?
You can't. unless you want a system without X or a desktop environment. Currently removing the first package triggers removal of ~400 packages.
WTF! Why? Is this a real dependency that the code has to be there, even if we're not using Wayland, or is this simply "yes another stupid packaging issue"?
It's a matter of dynamic linking. You can either link to a lib, then you'll need that lib to be installed, or you don't. The only alternative is dynamic linking (cue plugins for e.g. vlc), but that has its own traps. I guess, with libwayland* (as with most other libs) it is just not possible to load these libs dynamically via libdl. So, you have to link to these libs, thus you need to install the libs. AFAIR they won't get actually loaded into memory until actually used. If you do not install all linked-to libs, you'll just get a linker error, when you try to run the program. You'll have to look closely at the dependencies, some you can ignore (explicitly set deps in a "aggregating" package (see below)), some you can not. E.g.: $ rpm -q --requires kdebase4-runtime | grep soprano libsoprano.so.4()(64bit) libsopranoserver.so.1()(64bit) soprano-backend-redland $ rpm -qa '*soprano*' libsoprano4-2.8.0-122.5.x86_64 "libsoprano.so.4()(64bit)" is a real dependency of at least one program/lib packaged in kdebase4-runtime, but "soprano-backend-redland" is a "manual explicit" dep, which I can ignore as I do not intend to ever use soprano. The programs using soprano will still run, as libsoprano* are installed, but their soprano-functionality won't. Same with wayland. You'll need the libwayland*, but not wayland itself and you can ignore manual deps on it if you do now want to use wayland. Actually: many such "explicit manual" deps could be "Recommends", or programs needing a lib could be split out into a seperate package. Vlc (vlc-noX, vlc (uses gtk), vlc-qt, libvlc*) is a prime example how it can be done. But the program(s) need to be seperatable as vlc is too. HTH, -dnh -- Freeman Dyson recounts how the RAF tried hard to locate the admin hq for German aircraft production, found it, bombed it into oblivion... and were horrified when German aircraft production rates went *up* -- Henry Spencer -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org