Recent

Author Topic: Qt offering changes 2020  (Read 5494 times)

ASBzone

  • Hero Member
  • *****
  • Posts: 678
  • Automation leads to relaxation...
    • Free Console Utilities for Windows (and a few for Linux) from BrainWaveCC
Re: Qt offering changes 2020
« Reply #15 on: April 01, 2020, 05:41:40 am »
Random third party builds are not relevant, let alone major version differences.
I think that LGPL 2.1 protects used library in a way that whatever software is linked to that library, anyone experiencing problems should be allowed to debug and try to improve linking. That right is protected whether by allowing improving of linked application interface or by improving library it self. Such need usually happens when there is a new version of the library, or when some bug is found. Whatever the correct interpretation is, LGPL 2.1 is not good for use case when I want to keep my sources closed. If RTL and LCL didn't have linking exception license, I would personally have stayed away from Lazarus.


The reverse engineering requirement for LGPL 2.1 only applies if you statically link the LGPL'd library into your app.  If you only dynamically link it, there are no implications for your app.    (And, if you make the user get the library themselves, you won't even have to provide the library source.)


I'm not a lawyer, nor have I played one on TV, but I work closely with lawyers for the purpose of Cybersecurity, Compliance and Software Licensing issues.   
Plus, I have slept at Holiday Inn Express numerous times...
-ASB: https://www.BrainWaveCC.com/

Lazarus v2.2.7-ada7a90186 / FPC v3.2.3-706-gaadb53e72c
(Windows 64-bit install w/Win32 and Linux/Arm cross-compiles via FpcUpDeluxe on both instances)

My Systems: Windows 10/11 Pro x64 (Current)

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: Qt offering changes 2020
« Reply #16 on: April 01, 2020, 09:37:52 am »
The reverse engineering requirement for LGPL 2.1 only applies if you statically link the LGPL'd library into your app.  If you only dynamically link it, there are no implications for your app.
Otherwise commercial closed software software would not use Linux and dynamically link to it's libs which are mostly GPL and some LGPL.  :)
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

af0815

  • Hero Member
  • *****
  • Posts: 1289
Re: Qt offering changes 2020
« Reply #17 on: April 01, 2020, 03:56:30 pm »
Otherwise commercial closed software software would not use Linux and dynamically link to it's libs which are mostly GPL and some LGPL.  :)
Closed software and LGPL is not a Problem, if the LGPL'ed Software is bundled with the distribution itself and the pascalinterfeces are LGPL'ed with exceptions too . Like widgetset, DB drivers, ....
regards
Andreas

eljo

  • Sr. Member
  • ****
  • Posts: 468
Re: Qt offering changes 2020
« Reply #18 on: April 01, 2020, 05:17:11 pm »
as far as I know the exception is there to allow you to not share your code if you staticaly link not to disallow others from reverse engineering your code so lgpl with or with out exception once staticaly linked its a reverse engineering play ground and you can't do anything about it.

af0815

  • Hero Member
  • *****
  • Posts: 1289
Re: Qt offering changes 2020
« Reply #19 on: April 01, 2020, 05:28:28 pm »
as far as I know the exception is there to allow you to not share your code if you staticaly link not to disallow others from reverse engineering your code so lgpl with or with out exception once staticaly linked its a reverse engineering play ground and you can't do anything about it.
reverse engineeering is always a playgroud and you can do really nothing against, if your software is interesting enough  :)  :o
regards
Andreas

eljo

  • Sr. Member
  • ****
  • Posts: 468
Re: Qt offering changes 2020
« Reply #20 on: April 01, 2020, 05:32:17 pm »
as far as I know the exception is there to allow you to not share your code if you staticaly link not to disallow others from reverse engineering your code so lgpl with or with out exception once staticaly linked its a reverse engineering play ground and you can't do anything about it.
reverse engineeering is always a playgroud and you can do really nothing against, if your software is interesting enough  :)  :o
Why should I have to promise not to sue them though?

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11383
  • FPC developer.
Re: Qt offering changes 2020
« Reply #21 on: April 01, 2020, 05:46:45 pm »
Random third party builds are not relevant, let alone major version differences.
I think that LGPL 2.1 protects used library in a way that whatever software is linked to that library, anyone experiencing problems should be allowed to debug and try to improve linking.

Yeah, but that debugging is for the LGPLed work, iow the library, for which you must provide the source for  on demand. Nobody has said it is debugging from within your library.

Note that you can charge a $50 or more nominal fee for the providing of the source, so usually a URL or a pointer is enough. (and if not, they pay for the privilege)

Quote
That right is protected whether by allowing improving of linked application interface or by improving library it self.

Only for bugfixing. You don't have to allow the interface of the library to change. Getting that right is on the user.

Quote
Such need usually happens when there is a new version of the library, or when some bug is found. Whatever the correct interpretation is, LGPL 2.1 is not good for use case when I want to keep my sources closed. If RTL and LCL didn't have linking exception license, I would personally have stayed away from Lazarus.

This is overly panicky.  Just make sure you keep the source of LGPL libs you distribute.  (if you link to OS provide LGPL libs, referencing them should be enough). If not you can charge $50 to dl the sources of a linux distro.

The only problem I see is the many shaky 3rd party builds for OSS libs on Windows. These are less easy to track the exact source of, and many people distribute the DLLs without doing so. But that goes for postgresql as much as any third party sourcecode.

For Pascal code there is the problem that currently if you put something in a DLL, you must communicate with that code in a much more lowlevel manner.  Maybe packages solves that. (if somebody pesters you enough, you simply provide a lazarus snapshots that can generate packages for your app) But it is a burden, no doubt that.

That's why FPC chose to use modified library, to avoid this endless grey area of opinions, and "it is possible, just not in a way a sane person would want to" like options.

But that matter less for libraries like postgres, qt etc.

Moreover, in QT's case, there is another layer inbetween. In a weird (and frankly quite unimaginable case) you could just surrender the QTPAS code, and let them fix it in there.
« Last Edit: April 01, 2020, 08:20:25 pm by marcov »

guest65405

  • Guest
Re: Qt offering changes 2020
« Reply #22 on: April 01, 2020, 06:41:53 pm »
They said we could develop commercial applications, but said nothing about reverse engineering:

https://www.copperspice.com/docs/cs_overview/main-cs-license.html

As they forked the LGPLv2.1 version of Qt4 and they are not the owner of Qt, they can't relicense it or at least dual license like the Qt company currently does. It's out of their ability.

If we really feared that reverse engineering term so much, why we have the Qt4 interface after all? Lazarus has the Qt4 interface long long before Qt5. People still build up on it. Some even sold their software. Why do we panic? LGPLv2.1 is nothing new.

Some could said they would bought the commercial version of Qt so they are safe using the Qt4 interface. Good luck for them, but I could make sure most of us use the free community LGPLv2.1 version.

p/s: it's clear now we could use CopperSpice the same way we use Qt4. It will be very good if someone could create a CopperSpice interface for Lazarus by adapting the current Qt4Pas (or Qt5Pas) but this one will not be me. My computer is too slow and I'm so lacked in knowledge of C++ to be able to play with it.

p/s: As CopperSpice removed MOC, someone could try to use Swig to generate the binding as well. But I'm not sure about this. They don't have MOC but they use template heavily and depends on the latest version of C++, C++17.

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: Qt offering changes 2020
« Reply #23 on: April 06, 2020, 02:02:32 pm »
Quote
Such need usually happens when there is a new version of the library, or when some bug is found. Whatever the correct interpretation is, LGPL 2.1 is not good for use case when I want to keep my sources closed. If RTL and LCL didn't have linking exception license, I would personally have stayed away from Lazarus.
This is overly panicky.
I do not agree. Read this quote from https://wiki.lazarus.freepascal.org/FPC_modified_LGPL:
Quote
The difference with the regular LGPL is that it does not require programs/libraries using Modified LGPL licensed software (such as the RTL, FCL, LCL, ...) to be relinkable by the end user against newer versions of these Modified LGPL components.
This is exactly why I stay away from pure LGPL libraries, and I am thankful that someone recognized it too and allowed more liberal usage of LCL, FCL, RTL - and in general any other FPC modified LGPL lib. Otherwise whenever new lib version emerges I would be obligated to fix linking problem in one way or the other. And I do not care if at the end correct interpretation would be that it applies to just one specific type of linking. If I need an international licensing lawyer ($$$$) to understand properly such an important detail then it is shady enough for me to stay away. Just trying to be practical, not necessarily correct.
« Last Edit: April 06, 2020, 02:09:15 pm by avra »
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

dbannon

  • Hero Member
  • *****
  • Posts: 2786
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Qt offering changes 2020
« Reply #24 on: April 22, 2020, 02:23:58 am »
KDE themselves don't seem particularly worried. Or at least appear to have a plan.

https://ev.kde.org/2020/04/06/changes-in-qt-and-the-kde-free-qt-foundation/

And the worst case changes discussed here will affect KDE far more than us .....

I summary, save you some time -

....
The successive versions of the agreement drawn between the owners of the commercial version of Qt and the Foundation have ensured that Qt remained free for all developers and added a provision that, if triggered, would entitle KDE to release Qt under a BSD license.
.....


(I wonder if this thread would have been better posted in the  Qt sub-forum, took a long time for me to find it. )
Davo
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

mercurhyo

  • Full Member
  • ***
  • Posts: 242
Re: Qt offering changes 2020
« Reply #25 on: April 22, 2020, 02:36:58 am »
philosophy moment around Qt

Yet another company 'sinking'/thinking that $500 from 100 users will be more efficient thant $1 from 1,000,000 users

end of my support!
 :D :D :D :D :D :D :D :D :D :D
I caught my brain years ago
« Last Edit: April 22, 2020, 02:43:21 am by mercurhyo »
DEO MERCHVRIO - Linux, Win10pro - Ryzen9XT 24threads + Geforce Rtx 3080SUPRIM
god of financial gain, commerce, eloquence (and thus poetry), messages, communication (including divination), travelers, boundaries, luck, trickery and thieves; he also serves as the guide of souls to the underworld

dbannon

  • Hero Member
  • *****
  • Posts: 2786
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Qt offering changes 2020
« Reply #26 on: April 22, 2020, 05:59:40 am »
The trouble is it sometimes costs $2 to collect those fees.  So, if the fee is $500 you still clear $498, if you collect $1 .....

Honestly, no can object to a company trying to make money from its products, what worries me is when they say, initially its free, wait for a user base to build up then say, "free ?  well, not really ...."

Anyone remember Unisys and the GIF format ?   Anyone use GIF now ?

Davo
 
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

 

TinyPortal © 2005-2018