That's the thing you don't need to enforce anything if there is no law which forbids you from doing things. It's the copyright law which restricts you from doing most of the things that GPL license gives you permission. GPL gives you back the rights to copy, modify, create derivative works and redistribute any GPL licensed software you receive. Without copyright law you could copy, modify, create derivative works and redistribute any software you receive.
Sure having source code would be nice, but then again half the software nowadays is using electron and written in javascript anyway. Also plenty of examples of hardware manufacturers using software/firmware copyright as excuse and making legal threats to people who have made their own software to control hardware they bought even though they didn't have access to original source code.
There are probably more examples of people reverse engineering an reimplementing or decompiling large nontrivial software than there examples of companies making their whole software open source due to using a GPL licensed library (as opposed to avoiding the GPL licensed code or violating the GPL by not releasing the source code).
> companies making their whole software open source due to using a GPL licensed library
Does not mean that GPL is ineffective. IT forces them to reimplement the functionality, thus giving copyleft more time to compete with them. Imagine if they were to free to take all public code and just use it. They would always be ahead and open source products wouldn't stand a chance competing.
Not to mention I feel like GPL being so strong is why big companies pretend to love open source but permissive licenses so much - to drown out the GPL competition they hate so much and to attract more developers to permissive rather than copyleft open source projects.
> you don't need to enforce anything if there is no law which forbids you from doing things
This is extend-and-extinguish on rails. Raise capital, hire a team to fork a public project, develop is closed and only release inscrutable blobs. Add a marketing budget and you get to piggyback on the open-source project while keeping the monetisation.
Those things work against hobbyists, sometimes, temporarily, if the hobbyists are busy with other things or not very enterprising.
Do they work against Red Hat or Intel or Google or Mozilla, once those organizations can openly distribute the reconstructed code they've assigned full-time people to decompile? For that matter, what stops any government from doing it to any foreign company?
Which hardware company is going to build your DRM if there is no law you can use to stop the same company from also selling circumvention tools, or stopping anyone else (including major corporations) from extracting keys and selling them openly?
Better hope you never have a single vulnerability or someone's going to post it on the internet.
And then you'd have to put it on your servers, not AWS or some other third party with no obligation not to release it or start using it themselves. Meanwhile the open source people have no secrets and can use a commodity CDN or let the users run it locally.
> The ones that build the software. Apple. Oracle.
For DRM that would attempt to prevent you from running it, that doesn't help. People would install iOS on Samsung phones and Oracle's database on third party commodity hardware.
For DRM that would attempt to prevent anyone from making a single copy of the software, when has that worked even today when breaking it is illegal? Meanwhile if it's not illegal you would have to contend with multinational corporations with full on clean rooms and state of the art equipment and if any of them can extract a single key from a single device that's it.
> you would have to contend with multinational corporations with full on clean rooms and state of the art equipment
Only if the technology stagnates (or other conditions where a capital advantage proves useless). If it’s a moving target you don’t need any of this. Just basic security measures the likes of which protect the source code of most closed-source software today from everyone but the likes of a handful of nation states.
> People would install iOS on Samsung phones and Oracle's database on third party commodity hardware
Some people might. Most wouldn’t. Certainly not the vast majority of the people willing to pay for apps and hence the market for devs.
> Only if the technology stagnates (or other conditions where a capital advantage proves useless).
That's assuming both that defending requires the same level of resources as attacking and that the company trying to keep the changes a secret has a capital advantage.
The current attempts to do these things are performed by multibillion dollar corporations and then cracked by individual teenagers, and now you're adding the likes of Google, Amazon, Facebook, Samsung, etc. to the list of attackers. Apple is currently slightly bigger than any one of them but certainly not all of them put together and all of the teenagers and foreign governments in the world.
> Some people might. Most wouldn’t. Certainly not the vast majority of the people willing to pay for apps and hence the market for devs.
Samsung is a large conglomerate with in-house experience making modern electronics down to having their own fabs and making their own CPUs and flash. They would hand an iPhone to their techs, tell them to extract the code and then offer it as a checkbox to install iOS when you buy one of their phones. Nobody would choose that over the same phone with Android?
For that matter Apple would be attempting to use the same system to stop people from copying apps, but then competitors would do the same thing there, and then who is buying an iPhone that tries to charge you for apps that everyone else has extracted and made available for free?