Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Legal Side of Open Source

The Legal Side of Open Source

Copyright and Licensing for Open Source Projects.

Jogendra Kumar

August 02, 2019
Tweet

More Decks by Jogendra Kumar

Other Decks in Technology

Transcript

  1. The Legal Side of
    Open Source

    View full-size slide

  2. About Me
    ● Final year student at Indian Institute of Technology Varanasi
    ● Open Source Contributor and Maintainer at FOSSASIA
    ● iOS / Web Developer
    ● Google Summer of Code (2018) student developer for FOSSASIA
    ● GitHub Campus Expert!
    ● Mentored several Open Source Programs including Google Code-In
    and mentoring Google Summer of Code 2019 students
    jogendra jogendrafx
    https://jogendra.github.io
    jogendrasingh24

    View full-size slide

  3. What is Open Source?
    ➔ Source code is available for
    anyone to view, use, change, and
    then share
    ➔ Allows others to build on and
    learn from it
    ➔ Enabling broad collaboration
    from people around the world

    View full-size slide

  4. Why it is important to talk about legal side?

    View full-size slide

  5. Understanding the legal implications of open
    source

    View full-size slide

  6. Legal bits
    ➔ Copyright
    ➔ Licenses

    View full-size slide

  7. Copyright
    ➔ Copyright reserves the right to copy, modify, and distribute a creative
    work exclusively to the copyright holder.
    ➔ It exists to protect the rights of authors, artists, and other creators,
    allowing them to control if and how their work is used by others.
    ➔ In most countries, it automatically applies the moment the work is
    created.

    View full-size slide

  8. Just because you can see or access a copyrighted work, it doesn't
    necessarily mean you can use or copy it.

    View full-size slide

  9. Licenses
    ➔ Rights
    ➔ Obligations

    View full-size slide

  10. Rights define things you are allowed to do.

    View full-size slide

  11. Obligations identify things you must do in return for those rights.

    View full-size slide

  12. Without the right license,
    it's not really open source.

    View full-size slide

  13. Why do people care so much about the legal
    side of open source?

    View full-size slide

  14. When you make a creative work (such as writing, graphics, or code),
    that work is under exclusive copyright by default. That is, the law
    assumes that as the author of your work, you have a say in what others
    can do with it.
    In general, that means nobody else can use, copy, distribute, or modify your work without being at risk of
    take-downs, shake-downs, or litigation.

    View full-size slide

  15. What if I don’t apply an Open Source License?
    Everybody who contributes to your project also becomes an exclusive
    copyright holder of their work. That means nobody can use, copy,
    distribute, or modify their contributions – and that “nobody” includes
    you.

    View full-size slide

  16. Are public GitHub projects open source?

    View full-size slide

  17. When you create a new project on GitHub, you have the option to
    make the repository private or public.

    View full-size slide

  18. Making your GitHub project public is not the
    same as licensing your project.

    View full-size slide

  19. If you want others to use, distribute, modify, or
    contribute back to your project, you need to
    include an open source license.

    View full-size slide

  20. What are different types of licenses available?
    Some of most popular are -
    ➔ MIT
    ➔ GPLv3
    ➔ Apache 2.0
    ➔ Mozilla Public License 2.0
    ➔ BSD 3-Clause "New" or "Revised" license
    ➔ BSD 2-Clause "Simplified" or "FreeBSD" license
    ➔ Common Development and Distribution License
    ➔ Eclipse Public License version 2.0
    ➔ GNU Library or "Lesser" General Public License (LGPL)

    View full-size slide

  21. Licenses for things that aren't code?
    Such as documentation or artwork, Creative Commons (CC) provides a
    useful suite of licenses.

    View full-size slide

  22. Platforms that are using Creatives Commons
    Licenses

    View full-size slide

  23. Just give me the TL;DR on what I need to
    protect my project.
    Open source licenses are standardized and easy to use. You can
    copy-paste an existing license directly into your project.

    View full-size slide

  24. I need to work in a community!
    Use the license preferred by the community you’re contributing to or
    depending on. Your project will fit right in.
    ➔ Apache requires Apache License 2.0
    ➔ Cloud Native Computing Foundation dictates Apache License 2.0 by
    default
    ➔ GNU recommends GNU GPLv3 for most programs
    ➔ NPM packages overwhelmingly use the MIT or the very similar ISC
    licenses
    ➔ OpenBSD prefers the ISC License
    ➔ Rust crates are overwhelmingly licensed under both MIT and
    Apache License 2.0
    ➔ WordPress plugins and themes must be GNU GPLv2 (or later)

    View full-size slide

  25. I want it simple and permissive!
    Choose MIT License!
    The MIT License is short and to the point. It lets people do almost
    anything they want with your project, including to make and distribute
    closed source versions.
    Babel, .NET Core, and Rails use the MIT License.

    View full-size slide

  26. I care about sharing improvements!
    The GNU GPLv3 also lets people do almost anything they want with
    your project, except to distribute closed source versions.
    Ansible, Bash, and GIMP use the GNU GPLv3.

    View full-size slide

  27. How to apply a license to your project?
    Create a text file in the root of your source code, typically named
    COPYING (a GNU convention), LICENSE or LICENSE.txt. Then copy the
    text of the license into that file.

    View full-size slide

  28. Components of licenses
    1. Permissions
    2. Conditions
    3. Limitations

    View full-size slide

  29. The Unlicense
    A license with no conditions whatsoever which dedicates works to the
    public domain. Unlicensed works, modifications, and larger works may
    be distributed under different terms and without source code.

    View full-size slide

  30. What if none of these work for me?

    View full-size slide

  31. My project isn’t software.
    There are licenses for that.

    View full-size slide

  32. Non-Software Licenses
    Data, media, etc.
    CC0-1.0, CC-BY-4.0, and CC-BY-SA-4.0 are open licenses used for
    non-software material ranging from datasets to videos. Note that
    CC-BY-4.0 and CC-BY-SA-4.0 should not be used for software.
    Documentation
    Any open source software license or open license for media (see above) is
    applicable to software documentation.

    View full-size slide

  33. Fonts
    The SIL Open Font License 1.1 keeps fonts open but allows them to be
    freely used in other works.
    Mixed Projects
    If your project contains a mix of software and other material, you can
    include multiple licenses, as long as you are explicit about which
    license applies to what parts of the project.

    View full-size slide

  34. I don’t want to choose a license!
    What will happen?

    View full-size slide

  35. If you are user
    You have options:
    ➔ Ask the maintainers nicely to add a license.
    ➔ Don’t use the software.
    ➔ Negotiate a private license.

    View full-size slide

  36. What if I want to change the license of my
    project?
    Fundamental things to consider:
    ➔ It’s complicated.
    ➔ Your project’s existing license.
    ➔ Your project’s existing copyright holders.

    View full-size slide

  37. Can Open Source software be used for
    commercial purposes?
    Absolutely. You can even sell Open Source software.

    View full-size slide

  38. Can I restrict how people use an Open Source
    licensed program?
    NO!
    Can I stop "evil people" from using my
    program?
    NO!

    View full-size slide

  39. What is "copyleft"?
    "Copyleft" refers to licenses that allow derivative works but require them
    to use the same license as the original work.

    View full-size slide

  40. Most copyleft licenses are Open Source, but
    not all Open Source licenses are copyleft.
    When an Open Source license is not copyleft, that means software
    released under that license can be used as part of programs distributed
    under other licenses, including proprietary (non-open-source) licenses.

    View full-size slide

  41. “Free Software” and “Open Source”
    two terms for the same thing

    View full-size slide

  42. When we call a program Open Source?
    Only if it uses one of the approved licenses, and releases appropriate
    software.

    View full-size slide

  43. Can I call my program "Open Source" even if I
    don't use an approved license?
    NO. Please don’t do that.

    View full-size slide

  44. Can I change a few words of a license and call
    it Open Source License?

    View full-size slide

  45. What if I don’t distribute my program source
    code but it’s binary.
    Should I call it Open Source?
    No. Open Source licenses are always applied to the source code. The
    binaries alone cannot be Open Source, because you're not making any
    source code available to be open.

    View full-size slide

  46. Contributor Agreements! How they are
    different from Open Source Licenses?
    Contributor agreements are not open source licenses — rather, they are
    a way for the contributor to tell the project that it has the right to
    distribute the new contributions under the project's existing open
    source license.

    View full-size slide

  47. Someone is violating a copyleft license, What
    can I do?
    One of the organizations below may be able to help:
    ➔ The Software Freedom Law Center.
    ➔ The GPL Violations Project.
    ➔ If the violation includes software that is one of Software Freedom
    Conservancy's Member Projects, you can contact the Conservancy at
    and they will help you help that
    project enforce the GPL.

    View full-size slide

  48. Thank You :)
    jogendra jogendrafx
    https://jogendra.github.io
    jogendrasingh24

    View full-size slide