News for hackers. Stuff that matters.
Re:Electron.Net: Build cross platform desktop apps using .NE... by IshKebab on Friday November 03, 2017 @05:10AM (#15617705)
Yeah unfortunately it fails at the "10 MB" bit. Hello world in QML is like 50 MB.

Also you can't statically link the GPL version which is just a bit of a pain.

I agree if it allowed static linking and wasn't huge it would be perfect. Even so there aren't any better alternatives, but it sucks you can't make something as small and portable as e.g. putty.exe, or depends.exe.

Re:Electron.Net: Build cross platform desktop apps using .NE... by jcelerier on Friday November 03, 2017 @05:21AM (#15617755)
Qt is under LGPL which allows static linking: https://www.gnu.org/licenses/gpl-faq.en.html#LGPLStaticVsDyn...

This way, you can get under 20 megabytes: https://youtu.be/mbs3-XE0HNE?t=1180

Sadly I don't think it's possible to have at the same time "portable" (including to platforms without UIs at all, like DirectFB on linux) and small. Putty and depends.exe aren't portable at all.

Re:Electron.Net: Build cross platform desktop apps using .NE... by rlp on Friday November 03, 2017 @05:32AM (#15617800)
LGPL does not allow static linking. From Qt's legal page:

In case of dynamic linking, it is possible, but not mandatory, to keep application source code proprietary as long as it is “work that uses the library” – typically achieved via dynamic linking of the library. In case of static linking of the library, the application itself may no longer be “work that uses the library” and thus become subject to LGPL. It is recommended to either link dynamically, or provide the application source code to the user under LGPL.

Re:Electron.Net: Build cross platform desktop apps using .NE... by jcelerier on Friday November 03, 2017 @05:38AM (#15617819)
Please read the link I posted, which comes from the people who created the LGPL license:

> If you statically link against an LGPL'd library, you must also provide your application in an object (not necessarily source) format, so that a user has the opportunity to modify the library and relink the application

The only thing that matters from the point of view of the LGPL is that your users are able to update the LGPL parts in your app. This is possible with static linking. Else for instance how would LGPL be possible with languages that don't even have a notion of linking (eg script languages), or which only allow static linking ?

See also : https://stackoverflow.com/a/15322678/1495627

Re:Electron.Net: Build cross platform desktop apps using .NE... by IshKebab on Monday November 06, 2017 @05:18PM (#15639499)
That's quite an ambiguous area of the LGPL. Qt is a C++ app so linking it with the `.o` files from your app is going to be extremely difficult. I'm not sure it would qualify for the LGPL and anyone who says it is is frankly just guessing. The language is not clear and it has never been tested in court (and probably won't ever be).

I certainly wouldn't base a business on that risky interpretation, and the one business that I have been in that used the LGPL version of Qt dynamically linked it. It's just less risky (plus you don't need to build it yourself then).