Input from OS X developers wanted

Ian Wadham iandw.au at gmail.com
Mon Sep 14 05:29:38 BST 2015


Hi Kevin, Luca and Alex,

On 14/09/2015, at 1:56 AM, Kevin Funk wrote:
> On Sunday, September 13, 2015 12:28:30 PM Ian Wadham wrote:
>> For most of last year and some of this year, a few of us tried hard to make
>> KDE 4 apps run better on OS X, but we were crying out for help from KDE
>> developers all the time, particularly with regard to the
>> kdeinit/klauncher/kded/kio complex which underlies so much of the software
>> from the KDE Community and which functions badly, if at all, in an OS X
>> environment.
> 
> Right, kdeinit/klauncher/kded/kio is an issue when porting apps, but it got *a 
> lot* better in KF5 already (inter-dependencies between those modules have been 
> relaxed, KIO got cleaned up a lot).

So I heard.  That's why I was trying to build KF5, from source code (in a
kdesrc-build environment).  I wanted to insert some log messages and
figure out what invokes what and when and why, in that complex, and
what the end effect is.  It appears that the Apple branches in it have never
been tested and some of them did/do not work.

Ditto for KCrash and Dr Konqi, which is why there were no crash reports
to Bugzilla from Apple, but I have (partially) fixed them now and someone
else forward-ported them to KF5.

Unfortunately, the internal doco for kdeinit/klauncher/kded/kio is slender
to non-existent and the density of comments in the code is very low,
otherwise I could have just read the source code.  I tried that and got
lost, even though I had quite a deal of experience in developing and
supporting operating systems and real-time before I retired in 1997.

> In fact, if you did follow the KF5 mailing list a bit; on Windows it's now 
> possible to just run KDevelop *without* ever invoking kdeinit/klauncher/kded. 
> Just a few patches needed in KF5 libraries -- all upstreamed already. This 
> also helped the OSX world.

Well no, I don't follow the Frameworks/KF5 mailing list.  Why would I?  And
how would I find the time?  I am already on 3 Apple lists and 4 KDE ones,
and have been, at one time or another, on at least 4 more KDE lists.

This is a prevalent problem in the KDE world, IMHO.  Many things you need
to know, as a developer, are on yet another mailing list, IRC area or blog.
Whatever happenend to Techbase?

>> A few months ago I spent WEEKS trying to KF5 and Qt 5 to build on OS X and
>> finally gave up.
> 
> What's the problem with that?

There were *dozens* of problems, beginning with building Qt 5...

> Did you ask for help?

Of course I asked for help --- and got it, both from Qt support and from one or
two friendly KDE developers who happened to have Apple hardware or
virtual setups, but there was something about my setup that defeated
everyone.  Also the time the endless builds were taking was exacting a
toll, both on myself and my wife.  We are both in our 70s.

> Clearly, and people out 
> there are using it (https://github.com/haraldF/homebrew-kf5)

And here is the crux of the situation vis a vis KDE Community and Apple.

Harald is an ex-KDE developer with more than a passing knowledge
of KDE Core development, which no doubt you also have, Kevin.

I think it is true to say that almost every major platform and distro has
one or more ex- or active KDE developers who are familiar with KDE
core development.  The KDE Community depends on this serendipity
to get its software field-tested and distributed properly.

Macports on Apple OS X has no such person, not even part-time.  All
we have is a KDE Games programmer (me) and some guys who are
self-taught in KDE and Qt (as am I, actually).  I think if we had (or had
ever had) a KDE expert, even for a few hours a week, we would be
getting a lot further ahead than we are now.

Any volunteers?

Harald and Homebrew might as well be on the Moon.  You know how
it is with small groups in the FOSS world… :-) … they just do not talk to
each other.

Also Homebrew and Macports are AFIAW *not* co-installable on
Apple OS X.  They are like two different distros.

>> I think work on Qt5/KF5 on OS X is currently blocked by the
>> QStandardPaths problem and has been for a while.
> 
> Then, please join efforts and help in resolving *this* issue. We in the "KDE 
> on Windows" world also just worked-around the issue by patching Qt.

I think we also will have to patch Qt.  I have been a witness and contributor
to discussion of the QStandardPaths issue on Apple OS X from the very first.
Luca please note… :-)

> The QStandardPaths issue is not the end of the world, either, though…

No, on Apple OS X it just needs a few guys with complementary knowledge
and skills to bite the bullet and DO something, rather than engage in endless
philosophising.

There is something seriously at odds between what Apple (the company)
expects an app, utility or library to do and what KF5 (and KDE 4) actually do.
For instance, on the iOS operating system, on iPhone and iPad, all apps have
to be fully sandboxed.  And Apple is trending that way on OS X, I believe.  At
the same time, there are *some* Qt-based apps on Apple OS X that go the
Apple way.  So Qt 5 must cater for all --- Apple design style and KF5 style.

And yes, Luca, the issue *is* directly tied to KF5.  We no longer have
KStandardDirs to take care of KDE's requirements to find files.

>> So you see, if anyone has read this far, it is OS X developers who need
>> help, serious help, from KDE developers…  not the other way around.
> 
> Please keep in mind that we can only to drastic changes in development 
> versions (KF5), not legacy(!) versions (KDE4) …

Of course.  We are quite happy to make changes to KDE4 downstream, once
we can understand how the apps, utilities and libraries actually work.  Macports
developers have been doing that kind of thing for years, for thousands of
FOSS packages --- not just KDE and Qt.

Our problem is to understand how KF5 apps, utilities and libraries actually
work and then to work out how to "port" them to Apple OS X.  If an issue can
be fixed by simple conditionals in KF5 code, then it would be desirable to fix
that issue there, rather than carrying forward patches forever.

> Also, on Windows, we have the same problem: KDE4 apps are not working 
> perfectly fine either; but we've accepted the fact KDE4 is a dead-end and now 
> try to focus on improving based on KF5 instead.

Macports may be several years away from phasing out all KDE 4 apps, libraries
and utilities, and the glitches on Apple are still quite serious.  So there is still
work to do.

> Thanks,
> Kevin

Thanks for your input, Kevin.  And thanks for listening.

All the best, Ian W.

>> FWIW, X11 is pretty much a dead issue on OS X and has been for years, since
>> Qt 4 supported native OS X graphics and Apple stopped releasing X11
>> (Quartz) with OS X. AFAIK, a few FOSS packages available via Macports or
>> supplied in Apple versions by their developers still use Quartz/X11. 
>> Notable among these are Gimp and Inkscape.







More information about the kde-core-devel mailing list