more presenter notes, remond me to make all the notes in Atkinson Hyperlegible

This commit is contained in:
ArgentumCation 2025-10-04 18:11:25 -04:00
parent 86f9c4cd79
commit 7918949833

View file

@ -147,6 +147,12 @@
- Distribution
- Modification
- Private Use
#colbreak()
The tl;dr for this section, every license in this section needs:
- Commercial use: you gotta be able to sell my shit
- Distribution: woe, my software be upon ye
- Modification: woe, they made horny fanfic of my software
- Private Use: whatever consenting adults do in the privacy of their own home using my software is not my problem
]
#slide[
@ -170,6 +176,33 @@
#figure(
image("img/gpl-compat.png"))
]
#colbreak()
#set text(size: 10.5pt,font: "Atkinson Hyperlegible")
These are the OG FOSS licenses, sourced directly from Richard Stallmans sweat glands
- GPLv2
- This is the original copyleft license
- New definition time:
- Copyright forbids changing stuff and giving it to others
- Copyleft forbids forbidding changing stuff and giving it to others
- Q: What happened to GPLv1?, A: I dont know and I dont care. Im gregnant, hungry, and wrote this slide at 4:57 PM, youre not getting real journalism out of me
- No Warranty: If you fuck up, it's not my problem
- No Liability: I'm not liable for whatever crimes against humanity you do with this
- Disclose Source: Put your code somewhere where people can see it\*
- there's no definition of what this actually means so like if you distribute the source code over telegraph that's probably allowed
- License notice: When you distribute this program, you gotta keep a copy of this license handy
- Same license: If you modify this program, you gotta keep this license
- State changes: If you modify this program and distribute it, you gotta say what you changed
- Q: If GPLv2 is so good, why is there no GPLv3
- GPLv3
- A: Im glad you fucking asked
- Back in ye olde days of like 2007 (jesus christ were some of you even born back then?) there was this company named TiVo, that shipped boxes with DRM to prevent users from running modified software
- In an absolutely based move, GNU was like fuck this and made GPLv3
- The patch notes are basically just
- Users should be able to run modified version of the software on any hardware that ships GPLv3 software
- No DRM, nuff said
- Patent Grant: If you put patented code in the codebase, you let contributors and users use the patent and cant sue them over it
- License interop: makes it easier to use code under other licenses in your work
-In general you can include stuff under a permissive license in a more restrictive license
]
#slide[
@ -180,6 +213,19 @@
- Used by Grafana, Mastodon, et al
- LGPLv{2,3}
- Linking Freedom
#colbreak()
#set text(size:17.5pt)
And here we have the offshoots of the original GPL licenses
- AGPL
- The A stands for Affero, which is the company that made this license
- Basically the same as GPLv3, except if the software runs over a network, you still need to make the source code available
- This is basically the most restrictive license you can get while still being open source
- LGPL
- The L doesnt mean its an L license, it just means lesser
- Okay those arent that far apart
- Mainly intended for licenses
- You can link against a shared object (like a .so or .dll) without worrying about the license
- If you modify the code for an LGPL library, you still gotta release it
]
#slide[
@ -203,6 +249,30 @@ On the more permissive end
- BSD 0 Clause
- Fuck it we ball
]
#colbreak()
#set text(size:12pt, font: "Atkinson Hyperlegible")
These are some of the more permissive licenses, originally used for BSD itself
- 4 Clause
- This one is the original license used for BSD, its pretty rare these days
- Githubs license pickers examples of projects that use this includes two projects that have been dead for years, and one random java library
- The main bits are:
- Keep a copy of this license available with source and binaries
- You cant claim the original authors endorse your derivative in advertising
- If you advertise a derivative, you gotta say that “This product includes software developed by [project]
- People took issue with that last part, which led to
- 3 Clause
- It's the same one as BSD-4, but removes the pesky requirement to cite the people you stole code from in your aads
- 2 Clause
- Apparently not being able to slap Hexley's face on derivative software is a deal breaker for some people
- Okay I found out after writing that line that Hexley is the Darwin mascot, not the BSD one
- Foreshadowing is a literary technique in which
- You can use the original authors to promote your derivative work
- 2 Clause Patent
- Same as above with a patent grant
- 1 Clause
- BSD 2 except you dont have to include the license with binaries, just source code
- 0 Clause
- Okay so apparently INCLUDING THE FUCKING LICENSE was too much for some fuckers, so BSD-0 was created
]
#slide[
= Creative Commons
@ -215,6 +285,21 @@ Intended to sit between public domain and All rights reserved
- Attribution + ShareAlike
- CC0
- Public Domain
#colbreak()
#set text(size: 14pt)
- Creative Commons licenses are a group of licenses that are intended sit between All Rights Reserved and Public Domain, these ones are considered open source, the non open sources
- While most of the other licenses in this talk are primarily focused on software, CC licenses are used for basically everything,
- This talk itself is CC-BY-NC-SA 4.0, and the images I stole from wikipedia are probbaly under some other CC license
- The Stallman pic at the beginning of this talk is CC-BY-SA 4.0, if you can find a way to make money off that shit, be my guest
- #link("https://creativecommons.org/licenses/by/4.0/")[CC-BY-4.0]
- Do whatever the fuck you want, just credit me
- #link("")[CC-BY-SA 4.0]
- Same as above but you gotta use the same license on derivatives
- This is the most common CC license
- #link("https://creativecommons.org/publicdomain/zero/1.0/")[CC0]
- Do whatever the fuck you want, period
- it's public domain
- this license only exists because some places don't have a concept of you putting your work into the public domain
]
#slide[
= The Permissive Twins
@ -227,6 +312,21 @@ Apache:
- GPLv3 Compatible
- LLVM Exception (optional)
- FSF begrudgingly approved
#colbreak()
#set text(size: 15pt)
- #link("https://www.apache.org/licenses/LICENSE-2.0")[Apache]
- If there's a NOTICE file in the original work, you gotta keep it in the derivatives
- this don't need to contain any legal stuff, you can put whatever the fuck you want in there, like the bee movie script
- any unmodified parts of the codebase need to remain under the Apache license
- if you modify it, anything goes
- any contributions to an apache licensed codebase are under the same license unless otherwise stated
- also does the whole patent grant thing, so you can use any patents that are already in the codebase
- oh yeah, you also need to state any changes you make
- you can combine this stuff with GPLv3 as long as the result is GPLv3
- It's not compatible with GPLv2 unless you add:
- #link("https://spdx.org/licenses/LLVM-exception.html")[LLVM exception]
- this basically just lets you link against anything with this exception included
- If you're gonna use a permissive license, FSF would rather it be this one
]
#slide[