-
Notifications
You must be signed in to change notification settings - Fork 13
/
licenses.html
337 lines (209 loc) · 8.98 KB
/
licenses.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
<!DOCTYPE html>
<html>
<head>
<title>licensses</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<link href="css/slides.css" rel="stylesheet" type="text/css" />
</head>
<body>
<textarea id="source">
class: center, middle
# CSCI-UA 480.10: OSSD
<br>
## open surce licenses
.author[
Instructor: Joanna Klukowska <br>
]
.license[
Unless noted otherwise all content is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
]
---
# Attribution
Much of the content of these slides has been adapted from and influenced by several sources:
- [OSI Frequently Answered Questions](https://opensource.org/faq)
- Wikipedia articles:
- [Software license](https://en.wikipedia.org/wiki/Software_license#Software_licenses_and_copyright_law)
- [Copyleft license](https://en.wikipedia.org/wiki/Copyleft)
- [Permissive software license](https://en.wikipedia.org/wiki/Permissive_software_licence)
- [The Legal Side of Open Source](https://opensource.guide/legal/)
- Open Source Licensing by Carlos Jensen
- [The Importance and Value of Open Source Licenses](https://github.com/rcos/CSCI2963-01-Spring2017/blob/master/Lectures/Lec2-Licensing-S2016-RPIpres-By-Patrick-Masson.pdf)
by Patrick Masson
---
# common questions
- Do I really need to have a license for my software (or non-software materials)
if I am making it available for anyone to download anyway?
--
- Can I _use_ any software that I find available for download on the Internet?
--
- What are the differences between all the different licenses?
--
- Can I just place my work in public domain?
--
.footnote[
more questions (and answers) on [The Legal Side of Open Source](https://opensource.guide/legal/)
]
---
# Software License
A __software license__ is a legal instrument (usually by way of contract law,
with or without printed material) governing the use or redistribution of software.
- Under United States copyright law __all software is copyright protected__,
in source code and also as object code form. The only exception is software in the __public domain__.
- A typical __software license grants the licensee, typically an end-user, permission
to use one or more copies of software__ in ways where such a use would otherwise potentially
constitute copyright infringement of the software owner's exclusive rights under copyright law.
.footnote[
from [Software license](https://en.wikipedia.org/wiki/Software_license#Software_licenses_and_copyright_law),
Wikipedia, retrieved on Apr. 19, 2018.
]
---
class: center, middle
# no license
# =
# "all rights reserved"
---
# Public Domain vs. Copyright
<center>
<a href=https://commons.wikimedia.org/wiki/File:Difference_between_open_license,_public_domain_and_all_rights_reserved_copyright.png>
<img src="https://upload.wikimedia.org/wikipedia/commons/a/af/Difference_between_open_license%2C_public_domain_and_all_rights_reserved_copyright.png"
alt="Difference between open license, public domain and all rights reserved copyright" width="550px" align="middle">
</a>
</center>
- Software (or anything else) has to be copyrighted in order to be licensable.
.footnote[
Image by Boyoung Chae, Creative Commons Attribution 4.0 International license.
]
---
# _Copyleft_ software licenses
--
__Copyleft__ refers to licenses that allow derivative works but require them to
use the same license as the original work.
- the right to freely distribute copies and modified versions of a work
with the stipulation that the same rights be preserved in derivative works down the line
- copyleft licenses are _restrictive_, _protective_, _reciprocal_
<a href=https://commons.wikimedia.org/wiki/File:Difference_between_open_license,_public_domain_and_all_rights_reserved_copyright.png>
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/8b/Copyleft.svg/330px-Copyleft.svg.png"
alt="Copyleft symbol" width="250px" align="right">
</a>
- examples:
- [GNU public license](https://opensource.org/licenses/gpl-license)
- [Mozilla public license](https://opensource.org/licenses/MPL-2.0)
- [Eclipse public license](https://opensource.org/licenses/EPL-1.0)
- see also [Copyleft license](https://en.wikipedia.org/wiki/Copyleft) on Wikipedia
---
# _Permissive_ software licenses
A __permissive__ software license is a free software software license with minimal requirements about how the software
can be redistributed.
- sometimes also called BSD-like or BSD-style license
- examples:
- [MIT License](https://opensource.org/licenses/MIT)
- [BSD License](https://opensource.org/licenses/BSD-3-Clause)
- [Apple Public Source License](https://opensource.org/licenses/APSL-2.0)
- [Apache License](https://opensource.org/licenses/Apache-2.0)
- see also [Permissive software license](https://en.wikipedia.org/wiki/Permissive_software_licence) on Wikipedia
---
# Contributor agreements
- many open source projects will only accept contributions from people who have submitted
a legal document known as a __contributor agreement__
- not an open source license
- 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
- two kinds:
- __Contributor License Agreement (CLA)__ - the original contributor retains copyright
ownership of their contributions, but grants the project a broad set of rights such
that the project can incorporate and distribute the contributions as it needs to
- __Copyright Assignment Agreement (CAA)__ - the contributor actually transfers copyright
ownership of the contributions to the project, who can then license it however
they want since they own it (but a CAA typically grants very broad non-exclusive
rights back to the contributor so that they too can use, distribute, sublicense
etc their contribution freely).
- "the project" has to be some kind of legal entity able to enter into agreements
(a non-profit entity, sometimes represented by an umbrella non-profit organization,
sometimes a for-profit corporation
- see also [Contributor Agreements](http://wiki.civiccommons.org/Contributor_Agreements/)
---
# Creative Commons
## Licensing things other than software
- Creative Commons licenses provide an easy way to manage the copyright terms
that attach automatically to all creative material under copyright.
- The licenses allow that material to be shared and reused under terms that
are flexible and legally sound.
- Creative Commons offers a core suite of six copyright licenses.
- Because there is no single "Creative Commons license," it is important to identify
which of the six licenses you are applying to your material, which of the six
licenses has been applied to material that you intend to use, and in both cases the specific version.
<a href="https://creativecommons.org/" ><img src="img/cc_logo.png" alt="creating commons logo"
width="200px" align="right"></a>
---
# CC License Conditions
<img src="img/cc_components.png" alt="CC lincense conditions" width="600px">
.footnote[from [Creative Commons website](https://creativecommons.org/share-your-work/licensing-types-examples/),
retrieved Apr. 19, 2018]
---
class: center, middle
# Selected linceses
from [Software licenses in Plain English](https://tldrlegal.com/)
---
# GNU General Public License v3 (GPL-3)
<br>
<center>
<img src="img/GPL3.png" width="830" alt="GPL license">
</center>
---
# Mozilla Public License 2.0 (MPL-2.0)
<br>
<center>
<img src="img/MozillaPL.png" width="830" alt="Mozilla license">
</center>
---
# Eclipse Public License 1.0 (EPL-1.0)
<br>
<center>
<img src="img/EclipsePL.png" width="830" alt="Eclipse license">
</center>
---
# MIT License (Expat)
<br>
<center>
<img src="img/MIT.png" width="830" alt="MIT license">
</center>
---
# BSD 2-Clause License (FreeBSD/Simplified)
<br>
<center>
<img src="img/BSD.png" width="830" alt="BSD license">
</center>
---
# Apache License 2.0 (Apache-2.0)
<br>
<center>
<img src="img/Apache.png" width="830" alt="Apache license">
</center>
---
class: center, middle
# Selecting a lincese
---
# Chosing a license
- Do not create your own license (unless you are a big corporation with lawyers who
know what they are doing and you have good reasons to have your own license)
- Decide what restrictions are important to you and your user base
- Consider compatibility issues, and whether a multi-license is right for you
- If in doubt, simple is usually better
- Use available tools to guide you through the decision process.
---
# choosealicense.com
<center>
<a href="https://choosealicense.com/"><img src="img/choose_a_lincense.png" alt="choose a license tool" width="700px"></a>
</center>
---
# Creative Commons tools for chosing a license
<center>
<a href="https://creativecommons.org/share-your-work/"><img src="img/cc_choose_license.png" alt="cc choose a license tool" width="700px"></a>
</center>
</textarea>
<script src="js/remark.js" type="text/javascript">
</script>
<script src="js/remark_conf.js" type="text/javascript">
</script>
</body>
</html>