1 |
On 01/04/16 19:05, Duncan wrote: |
2 |
> Nikos Chantziaras posted on Fri, 01 Apr 2016 07:39:04 +0300 as excerpted: |
3 |
> |
4 |
>> On 31/03/16 11:28, Duncan wrote: |
5 |
>>> I've been able to patch out the (source) deps, and instead of patching |
6 |
>>> the ebuilds themselves, I've placed those patches in the appropriate |
7 |
>>> /etc/portage/patches/kde-plasma/plasma-[desktop|workspace]/ locations |
8 |
>>> so the ebuilds apply them automatically, and either package.provided |
9 |
>>> the baloo package itself to fake the dep for the ebuilds (works, but |
10 |
>>> package.provided is deprecated), or created a fake baloo in my overlay |
11 |
>>> that installs no files (what I'm actually doing now). |
12 |
>>> |
13 |
>>> That eliminates the actual baloo installation alone with the couple of |
14 |
>>> other packages that only it pulled in on my system. |
15 |
>> |
16 |
>> I'd say that Gentoo should not maintain their own fork of KDE. It's way |
17 |
>> too much work. It's up to upstream to do this. |
18 |
>> |
19 |
>> In my case, I don't need desktop search and have all that stuff disabled |
20 |
>> in System Settings. A KDE build-time option would be useful, but I don't |
21 |
>> think they consider this an issue, since users can disable it. |
22 |
> |
23 |
> I'd hardly consider it a fork. It's a couple very trivial patches, |
24 |
> deleting/commenting eight lines total between the two packages that |
25 |
> simply disable building a couple already spun out into subdirs |
26 |
> functionality modules. If it were to make it optional instead of simply |
27 |
> deleting the config for it as I've done since I lack the knowledge to |
28 |
> properly make it optional, chances are the patch would change only four |
29 |
> lines. |
30 |
> |
31 |
> Gentoo already does similar patching, making optional otherwise |
32 |
> "required" modules (there's even a custom helper function in the eclass |
33 |
> to make it easier, that I didn't choose to use both because I would have |
34 |
> had to read up on /them/ instead of direct patching once I figured out |
35 |
> what I needed to do, and because as that would have involved patching the |
36 |
> ebuild, far harder to maintain as a user on gentoo than the fully |
37 |
> automated source patching), as well as far more invasive patching in some |
38 |
> cases. To the extent that is considered forking, it's already well |
39 |
> forked, and these patches won't change that either way. |
40 |
|
41 |
While we indeed do some downstream patching and dependency mangling in |
42 |
some KDE packages, we try to stay as close to upstream as possible. What |
43 |
we do modify is mostly build-time only stuff, such as tests or handbooks |
44 |
and should not have much affect on the user experience. |
45 |
|
46 |
> Tho you're correct in that taking it upstream, to the extent upstream is |
47 |
> receptive to the idea at all, is by far the best option. But as you |
48 |
> mention, not all upstreams are interested. |
49 |
|
50 |
If I understand correctly, at least part of the Plasma team does not |
51 |
view optional dependencies as something that should be toggled lightly. |
52 |
Rather, they would prefer they are always enabled unless being built on |
53 |
a platform where that dependency doesn't make sense. |
54 |
|
55 |
While I am too personally in favour of as much being optional as |
56 |
possible, I certainly appreciate their view - more options means more |
57 |
complex code, more codepaths and more possibility for breakage. It's |
58 |
been found in the past that many packages with optional dependencies |
59 |
failed to build when those optional dependencies were missing, simply |
60 |
because nobody has that configuration to test with. |
61 |
|
62 |
As such, I doubt upstream will be interesting in making such a major |
63 |
feature as Baloo optional at build time. |
64 |
|
65 |
> But I already got the result I expected (and explicitly offered as a |
66 |
> choice if gentoo/kde didn't want to go that way) on the bug, resolved |
67 |
> UPSTREAM. However, filing the bug served a couple purposes. It |
68 |
> demonstrated how simple a change it is, and publicly presented the option |
69 |
> for gentoo/kde to look at, number one. |
70 |
|
71 |
In addition to sticking to upstream, I note it's easy to turn off at |
72 |
runtime if unwanted and baloo:5 has a much lighter deptree than baloo:4. |
73 |
|
74 |
> Number two, the patches are now out there and known to work for at least |
75 |
> the bug reporter, in a centralized place for other users who wish to make |
76 |
> use of them, even tho gentoo/kde has chosen not to, at this point. I |
77 |
> know there's quite a few patches I've found on bugzilla and applied |
78 |
> locally, made available by other users who came across the same problem |
79 |
> and found a solution, before the package maintainers chose to apply, |
80 |
> sometimes with further modifications, or reject, the same patches. I've |
81 |
> simply returned the favor here. |
82 |
> |
83 |
> This second purpose was at least as important as the first, and now the |
84 |
> patches are out there for others who can choose to apply them locally or |
85 |
> not, given that gentoo/kde has chosen not to apply them as the direct |
86 |
> upstream of those gentoo/kde users. Plus, while the patches are trivial |
87 |
> enough that finding them for non-gentooers choosing to build from sources |
88 |
> may be more work than simply redoing them on their own, unlike the |
89 |
> initial case for people doing them on their own, these are now tested and |
90 |
> known to work. |
91 |
|
92 |
Even though we weren't able to integrate your changes, thanks for your |
93 |
work. It's interesting to know how simple it actually is and I'm sure |
94 |
there's others who will find it useful too. |