I'm creating a standalone CLI binary to distribute to companies for money. The binary depends on a number of third-party libraries with various licenses (MIT, Apache, BSD, and MPL to be exact). I want to just distribute a standalone binary to clients, as opposed to a .zip with both the binary and text files for the various licenses that I'm obligated to include. This would mean that I'd need to instead include the licenses in the binary to satisfy their terms. In that case, how would I do it? For example, does it suffice to simply include the licenses in a section of the binary, or would I need to add some flag to the CLI API (e.g., --view-licenses) that would print all of the licenses to stdout?

  • 1
    If you included MPL code then you have a copyleft issue, since that license says you're required to offer your customers the source code as well under the same terms. See also opensource.stackexchange.com/questions/8831/…
    – Brandin
    Apr 24 at 12:12
  • I believe that's only for the MPL-licensed library itself (and any changes made to it), and not for the code I've written that calls into it
    – meisel
    Apr 25 at 15:01
  • In other words, it's not an "infectious license" like GPL
    – meisel
    Apr 25 at 15:02
  • @meisel: That may be the case, but you still have to offer the source code of the library itself by some means. You can't just distribute binaries.
    – Kevin
    Apr 28 at 0:04

1 Answer 1


It might be possible to argue that you have met the letter of the MIT License ("The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.") by embedding the license in your binary, even if that string isn't visible to users.

However, it's clear that isn't meeting the spirit of the license, so yes, you should add a --view-licenses option or similar.

  • This answer does not handle the other licenses mentioned, in particular Apache and MPL have possibly more requirements than just showing the license.
    – Brandin
    Apr 24 at 12:25
  • For the MPL and BSD licenses (both 2, 3 and 4 clause), it is not sufficient to have the license just in a section of the binary and for the Apache it would be a very creative reading of the license text and probably also not legal. Apr 24 at 14:17

Your Answer

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

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