1 |
Announce: KDE multiple KDEDIRs support |
2 |
----------------------------------------------- |
3 |
|
4 |
I am now committing a new "kde scheme". It is considerably different from the |
5 |
previous one. All KDE users are strongly advised to follow the upgrading |
6 |
instructions below before emerging/remerging any KDE-related programs. |
7 |
|
8 |
There have been several such changes in the last weeks, and I understand |
9 |
remerging kde every time isn't pleasant. I've tried to make sure that the new |
10 |
scheme is scalable and customisable enough to satisfy everybody and not just |
11 |
the proverbial 99%, and is stable and solid enough to be used in its default |
12 |
configuration for many KDEs to come. (Reminder: we have support for running |
13 |
kde2 apps under kde3 and vice versa.) |
14 |
|
15 |
Short description: |
16 |
KDE 2,3 apps now install in /usr/kde/{2,3}, together with their respective |
17 |
kdelibs, not in /usr anymore. This allows for multiple KDEs (even more than |
18 |
two) and solves issues like the noatun crash-on-startup and the lack of icons |
19 |
in kdm, and some other things too. Also apps from different KDE trees can be |
20 |
run under any of the KDEs, which is a Gentoo-unique feature afaik. |
21 |
|
22 |
Upgrading instructions: |
23 |
Ideally, unmerge kde-base/* and all kde apps, then remerge them. |
24 |
Remerging kdelibs and kdebase should be enough though. However, in this case, |
25 |
after merging a new version of a kde app, unmerge all previous versions or |
26 |
strange things may happen! |
27 |
Before starting the new kde for the first time, rename your ~/.kde dir to |
28 |
~/.kde2, or it'll be deleted (kdebase2 creates a symlink .kde -> .kde2). |
29 |
|
30 |
Have fun! |
31 |
|
32 |
--- |
33 |
|
34 |
Detailed info: |
35 |
You don't need to read this unless you want to know how things work. |
36 |
Also, DO NOT USE the technique described here for enabling custom KDEDIRs! |
37 |
It is untested, unsupported and very un-standard. Please don't use it if you |
38 |
don't have to. It is only for those who really need it, and even they should |
39 |
wait a few days as I haven't really tested the non-standard KDEDIRs part yet. |
40 |
|
41 |
The previous setup was this: kdelibs 2,3 lived in /usr/kde/{2,3}. *All* other |
42 |
apps lived in /usr. Some (noatun, kdm...) and many Makefiles didn't like that |
43 |
at all. Also you couldn't have more than 1 version of a package, particularly |
44 |
of kdebase etc. So the whole multi-kdelibs idea was being wasted. |
45 |
|
46 |
Due to all the problems KDE's unique (severely non-standard :-( ) structure |
47 |
has presented, we have decided to abandon the attempt to make it behave in |
48 |
/usr and will now give it a tree of its own. |
49 |
|
50 |
The new setup: |
51 |
There are 2 variables with default values set in make.globals: |
52 |
KDE2DIR=/usr/kde/2 |
53 |
KDE3DIR=/usr/kde/3 |
54 |
|
55 |
kde.eclass (which all kde ebuilds use) directs all kde2 apps to install in |
56 |
KDE2DIR, and all kde3 apps in KDE3DIR. It also tells them to use a kdelibs |
57 |
installed there. Support for separating kdelibs and kde apps (for custom |
58 |
solutions) isn't yet in, wait a few days for that. |
59 |
|
60 |
A kde app installs into the current setting of KDE?DIR, so you can just |
61 |
change that and things will install into your custom kdedir. Again, users are |
62 |
highly discouraged from doing this! Detailed instructions and support for |
63 |
those who really do need it (e.g. kde developers) will follow in a few days. |
64 |
|
65 |
kdelibs adds the dir into which it installs to PATH (via env.d), and newer |
66 |
kdelibs have higher priority (are nearer the beginning of the path). So, if |
67 |
you install kde 2 and 3 (when 3 is available), KDE3DIR/bin will come before |
68 |
KDE2DIR/bin in your path. The same goes for KDE?DIR/lib in LDPATH. |
69 |
|
70 |
kdebase has a custom startkde script; it exports KDEDIR=<this kdebase's |
71 |
prefix>. It also symlinks ~/.kde to ~/.kde2 (for kdebase2) or ~/.kde3 (for |
72 |
kdebase3). It'll delete your ~/.kde, so back it up as per the instructions |
73 |
above. |
74 |
|
75 |
You'll have to configure your apps twice (once for kde2, once for kde3). When |
76 |
you start using kde2/3, that is, when kde3-final comes out. You might play |
77 |
with symlinks for the config files, or something like that, or I might come |
78 |
up with some automation for this in the future. |
79 |
|
80 |
kdm has a rather long list of session types, since the list is static all |
81 |
possibilities are included. The correct ones for kde are kde-$version i.e. |
82 |
kde-2.2.2 (the old setup had a symlink called kde). |
83 |
|
84 |
That's about it. Enjoy! |
85 |
|
86 |
|
87 |
-- |
88 |
Dan Armak |
89 |
Gentoo Linux, Desktop Team |
90 |
Matan, Israel |