4 ms·
> Linux support isn't as good as on Apple platforms That's definitely still a problem for libraries etc., but thanks to very recent developments (see the artic
by pojntfx 3y ago
> Linux support isn't as good as on Apple platforms
That's definitely still a problem for libraries etc., but thanks to very recent developments (see the article) at least getting your app to users is super simple thanks to the new Swift Flatpak runtime: https://flathub.org/apps/org.freedesktop.Sdk.Extension.swift5 https://flathub.org/apps/org.freedesktop.Sdk.Extension.swift...
- cglong 3y agoIt says the runtime is under GPL3. Does the copyleft apply to all Flatpak apps written using Swift?
- nextaccountic 3y agoI thought that Apple actively avoided GPLv3
- cglong 2y agoIt looks like the runtime is owned by the author of this article, who (from his bio) doesn't seem to be affiliated with Apple. Either way, I agree it seems like an odd choice.
- rock_artist 2y agoa. It's the author using something which is GPL b. GPL is allowed as long as complied. c. GPL mostly limits ability for use within iOS / AppStore.
- flexagoon 2y agoNo, it is the runtime, it's not a part of your app, it just runs it. You can basically think of it as a Docker container (but specifically for desktop apps). You don't have to make your app GPL, the same way as you can run a proprietary app on Linux even though the Linux kernel is GPL
- badsectoracula 2y agoIt isn't that simple. If your application links against the runtime, be it dynamically or statically, then it is a derivative work and thus must be distributed under the GPL. This is why Java, also being under GPL, has an explicit exception for the runtime library despite even being a VM. The Linux kernel allows you to run proprietary apps because the kernel code and the userland code exist in two separate "planes" connected by the syscall interface. The kernel even has an explicit exception for any code that may need to be shared between the kernel and the userland to make clear that this code is excluded from GPL. As another similar case, the Free Pascal compiler is licensed under GPL including the runtime and almost all libraries/units that come with it but it also has an exception to allow linking without having the GPL extend to the programs the users write. AFAIK the GNU C library also has a similar GPL-with-linking-exception license.
- flexagoon 2y ago> If your application links against the runtime, be it dynamically or statically, then it is a derivative work and thus must be distributed under the GPL Flatpak apps aren't linked against a runtime, they just run in a bwrap sandbox with that runtime. Again, think of it as a Docker container. In Fact, Flatpak apps aren't even supposed to know they're running in Flatpak. They can know that, because the user agent string says so, but nothing in the app code specifically should be adapted to run in Flatpak