3

The BSD/MIT license only mentions things about redistribution. But I don't see any restrictions on the initial release of a BSD-licensed program. Is it possible that I write a program, but only release its binary under the BSD-3-Clause license? If so, why are BSD/MIT licensed programs considered to be open-source/free?

8
  • 1
    Example: The MS-DOS v2 source release contains some binary program executables. I consider these "free software without sources" because of the usage conditions that Microsoft chose to release the repo under.
    – ecm
    Oct 7, 2022 at 8:22
  • 1
    Google is doing such closed-source shenanigans which are made to look to be "open-source licensed" while in fact being closed source, e.g. github.com/google-ar/arcore-android-sdk/issues/1538 Oct 7, 2022 at 18:16
  • 1
    @ecm: In the case of MS-DOS v2, people have reverse-engineered the sourceless binaries to create compatible source code, on the grounds that the binaries were released under BSD conditions. For instance os2museum.com/wp/dos-2-11-from-scratch
    – john_e
    Oct 7, 2022 at 21:03
  • @john_e: I was actually thinking of the assembler and linker included in the release. I believe those tools have not yet been reverse-engineered.
    – ecm
    Oct 7, 2022 at 21:47
  • @ecm Assembler and Linker code does not need to be reverse engineered. It is source code. It is very close to the hardware and nowadays only few people can read (and understand) it, but nevertheless it is source code and not a binary. Oct 8, 2022 at 6:52

3 Answers 3

7
  • Is it possible to release binary-only under a permissively-free licence?

Yes, absolutely. We have other questions (1, 2) here about that, but to me they boil down to "it's a bit weird, you probably shouldn't do it, but you can".

  • If so, why are BSD/MIT licensed programs considered to be open-source/free?

They're not, necessarily. Source code that you receive under BSD or MIT is considered to be free software. Binaries would just be considered freeware, because although you're not paying for the binary, you aren't (in any meaningful sense) getting some of the four freedoms.

2

A binary-only distribution of software is very common for commercial software, but it is also possible to distribute binaries with a permissive license like BSD or MIT.

The advantage of this strategy might be in the ease of distribution and re-distribution. However, it might also be a double-edged sword, because the users don't know what's in it (possible malware, patent claims), so users will be hesitant to use it.

Permissive licenses commonly allow modifications, translations etc, and that includes reverse engineering and de-compiling. Therefore, for experienced programmers, there is a path to the source code related to the binary, unless code obfuscation techniques have been deployed (which again should trigger even more doubts among users).

So should a binary-only distribution be considered 'open-source/free'? Definitely not. It raises a lot of questions.

0

Open-source licenses are licenses suitable for releasing source code of computer software. Some of such licenses (like GPL) are copyleft, they require you to release the source code of your own software based on open source code, others (like BSD) don't have such requirement.

For instance, most compiler toolchains include some source code. One example is ARM/Cortex core library CMSIS (Cortex Software Interface), which was initially released under a BSD-like license and later switched to Apache. Yet a lot of ARM software is commercial and closed source. All the authors have to do is to mention that their software includes code from ARM Ltd. to fulfill the license terms.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.