1 |
Michael Palimaka posted on Sun, 03 Apr 2016 04:05:13 +1000 as excerpted: |
2 |
|
3 |
[snippy-snip] |
4 |
|
5 |
> If I understand correctly, at least part of the Plasma team does not |
6 |
> view optional dependencies as something that should be toggled lightly. |
7 |
> Rather, they would prefer they are always enabled unless being built on |
8 |
> a platform where that dependency doesn't make sense. |
9 |
> |
10 |
> While I am too personally in favour of as much being optional as |
11 |
> possible, I certainly appreciate their view - more options means more |
12 |
> complex code, more codepaths and more possibility for breakage. It's |
13 |
> been found in the past that many packages with optional dependencies |
14 |
> failed to build when those optional dependencies were missing, simply |
15 |
> because nobody has that configuration to test with. |
16 |
|
17 |
Of course this is one reason why even much of the FLOSS world considers |
18 |
gentooers insane. |
19 |
|
20 |
Of course we have our reasons, but equally importantly, viewed from a |
21 |
different angle, "exercising" those optional dependencies is valuable, |
22 |
for much the same reason attempting to build with llvm and friends, even |
23 |
if you don't recommend it for production use and default to gcc, is |
24 |
valuable. Similarly, building on all those exotic archs. In each case, |
25 |
while the benefit is arguably limited and may not in itself be worth the |
26 |
hassle, in the end it finds bugs, and patching them makes for a much |
27 |
stronger product all around, including when built with all recommended |
28 |
deps, with the default toolchain, on the most mainstream arch and OS of |
29 |
them all (generally considered to be 64-bit x86 for gnu/linux, these |
30 |
days, tho arguably only because the arm processors android/linux is |
31 |
normally deployed on are far more varied than x86, or they'd certainly |
32 |
take that crown) |
33 |
|
34 |
> As such, I doubt upstream will be interesting in making such a major |
35 |
> feature as Baloo optional at build time. |
36 |
|
37 |
As long as they keep it modular enough to continue hard-disabling via |
38 |
patch, where desired, without seriously increasing the complexity of the |
39 |
process. At this level on kde/frameworks/plasma5 it's a couple simple |
40 |
patches, but I doubt gentoo would have tried it with the far more complex |
41 |
and less modular kde4 if it hadn't been supported upstream, in which case |
42 |
I wouldn't have had anything to continue to base patches on during the |
43 |
period when gentoo/kde quit supporting it on kde4, and I *KNOW* it was |
44 |
/way/ beyond my skills without being able to lean on gentoo's patches, |
45 |
back on kde4. |
46 |
|
47 |
But at least for the time being it's extremely simple for kde/frameworks/ |
48 |
plasma5, and as long as it stays that way, not a problem. |
49 |
|
50 |
If it ever gets out of hand, well, I've always said that one way or |
51 |
another, the file indexer isn't going to be running long on my desktop |
52 |
(temporarily exception for porting and working out all the deps allowed |
53 |
and taken). As long as I can arrange to kill the deps in kde, I'll |
54 |
likely keep the kde desktop. If that becomes no longer possible, there's |
55 |
a very good chance, I'd say 80% or better, I'll be off of kde entirely |
56 |
within a year. Back before the turn of the century I was running MS |
57 |
betas and was inline at midnight for MS Windows 98. Then the eXPrivacy |
58 |
malware crossed a line I wouldn't cross, and I became nearly as |
59 |
proficient on Linux in three months as I had done on MS in nearly a |
60 |
decade. |
61 |
|
62 |
Similarly, back in the kde3 era I was very nearly fully standardized on |
63 |
kde, wondering if I could switch a couple more apps and avoid gtk on my |
64 |
system at all. During the fiasco that was the switch to kde4 I switched |
65 |
to non-kde for some of it, and switched even more when they broke kmail |
66 |
with akonadi, and when a couple potential security issues in konqueror |
67 |
went unfixed for way too long, and it became apparent they were treating |
68 |
it more like a toy than something serious that people could properly do |
69 |
their banking and etc on. They even broke global hotkey chaining in kde4, |
70 |
so I had to switch my hotkey setup to something else, and thus didn't |
71 |
really have to worry about it in the kde5 upgrade (except for kde hotkeys |
72 |
themselves, kwin-based zoom, invoking the cube, etc, session logout, kmix |
73 |
hotkeys, etc, but if I dump plasma those go with it and I configure |
74 |
whatever I replace plasma and kwin with, with my hotkeys). |
75 |
|
76 |
So now, other than the desktop itself, some kdegames, gwenview, and |
77 |
superkaramba, I'm pretty much off of kde, which is why it's relatively |
78 |
easy to run the live-9999 testing version of the parts of kde I do have |
79 |
installed. And of course superkaramba is now a dead package upstream, so |
80 |
while it's working for now, I'll have to find a replacement for it within |
81 |
a year or so. I already have a replacement for gwenview, that I used |
82 |
when gwenview was broken for me for a time. And the games I can either |
83 |
do without, find replacements for, or install individually. Which means |
84 |
it's pretty much only the desktop. |
85 |
|
86 |
So as I said, if at some point they interweave baloo into the desktop to |
87 |
the point I can't unweave it, I'll probably be off it too, within a year |
88 |
and most likely within 2-4 months. |
89 |
|
90 |
> In addition to sticking to upstream, I note it's easy to turn off at |
91 |
> runtime if unwanted and baloo:5 has a much lighter deptree than baloo:4. |
92 |
|
93 |
That is /definitely/ true. =:^) |
94 |
|
95 |
But of course it doesn't help when baloo isn't building with current |
96 |
cmake. I had a bug on that (as I expect you're aware but others here may |
97 |
not be), but it turned out that was simply more motivation to figure out |
98 |
how to kill baloo, given that several cmake upgrades over some months |
99 |
hadn't fixed it, so it looked like I was either going to have to |
100 |
seriously dig into it myself or dig into figuring out how to kill that |
101 |
dep, which was my ultimate goal anyway, so when I had the time to spend, |
102 |
it's obvious where I spent it. |
103 |
|
104 |
|
105 |
But truth be told, if there wasn't so much bad water under the bridge |
106 |
with the still horribly broken semantic-desktop crammed down our throats |
107 |
in the kde4 era, with it being easier to fully disable at runtime in kde/ |
108 |
plasma5, I'd have 90% chance been satisfied with just that, and would |
109 |
have been far more likely to jump thru the hoops the other way with the |
110 |
baloo building bug, tracing it down instead of making it my job to figure |
111 |
out how to exterminate baloo, even if I do find it worse than useless |
112 |
when actually running (since I find very nearly useless, it's very nearly |
113 |
worthless to me, even were it able to run at zero resource cost, but of |
114 |
course it's not zero resource cost, in either CPU time or indexing space, |
115 |
so the already nearly worthless actually ends up well into the negative). |
116 |
|
117 |
> Even though we weren't able to integrate your changes, thanks for your |
118 |
> work. It's interesting to know how simple it actually is and I'm sure |
119 |
> there's others who will find it useful too. |
120 |
|
121 |
Thanks. Like I said, getting it out there for anyone else that found it |
122 |
useful in the absence of gentoo/kde taking it, was at least as important |
123 |
to me as getting an answer one way or the other on whether gentoo/kde |
124 |
/would/ take it, particularly since I figured I pretty much knew the |
125 |
answer to the latter already. Tho it never hurts to ask, particularly |
126 |
when there's further reasons for posting as well. =:^) |
127 |
|
128 |
-- |
129 |
Duncan - List replies preferred. No HTML msgs. |
130 |
"Every nonfree program has a lord, a master -- |
131 |
and if you use the program, he is your master." Richard Stallman |