Files
@ 64fdf604a13b
Branch filter:
Location: Copyleft/guide/presentations/20min-violation-intro/violation-intro.md - annotation
64fdf604a13b
3.2 KiB
text/markdown
Add Karen's name.
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 | a55777a6edd2 64fdf604a13b b5c77f2ede00 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 81ab95b0919e 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 4dc867878bd1 72ee4d2823b1 72ee4d2823b1 4dc867878bd1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 72ee4d2823b1 f41608f4f2c3 f41608f4f2c3 f41608f4f2c3 | % The What and How of GPL Violations
% Bradley M. Kuhn & Karen M. Sandler
% Tuesday 9 May 2017
# What's a GPL Violation?
+ GPL (both v2 and v3) require:
+ The whole work licensed under GPL.
+ (which means all copyrighted material added must be under
GPL-compatible licenses.)
+ Complete, Corresponding Source (CCS) of that work provided, under GPL.
+ The licenses terminate upon violation …
+ … thus failure to comply means lost distribution rights.
+ … enforcement uses this rights termination as leverage to
restore compliance.
# Enforcement is Technical
+ Copyleft's policy goals related to technical acts.
+ modifying, building, and installing software is a technical process.
+ In embedded systems, this process is rarely straightforward.
+ Yet GPL requires that such be possible.
+ In enforcement, we talk about “the CCS adequately meeting GPL's requirements”
# Compliance-Friendly Development
+ Use revision control ...
- ... to pull in vendor branch.
- ... to tag releases.
+ Avoid "Build Guru" ...
- ... by documenting build process.
- ... and versioning it, too.
# GPL Binary Requirements
(v2 § 3, v3 § 6)
+ Four options:
- Source alongside binary (v2/v3).
- Offer for source (v2/v3).
- Internet side-by-side distribution (v3).
- Torrent distribution (v3).
# Source Alongside Binary
+ Simplest option
+ **Obligations end at distribution time.**
+ Physical media required.
# Offer For Source
+ Useful if not shipping media already.
+ Lasts three years.
+ Mail fulfillment required (not in v3).
# Side-By-Side Distribution
+ Not in GPLv2, pedantically speaking.
+ Always been considered compliant for v2.
+ v3 clarifies this.
# Peer-to-Peer Distribution
+ v2 obviously couldn't consider this.
+ v3 allows distribution of equally seeded source and binary.
# Preparing Corresponding Source
(v2 § 3, v3 § 1)
+ Make sure all sources are present.
- revision system helps a lot here.
+ Build scripts
- make sure someone skilled in art can build it.
# Termination
(v2 § 4, v3 § 8)
+ v2 is automatic and permanent.
+ v3 has auto-reinstatement.
- 60 day self-correction timeout.
- 30 day penalty-less after notice.
+ Usually, you need copyright holder to reinstate.
# Actual Enforcement
+ [*The Principles of Community-Oriented GPL Enforcement* at sfconservancy.org/linux-compliance/principles.html](https://sfconservancy.org/linux-compliance/principles.html).
+ Send a Letter, carefully finding right person.
+ Communication is key.
+ Ask for CCS candidates.
# The "Rounds"
+ Ideally (it's only happened to me twice) the first source release is
perfect.
+ but we don't live in an ideal world.
+ The worst we've ever experienced is 22 rounds.
+ We send detailed reports.
# More Info / Talk License
<img align="right" src="cc-by-sa-4-0_88x31.png" />
<span class="fitonslide">
<p>Presentation and slides are: Copyright © Bradley M. Kuhn (2008–2011, 2015, 2017), Karen M. Sandler (2017), and are licensed under the <a rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/legalcode">Creative Commons Attribution-Share Alike 4.0 International License</a>. </p>
</span>
|