Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 294025 - Components of KDE Runtime should always be installed if KDE Libraries are installed
Summary: Components of KDE Runtime should always be installed if KDE Libraries are ins...
Status: RESOLVED DUPLICATE of bug 295456
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] KDE (show other bugs)
Hardware: All Linux
: High major
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords: InOverlay
: 294155 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-11-22 09:12 UTC by Ben Cooksley
Modified: 2009-12-06 20:59 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Cooksley 2009-11-22 09:12:24 UTC
If components of KDE Runtime are missing, then certain components of KDE applications will not function correctly.

Symptoms of missing components:
- Global shortcuts not functioning
- No timezones listed in Plasma Clock timezone selection
- KIO slaves not being able to ask for passwords if required

Therefore I ask that if KDE Libs is emerged, then all components of KDE Runtime be automatically emerged as well.

The user should be prevented from removing any component of KDE Runtime or given a stern warning on removal that KDE may have functionality issues or abnormal behaviour ( as most applications simply expect all components to be present and functional )

Reproducible: Always
Comment 1 Tomáš Chvátal (RETIRED) gentoo-dev 2009-11-22 11:21:21 UTC
Minimal set of recommended packages if you want to use kde is kdebase-startkde. But one has to know what he is doing when using this subset.

For regular usage is kdebase-meta recommended, which is targeted for normal userbase.

If you are not using neither of these its not exactly our problem.
Comment 2 Ben Cooksley 2009-11-22 19:51:26 UTC
As stated here ( http://mail.kde.org/pipermail/kde-buildsystem/2009-October/006199.html ) kdebase/runtime is a Runtime Dependency for KDE applications.

Also stated by http://techbase.kde.org/Projects/Release_Team
Quote: "Applications required by KDE apps to function properly at runtime, such as a help browser, framework (e.g. phonon, solid) backends, and certain configuration modules"

KDE applications include those such as Digikam, Amarok, KTorrent, et. al. Pretty much anything that depends upon KDE Libs.

Quote: "And not exactly our problem". Unfortunately it is, when you are providing packages which are effectively broken, as KDE applications simply assume Runtime will be around. Then users think its a KDE issue and blame KDE when its actually Gentoo's fault.

Every other major distribution manages to follow this correctly.

Additional Consequences of a broken KDE-Runtime I forgot:
- KWallet unable to function
- No sounds playable by KDE
- Lack of the KDE Crash Handler, DrKonqi
- Dysfunctional Nepomuk configuration and indexing
- No previews or metadata for Rename dialogs
- Missing information on internationalisation ( country details such as preferred currency, etc )

This is causing KDE support issues with users who have incomplete runtime installations.

http://forum.kde.org/viewtopic.php?f=115&t=83870&p=138398
Comment 3 Jorge Manuel B. S. Vicetto (RETIRED) gentoo-dev 2009-11-22 22:49:57 UTC
There is a communication failure going on in this bug.
You're presenting KDE upstream's view on how KDE components work - and you've done so correctly. Tomas his explaining to you how Gentoo chose to package KDE components for the distro - and he was clear about it.
In this case, KDE and Gentoo have different views that in large part arise of the different goals and communities. For KDE upstream, what matters is that all KDE apps work and it's considered natural to have all of KDE installed. For Gentoo, what matters is to allow users to chose how little and how much of KDE they want on their systems. I also believe that the fact that most KDE devs work with and or are concerned with binary packages and have a strong preference for monolithic packages (upstream still releases KDE on a handful of tarballs) and that Gentoo devs work with source packages and have a strong preference for split/individual packages (Gentoo provides over 250 packages from the above handful of tarballs) contributes to this divergence of viewpoints.
So, even though kdebase and kdebase-workspace are expected by KDE to always be around, not all Gentoo users care or want to have some pieces of it as their particular choice of KDE apps doesn't require them. In Gentoo we distinguish between build and run time dependencies. In this bug were talking about run time deps. Our build system allows us to list dependencies for each app, so we can and do add the required deps for each app - we fix any missing mandatory deps that are reported on bugs. When the dependencies are optional (meaning that the app will work without them, even if partially impaired), we add them as we see fit. We may provide the choice to the user through a use dep, we may make it mandatory if we deem it extremely important or we may just warn the user that he needs to install the dep for feature A or B.
Finally, it has been our policy for KDE-4 to tell users that the minimum supported set of packages for KDE is kdebase-startkde and that for a "complete" KDE experience, users should install kdebase-meta or the @kdebase set - meaning the complete kdebase, kdebase-runtime and kdebase-workspace tarballs.
As such, this bug is invalid. If you feel our documentation isn't clear enough about the above policy, we'd be more than happy to accept patches to help improve it.
Comment 4 Ben Cooksley 2009-11-23 03:04:06 UTC
Is there anywhere I can see what kdebase-startkde contains / depends upon? I don't use Gentoo myself.

To Clarify, neither KDE-Base/Workspace or KDE-Base/Applications are expected by applications, only KDE-Base/Runtime is.
Comment 5 Jorge Manuel B. S. Vicetto (RETIRED) gentoo-dev 2009-11-23 11:03:02 UTC
You can see the list of dependencies at the following link in the RDEPEND section:
http://sources.gentoo.org/viewcvs.py/gentoo-x86/kde-base/kdebase-startkde/kdebase-startkde-4.3.3.ebuild?rev=1.1&view=markup
Comment 6 Jorge Manuel B. S. Vicetto (RETIRED) gentoo-dev 2009-11-23 11:07:46 UTC
*** Bug 294155 has been marked as a duplicate of this bug. ***
Comment 7 Maciej Mrozowski gentoo-dev 2009-11-29 19:58:41 UTC
Still reconsidering, so reopening.
Comment 8 Maciej Mrozowski gentoo-dev 2009-11-29 20:56:54 UTC
kdebase-runtime-meta has been added (thanks ABCD) as runtime dependency for all KDE4 applications. This change is due to 4.3.4. Still we make some runtime components optional (notably nepomuk, it should have been completely disabled considering the state it is now).
Comment 9 Ben Cooksley 2009-11-29 21:59:17 UTC
Thanks, that should help greatly.

Is there a place where the list of optional components for runtime can be found?
Comment 10 Maciej Mrozowski gentoo-dev 2009-11-30 01:21:31 UTC
http://git.overlays.gentoo.org/gitweb/?p=proj/kde.git;a=tree;f=kde-base/kdebase-runtime-meta;hb=HEAD

(for instance - semantic-desktop? ( $(add_kdebase_dep nepomuk) ) means nepomuk is optional via semantic-desktop USE flag)

It may differ as releases go - if 4.4 starts hard-depending on soprano (which is becoming a fact...), nepomuk will no longer be optional here, unless soprano/virtuoso is going to cause more harm than good that is.

KDE SC is going to become much more heavier for Gentoo users those who just want to use KDE apps and not KDE SC 4 Workspace: for instance consider amarok:

amarok
  oxygen-icons (~119 MB)
  kdelibs (~11 MB download)
  kdebase-runtime-meta (and all kdebase runtime apps!) (~7 MB download - not thar bad)
  soprano (here it's becoming funny)
    virtuoso (~63MB - only to get desktop tagging that works mostly only on nepomuk developers' machines - relational database server nr 1)
    redland, raptor, clucene, strigi
  mysql (~34MB download - reliational database server nr 2)

Someone is loosing a grip here.. first time in history of the world media player requires two database servers. Good luck with explaining to our users, *why*.
Comment 11 Ben Cooksley 2009-11-30 04:10:22 UTC
The runtime overlay looks fine, since Nepomuk is the only exclusion.

Your Oxygen Icons ebuild likely needs tweaking to ignore the scalable icons, since they are not needed ( and are only usable to artists )

ben@grace:~/kdesvn/kdesupport> du --max-depth=1 oxygen-icons/
23488   oxygen-icons/128x128
14472   oxygen-icons/32x32
15296   oxygen-icons/48x48
14432   oxygen-icons/22x22
116     oxygen-icons/.svn
11664   oxygen-icons/64x64
204     oxygen-icons/8x8
13892   oxygen-icons/16x16
23504   oxygen-icons/256x256
257516  oxygen-icons/scalable
374644  oxygen-icons/

This is from an SVN checkout from KDE's servers, so therefore the size is effectively doubled by SVN. The size of Oxygen without Scalable is therefore 58564, which is half what you specified.

As far as I am aware, Nepomuk is not needed at this stage by Amarok.


Comment 12 Tomáš Chvátal (RETIRED) gentoo-dev 2009-11-30 09:30:15 UTC
(In reply to comment #11)
> The runtime overlay looks fine, since Nepomuk is the only exclusion.
> 
> Your Oxygen Icons ebuild likely needs tweaking to ignore the scalable icons,
> since they are not needed ( and are only usable to artists )
> 
Yep but you still have to fetch complete tarball so it does not change the size. And basicaly issue is fetching not storing it on HDD here.
> As far as I am aware, Nepomuk is not needed at this stage by Amarok.
> 
Not now, but will be with KDE-4.4

Comment 13 Ben de Groot (RETIRED) gentoo-dev 2009-12-04 01:54:28 UTC
Pulling in all of kde-runtime adds a lot of bloat for users that just want individual kde packages (say k3b) and don't need all of that functionality.
I strongly recommend making this dependency optional, if enabled by default.
Gentoo users are very much used to having choice, so please give them the choice to turn this off.
Comment 14 Maciej Mrozowski gentoo-dev 2009-12-04 02:11:28 UTC
@yngwin

They have a choice - /etc/portage/profiles/package.provided is for those who think they understand dependencies better.
As we cannot track runtime-only dependencies for each executable in individual manner, we pull in kdebase-runtime-meta.
Comment 15 Samuli Suominen (RETIRED) gentoo-dev 2009-12-06 20:59:03 UTC
(In reply to comment #14)
> As we cannot track runtime-only dependencies for each executable in individual
> manner, we pull in kdebase-runtime-meta.

That doesn't make sense to me, but... closing as duplicate bug 295456, no need to have 2 open bugs for this. 



*** This bug has been marked as a duplicate of bug 295456 ***