3 ms·
> The difference is merely a philosophical one NO. They can be very different practically. For example, your Android phone/router contains open source softwar
by pksadiq 9y ago
> The difference is merely a philosophical one
NO. They can be very different practically.
For example, your Android phone/router contains open source software pieces (and very likely have GPLv2 licensed code). You get the source code of those, but you may not be able to change them. So yes, they are open source, but not free software.
Open source means the code is open, and you can do anything with the code (licensing restrictions implied). Free software extends that further to have freedom to run modified code on the same device[0] (See freedom 1 and its explanation: The freedom to study how the program works, and change it so it does your computing as you wish). This is a very important distinction between free software and open source software.
This was one of the primary reasons why GNU GPLv3 was introduced.
So in many occasions, open source != free software.
[0]https://www.gnu.org/philosophy/free-sw.en.html https://www.gnu.org/philosophy/free-sw.en.html
- nailer 9y ago> You get the source code of those, but you may not be able to change them. Yes you can. See https://opensource.org/osd-annotated https://opensource.org/osd-annotated : > 3. Derived Works > The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software.
- pksadiq 9y ago>> You get the source code of those, but you may not be able to change them. > Yes you can. See https://opensource.org/osd-annotated https://opensource.org/osd-annotated Well. I have explained about that in the above comment. I'm not saying that you can't modify the source. But open source software don't require the user to be able to run the modified versions on the same device, free software do. So the same software can be both free software and open source or open source only based on where the code is run.
- nailer 9y agoWhere in The Free Software Definition https://www.gnu.org/philosophy/free-sw.en.html https://www.gnu.org/philosophy/free-sw.en.html does it require the user to be able to run the modified versions on the same device?
- pksadiq 9y ago> Where in The Free Software Definition https://www.gnu.org/philosophy/free-sw.en.html https://www.gnu.org/philosophy/free-sw.en.html does it require the user to be able to run the modified versions on the same device? Quoting from the above link: Freedom 1 includes the freedom to use your changed version in place of the original. If the program is delivered in a product designed to run someone else's modified versions but refuse to run yours — a practice known as “tivoization” or “lockdown”, or (in its practitioners' perverse terminology) as “secure boot” — freedom 1 becomes an empty pretense rather than a practical reality. These binaries are not free software even if the source code they are compiled from is free.
- nailer 9y agoYes, you can have non-free binaries, but from that same quote: the source code to build them is still considered free.
- jordigh 9y agoYou can change the free parts of Android. That's why everyone and their brother can release Android phones, not just Google, and why F-Droid and Replicant can exist. However, I think you may be correct that some or perhaps most Android hardware is tivoised to not allow you to install derivative Androids. If so, that's a case of what good is a phone call, Mr Anderson, if you cannot speak.
- bad_user 9y ago> Free software extends that further to have freedom to run modified code on the same device[0] That is not true. You're talking of GPL version 3, but that does not extend to all Free Software licenses and is not included in the Free Software definition. For example GPLv2 does NOT require devices to allow you to run modified code, having no anti-tivoization clause. Are you saying that GPLv2, which was created by the FSF and is used by such prominent projects as the Linux kernel, is not Free Software? Stop speaking nonsense.
- pksadiq 9y ago> Are you saying that GPLv2, which was created by the FSF and is used by such prominent projects as the Linux kernel, is not Free Software? No. I have quoted that in a comment below. That is, a software can be both open source and free software or open source only based on where the code is run. GNU GPLv3 simply enforces this freedom irrespective of where the code is run. That doesn't mean some other license is non-free. > Stop speaking nonsense. We learn from mistakes. And from the mistakes we made, we learn and improve. GNU GPLv2 wasn't a mistake. It was a really good License (still is). But time proved its weakness. And FSF released GPL v3 License that addressed many issues that weren't addressed by GPL v2. FSF now recommends GNU [LA]GPLv3 for most of the software pieces. So yeah, a binary of a code written in GNU GPLv2 may become non-free (but still open source), but GNU GPLv3 code and binary will always be free software (until time proves otherwise). Edit: clarify that the binary made with GNU GPLv2 code (not to be confused with the source code itself) may be non-free.
- bad_user 9y agoWell, if we are going to talk of mistakes, we can argue that GPL v3 and AGPL in general are in violation of Freedom 0 and that AGPL is definitely discriminating against fields of endeavour (OSI's rule 6). For libraries in particular, or for the Linux kernel, it's the software developers themselves that are the users. Compare this: - What GPL v2 says is simply "you can use this source code, but you have to give your changes back when distributing them". - What GPL v3 says is "if you use this source code, you can't use it on your device unless you follow my rules" and Linus Tolvards thinks the same [1] - With AGPL this is much worse, because AGPL is effectively an EULA and not just a copyright license, as AGPL redefines what redistribution means and severely restricts usage on people's own servers In my opinion AGPL should have never been approved as either a Free Software or an Open Source license, being effectively a modern freeware, non-commercial license that escaped the scrutiny of Free Software advocates simply because it appeals to emotions whenever "freedom" gets mentioned, being like when the church asks for funding from the local government, requests which can't be easily refused, since it would position government officials to be against God. To measure the truthiness of this claim, you only need to witness that AGPL gets used in dual licensing schemes, where the AGPL option is simply offered because it's useless for anything else than for demo purposes and good marketing. But for the sake of argument, if you think there should be a distinction between users and developers, consider that modifying the software for your needs is simply usage and that this artificial distinction is what got Richard Stallman pissed enough to create the GPL and start the GNU alternatives in the first place. > a code written in GNU GPLv2 may become non-free By FSF's own admission, that is not true. Code released under GPLv2 can never be non-free. In terms of copyright, that code will always be redistributable under GPLv2 (i.e. once released, you can't take it back). In terms of patents, it comes with an implicit grant. Oh you're speaking of binaries installed on devices? But then we are not talking about source code or the project itself, but about actual usage. And going back to Free Software vs Open Source, you simply can't redefine what Free Software means depending on whims or speculation. And if this is the trend, then the Free Software community is positioning themselves to be against the spirit of Free Software. [1] https://www.youtube.com/watch?v=PaKIZ7gJlRU https://www.youtube.com/watch?v=PaKIZ7gJlRU