Policy for Dependencies

Jaroslaw Staniek staniek at kde.org
Thu Oct 15 10:02:07 UTC 2015


On 14 October 2015 at 20:55, Boudewijn Rempt <boud at valdyas.org> wrote:
> On Wed, 14 Oct 2015, Martin Klapetek wrote:
>
>> On Wed, Oct 14, 2015 at 1:38 PM, Christoph Cullmann <cullmann at absint.com>
>> wrote:
>>
>>       Given that lot opposition was here for a 5 lines change which does
>> break nothing
>>       if packagers don't skrew up.
>>
>>
>> Not to be disrespectful, but history has proven that the assumption
>> above unfortunately doesn't always hold up. So it's just better not
>> to count on it. Hence so much of the opposition.
>>
>
> Well, sure, stuff can break. However, without changes like this, KDE's
> Frameworks libraries are _not fit for purpose_. These libraries _can not
> be used_ by the intended user group, that is application developers,
> except for the tiny minority that only targets Linux, and only cares
> about having their applications packaged by distributions. As for Krita,
> we currently maintain builds for three distributions, and I can't wait
> for the day we can have a generic linux build like Blender and Firefox.
>

And LO.

Yes, I hope it's easy to see the pattern. And some of us may remember
the internal thread from this month about challenges Calligra faces to
win users.
Deployment is rather important part of this.

Let me CC kde-windows too. The topic seems to fit to many places.

When Ubuntu introduced the LTS it started to beat us heavily. "I am
not using your software because for ${some} reason I am bound to LTS"

See just the newest request as a sample:
http://permalink.gmane.org/gmane.comp.kde.users.kexi/833

Customers^w Users are always right.

So yes, a practical approach to deployment on Linux is not too
different than the one on the Windows/Mac/99.(9)% of mobile.
People that are forced to use given app will even install a VM to do
so. Compare size of the copied libs to the size of VM...
Compare to the size of the apps installed on your smartphone...

One way how we could "integrate" deployment of apps is for the case
when multiple apps are keeping their KF5 stuff in one place such as:

C:\ProgramFiles\Common Files\KDE\KF5\{some-timestamp}

Speculation: Multiple versions could be present there, identified by a
strong {some-timestamp} ID. And installers shall be in a form of Qt
Installer ("web" installers able to add shared components). It would
be then up to people manage deployments of a given application to
manage KF5 version that is known to work the app. Technical challenge
is here that the KF5\{some-timestamp} dir belongs to application. And
that one app may just install, say, 30% of KF5, another may install
70% of it. That looks like too complex and boring to manage by us,
volunteers.

So for Windows, having the C:\ProgramFiles\Common Files\KDE\ used for
a root dir of private copies of KDE stuff (including KF5) would be
better than nothing.
But on the risk side is that someone would think the subdirs are there
to reuse. That's not true because back/forward compatibility is not
part of these components. They are bound to given app(s) (one app or
entire Calligra for example).

No clear solution here then. Being a fan of native solutions (services
native to the OS), and sp the principle of the least-surprise, I am
thus not fan of exposing of software collections via the KDE-Installer
on Windows or equivalents on Mac. I'd like to make sure that anyone
who wants to package a KF5/Qt app separately can do that freely,
strip-down things conveniently in a way we accept, and there won't be
conflict with other installations. And that the packaged app won't be
perceived as "unofficial" because of the way of deployment. Freedom of
deploying alternatives away of the official channel - that IMHO boosts
competition and non-forced cooperation - something many of us see
missing in iOS.

I trust that whenever contributors discover it's "cheaper" to join KDE
than staying on the custom side, they will be joining. I see that
would be a big win-win.

-- 
regards, Jaroslaw Staniek

KDE:
: A world-wide network of software engineers, artists, writers, translators
: and facilitators committed to Free Software development - http://kde.org
Calligra Suite:
: A graphic art and office suite - http://calligra.org
Kexi:
: A visual database apps builder - http://calligra.org/kexi
Qt Certified Specialist:
: http://www.linkedin.com/in/jstaniek


More information about the Kde-frameworks-devel mailing list