• 0 Posts
  • 3 Comments
Joined 1 year ago
cake
Cake day: June 21st, 2023

help-circle
  • pavunkissa@sopuli.xyztoLinux@lemmy.mlFlatpack, appimage, snaps..
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    11 months ago

    This was my experience as well as a developer trying to package an application as an appimage. Creating an appimage that works on your machine is easy. Creating one that actually works on other distros can be damn near impossible unless everything is statically linked and self contained in the first place. In contrast, flatpak’s developer experience is much easier and if it runs, you can be pretty sure it runs elsewhere as well.


  • That is a good point to emphasize. A downside of a CLA is that it adds a bit of bureaucracy and may deter some contributors. If the primary concern is whether a GPL licensed app is publishable on an App Store, an alternative is to add an app store exception clause to the license. (The GPL allows optional extra clauses to make the license more permissive.) Though this means that while your code can be incorporated to other GPL licensed applications, you can’t take code from other GPL projects that don’t have the same exception.


  • As others have already said, the prohibition of using the code in commercial applications would make the license not open source/free software (as defined by the Free Software Foundation and Open Source Initiative.)

    These are some of the most commonly used licenses:

    • MIT - a very permissive license. Roughly says “do anything with this as long as you give attribution”
    • BSD - similar to MIT (note that there are multiple versions of the BSD license)
    • ASL2 - another permissive license. Major difference is that it also includes a patent grant clause. (Mini rant: I often hear that GPL3’s patent clause is the reason big companies don’t like it. Yet, ASL2 has the very same clause and it’s Google’s favored license.)
    • GPL - the most popular copyleft license (family). Requires derived works to be licensed under the same terms.
    • LGPL - a variant of the GPL that permits dynamic linking to differently licensed works. Mainly useful for libraries.
    • AGPL - a variant of GPL that specifies that making the software available over a network counts as distribution. (Works around the SaaS loophole. Mainly used for server applications.)
    • Mozilla - a hybrid permissive/copyleft license. I don’t fully understand how this one works.

    If you want to use a true FLOSS license and your goal is to discourage people from selling it, I’d say the GPL is your best bet. Legit vendors who don’t want to give out their source code won’t touch GPL code. The non-legit ones won’t care no matter what license you choose. Also, iOS App Store terms are not compatible with the GPL so they can’t release their stuff there, but you can as long as you hold full copyright to your application.