In response to your question: Yes. But, again, the same was true of LGPL version 2.1.
When you speak of an Apple ID, do you mean a free one, or the $99 publish-to-the-appstore type? The difference doesn't matter to the LGPL question, of course...
There's some good discussion about LGPL and app stores at https://lwn.net/Articles/526355/ - the comments give a good explanation about why you could get away with a LGPL app, even though there's no free way to re-link the program.
Now, if you could use Xcode to install an app on your own phone, without any other account or gatekeeper, then presumably (I guess), GPL'd apps could also be allowed on the store?
For example, you can't get the source for an AppStore app, side-load it, and have it get notifications meant for the original app.
The same applies to IAP purchases made with the original app (they won't be available to the re-created app).
So, in the very least, even if, generally, LGPL with side-loading is ok, there are definitely some apps where it would still be not.
They make the licensing even murkier - you could envisage a situation where even if you had the app source code and the ability to build and install the app on a device, the app is worthless because a key feature depends upon secret keys that you have no access to. That's getting closer and closer to tivo-isation.
I don't know. Is that something you're interested in? Why not look into it?
> Now, if you could use Xcode to install an app on your own phone, without any other account or gatekeeper, then presumably (I guess), GPL'd apps could also be allowed on the store?
Again, the problems with the App Store are specific to the terms, conditions, and restrictions that Apple chooses for it. Whether or not you can side load your own apps using Xcode doesn't change that. Problematic App Store terms are still problematic. "Yes, you can build an app under <license> for your own device in Xcode" does not automatically mean, "Yes, you can distribute apps with <license> on the App Store."
It is a very common misconception that GPLv3 and LGPLv3 would require that code covered by them on the app store include the necessary signing keys or whatever else is needed to make a modified app work with Apple's DRM so it could be installed.
People think this because GPLv3 includes an "anti-Tivoization" section meant to stop people from doing what Tivo does, which is ship a locked down device full of GPL code that you cannot replace even though they give you the source code.
Here is the relevant part from GPLv3 section 6 (which is incorporated into LGPLv3 by reference from LGPLv3 section 4(e)):
If you convey an object code work under this section
in, or with, or specifically for use in, a User
Product, and the conveying occurs as part of a
transaction in which the right of possession and use
of the User Product is transferred to the recipient
in perpetuity or for a fixed term (regardless of how
the transaction is characterized), the Corresponding
Source conveyed under this section must be
accompanied by the Installation Information.
"Installation Information" is defined thusly: “Installation Information” for a User Product
means any methods, procedures, authorization keys,
or other information required to install and execute
modified versions of a covered work in that User
Product from a modified version of its Corresponding
Source. The information must suffice to ensure that
the continued functioning of the modified object
code is in no case prevented or interfered with
solely because modification has been made.
For the requirement to provide "Installation Information" to apply, there are two conditions that must be met.First, the code has to be conveyed in, with, or for use in a "User Product". The term "User Product" is defined a couple paragraphs earlier:
A “User Product” is either (1) a “consumer
product”, which means any tangible personal
property which is normally used for personal,
family, or household purposes, or (2) anything
designed or sold for incorporation into a dwelling.
In determining whether a product is a consumer
product, doubtful cases shall be resolved in favor
of coverage. For a particular product received by a
particular user, “normally used” refers to a
typical or common use of that class of product,
regardless of the status of the particular user or
of the way in which the particular user actually
uses, or expects or is expected to use, the product.
A product is a consumer product regardless of
whether the product has substantial commercial,
industrial or non-consumer uses, unless such uses
represent the only significant mode of use of the
product.
iOS devices, and Macs for that matter, are clearly "User Products", and so no problem here. Software sold through either the iOS or the OS X app store is being sold for use in a "User Product".The second condition is that the software conveyance occurs "as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized)".
When you go to the app store and buy and download some random app for your iPhone (the "User Product") that conveyance is NOT part of a transaction where the right of possession and use of the "User Product" (your iPhone) was transferred, and so the anti-Tivoization provision does not apply.
If Apple were to use GPLv3 or LGPLv3 software in the iOS software, or in any of the bundled apps they ship with the phone, then the anti-Tivoization provision would apply to them, and they would have to give you the "Installation Information".
In short, the (L)GPLv3 anti-Tivoization provisions are narrowly written to only apply to Tivo-like situations: hardware vendors shipping locked down GPL code with their hardware.
There is a problem with distributing GPL (any version) or LGPL (any version) on the app store, but it has nothing to do with DRM or ensuring that users have the technical ability to install modified versions. The problem is with the app store TOS, which users must agree to in order to be allowed to use the app store.
The TOS prohibits sharing and reverse engineering. These terms are incompatible with GPL. If the app store was just a marketplace that allowed sellers and buyers to match up and exchange payment, and the actual software download came from the developer's servers this might be OK, since Apple would not actually be involved in the copying and distribution of the software so nothing they do would matter from a GPL standpoint.
Unfortunately, that's not how the app store works. The developer uploads one copy of the app, and then it is Apple that makes and distributes a copy every time someone downloads. That means that Apple has to be in compliance with the license in order to legally distribute the software.
The developer who uploaded the software has almost certainly given Apple an implicit license to do this, regardless of what the license the developer purports to distribute under says. It's been a long time since I've read the Apple developer agreement, but I'd expect there is also something explicit in there that you give such a license to Apple.
So, as long as all the GPL code is owned by that developer, then the developer is really distributing on the app store with GPL + an exception to allow Apple to distribute.
If the developer incorporates any GPL code from others, though, then unless those others have also granted Apple a GPL exception it will not be legal for Apple to distribute that app.
(I know that one isn't supposed to post thank yous on HN but this post deserved more than just an upvote and the thread is old now so this shouldn't junk things up too much.)
Somebody correct me if I'm wrong or missed something.
EDIT: oh, and I forgot the GPLv2 -> v3 bit, but that doesn't affect your use case.
> At the same time, this allows us to open up the parts of Qt for application development that have previously only been available under commercial terms to the Free Software community, unifying the product.