initial commit
2
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
fonts/*
|
||||||
|
*.pdf
|
||||||
BIN
img/anika.png
Normal file
|
After Width: | Height: | Size: 153 KiB |
BIN
img/full-bush.png
Normal file
|
After Width: | Height: | Size: 3.2 MiB |
BIN
img/gpl-compat.png
Executable file
|
After Width: | Height: | Size: 69 KiB |
BIN
img/hexley.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
img/hexley.png
Normal file
|
After Width: | Height: | Size: 154 KiB |
BIN
img/hexley.webp
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
img/stallman.png
Executable file
|
After Width: | Height: | Size: 1.2 MiB |
1
licensing.pdfpc
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
{"pdfpcFormat":2,"disableMarkdown":false,"pages":[{"idx":0,"label":1,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":1,"label":2,"overlay":0,"forcedOverlay":false,"hidden":false,"note":"This is a note that only the speaker will see."},{"idx":2,"label":3,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":3,"label":4,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":4,"label":5,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":5,"label":6,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":6,"label":7,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":7,"label":8,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":8,"label":9,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":9,"label":10,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":10,"label":11,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":11,"label":12,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":12,"label":13,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":13,"label":14,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":14,"label":15,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":15,"label":16,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":16,"label":17,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":17,"label":18,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":18,"label":18,"overlay":1,"forcedOverlay":true,"hidden":false},{"idx":19,"label":19,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":20,"label":20,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":21,"label":21,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":22,"label":22,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":23,"label":23,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":24,"label":24,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":25,"label":25,"overlay":0,"forcedOverlay":false,"hidden":false},{"idx":26,"label":26,"overlay":0,"forcedOverlay":false,"hidden":false}]}
|
||||||
477
licensing.tex
Normal file
|
|
@ -0,0 +1,477 @@
|
||||||
|
%! TEX program = lualatex
|
||||||
|
|
||||||
|
\documentclass{beamer}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\usepackage{amsmath,amssymb,lmodern}
|
||||||
|
\usepackage{gensymb}
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\usepackage{lmodern}
|
||||||
|
\usepackage{stackengine}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usetheme{Madrid}
|
||||||
|
|
||||||
|
|
||||||
|
\definecolor{base00}{rgb}{0.004,0.008,0.024}
|
||||||
|
\definecolor{base01}{rgb}{0.118,0.106,0.188}
|
||||||
|
\definecolor{base02}{rgb}{0.314,0.271,0.451}
|
||||||
|
\definecolor{base03}{rgb}{0.455,0.431,0.584}
|
||||||
|
\definecolor{base06}{rgb}{0.922,0.965,1}
|
||||||
|
\definecolor{base07}{rgb}{0.984,0.984,1}
|
||||||
|
\definecolor{base0F}{rgb}{0.639,0.290,0.471}
|
||||||
|
|
||||||
|
\setbeamercolor{palette primary}{fg=base07,bg=base02}
|
||||||
|
\setbeamercolor{palette secondary}{fg=base06,bg=base01}
|
||||||
|
\setbeamercolor{palette tertiary}{fg=base06,bg=base03}
|
||||||
|
\setbeamercolor{palette quarternary}{fg=base06,bg=red}
|
||||||
|
\setbeamercolor{structure}{fg=base06} % itemize, enumerate, etc
|
||||||
|
\setbeamercolor{section in toc}{fg=blue} % TOC sections
|
||||||
|
\setbeamercolor{block title alerted}{bg=base0F,fg=base06}
|
||||||
|
\setbeamercolor{block body alerted}{bg=base0F!75,fg=base00}
|
||||||
|
\setbeamercolor{enumerate item}{fg=base03}
|
||||||
|
\setbeamercolor{background canvas}{bg=base00}
|
||||||
|
\setbeamercolor{normal text}{fg=base06}
|
||||||
|
\newcommand{\tinyscript}{\fontsize{7.5}{8.5}\selectfont}
|
||||||
|
\setbeameroption{show notes on second screen=right} % Both
|
||||||
|
\setbeamertemplate{note page}{%
|
||||||
|
\begin{minipage}[t][\textheight]{\textwidth}
|
||||||
|
\tinyscript
|
||||||
|
\let\olditem\item
|
||||||
|
\renewcommand{\item}{\olditem\tinyscript}
|
||||||
|
\insertnote
|
||||||
|
\end{minipage}
|
||||||
|
}
|
||||||
|
\usefonttheme[onlymath]{serif}
|
||||||
|
\setsansfont{Berkeley Mono}
|
||||||
|
|
||||||
|
%Information to be included in the title page:
|
||||||
|
\title{*Notices your Software*}
|
||||||
|
\subtitle{
|
||||||
|
OwO, is this under a Free, Libre, and Open Source License? \\
|
||||||
|
A crime against legal systems, good writing, and Richard Stallman himself
|
||||||
|
}
|
||||||
|
|
||||||
|
\date{2025-09-19}
|
||||||
|
\author{Mira (ArgentumCation)}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\maketitle
|
||||||
|
\section{Introduction}
|
||||||
|
\begin{frame}{What's a License}
|
||||||
|
\begin{itemize}
|
||||||
|
|
||||||
|
\note[item] {
|
||||||
|
First up, what is a license? \\
|
||||||
|
A miserable block of text, next question.
|
||||||
|
}
|
||||||
|
\item How you tell other people what they can and can't do with the things you make
|
||||||
|
|
||||||
|
\note[item] {
|
||||||
|
Copyright law is a bitch, Posting your stuff online is a bitch \\
|
||||||
|
Basically a license is your way of telling other people what they can and can’t do with your stuff
|
||||||
|
}
|
||||||
|
\note[item]{New definitions time: Copyright forbids changing stuff and giving it to others, Copyleft forbids forbidding changing stuff and giving it to others}
|
||||||
|
\item By default, works are under All Rights Reserved
|
||||||
|
\note[item] {By default, your stuff is under All Rights Reserved, which means you own it and if anyone wants to use it/look at it/share it/what have you, then they’ve gotta go through you first}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Until big corpo and/or pirates get their mitts on it
|
||||||
|
\note[item] {In practice, that's probably not gonna stop anyone until you get lawyers involved}
|
||||||
|
\end{itemize}
|
||||||
|
\item There's two big classes of license
|
||||||
|
\note[item] {So with the kind of licenses you can get off the shelf, there’s two main types, Permissive and Restrictive, I find it helpful to think of these from the point of view of big corpo}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Permissive
|
||||||
|
\note[item] {
|
||||||
|
Permissive
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item Basically gives downstream people more freedom to do whatever they want. Like making their own copy of your stuff and selling it
|
||||||
|
\item Big companies will generally only use dependencies if they’re under a permissive license
|
||||||
|
\end{itemize}
|
||||||
|
}
|
||||||
|
\item Restrictive
|
||||||
|
\note[item] {
|
||||||
|
Restrictive
|
||||||
|
\begin{itemize}
|
||||||
|
\item Intended to protect specific freedoms, like distribution and modification
|
||||||
|
\item Big companies will generally avoid these like the plague
|
||||||
|
\end{itemize}
|
||||||
|
}
|
||||||
|
\end{itemize}
|
||||||
|
\item Can also control other things
|
||||||
|
\begin{itemize}
|
||||||
|
\item Some licenses have ethics clauses
|
||||||
|
\item Some are royalty-free
|
||||||
|
\note[item] {Licenses can attempt to enforce other things like ethics clauses or royalty free}
|
||||||
|
\note[item] {Royalties in this case are basically a subscription fee to use a copyrighted work}
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\section{FOSS Licenses}
|
||||||
|
\begin{frame}
|
||||||
|
\centering
|
||||||
|
\huge FOSS Licenses
|
||||||
|
\note{FOSS stands for Free and Open Source Software, the definition of which is loosely enforced by the Open Source Initiative and Free Software Foundation}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{FOSS Freedoms}
|
||||||
|
|
||||||
|
As outlined by the Stall Man himself, this delineates what's open source or not
|
||||||
|
|
||||||
|
\begin{enumerate}
|
||||||
|
\setcounter{enumi}{-1}
|
||||||
|
\note[item]{This is the general idea of what FOSS is}
|
||||||
|
\item The freedom to run the program to for whatever and whyever
|
||||||
|
\note[item]{Let me use the program however the fuck I want}
|
||||||
|
\item The freedom to see and modify the source code
|
||||||
|
\note[item]{Let me do whatever the fuck I want with the code}
|
||||||
|
\item The freedom to make and distribute copies
|
||||||
|
\note[item]{I can give your code to whoever the fuck}
|
||||||
|
\item The freedom to do that with your modified versions
|
||||||
|
\note[item]{I can give my code to whoever the fuck}
|
||||||
|
\end{enumerate}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{FOSS Freedoms (cont.)}
|
||||||
|
Everything in this section is gonna have the following requirements:
|
||||||
|
\begin{itemize}
|
||||||
|
\note[item]{The tl;dr for this section, every license in this section needs:}
|
||||||
|
\item Commercial Use
|
||||||
|
\note[item]{Commercial use: you gotta be able to sell my shit}
|
||||||
|
\item Distribution
|
||||||
|
\note[item]{Distribution: woe, my software be upon ye}
|
||||||
|
\item Modification
|
||||||
|
\note[item]{Modification: woe, they made horny fanfic of my software}
|
||||||
|
\item Private Use
|
||||||
|
\note[item]{Private Use: whatever consenting adults do in the privacy of their own home using my software is not my problem}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{GPL: The GNU Pubic Licenses}
|
||||||
|
\note[item]{These are the OG FOSS licenses, sourced directly from Richard Stallman’s sweat glands}
|
||||||
|
\begin{itemize}
|
||||||
|
\item GPLv2
|
||||||
|
\note[item]{This is the original copyleft license}
|
||||||
|
\note[item]{Q: What happened to GPLv1? \\
|
||||||
|
A: I don’t know and I don’t care. I’m gregnant, hungry, and wrote this slide at 4:57 PM, you’re not getting real journalism out of me}
|
||||||
|
\begin{itemize}
|
||||||
|
\item No Warranty
|
||||||
|
\item No Liability
|
||||||
|
\item Disclose Source
|
||||||
|
\item Same License
|
||||||
|
\item State Changes
|
||||||
|
\end{itemize}
|
||||||
|
\item GPLv3
|
||||||
|
\begin{itemize}
|
||||||
|
\item Don’t lock down the hardware
|
||||||
|
\item No DRM
|
||||||
|
\item Patent Grant
|
||||||
|
\item License Interop
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{GPL (cont.)}
|
||||||
|
\begin{itemize}
|
||||||
|
\item AGPLv\{2,3\}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Network use counts as distribution
|
||||||
|
\item Used by Grafana, Mastodon, et al
|
||||||
|
\end{itemize}
|
||||||
|
\item LGPLv\{2,3\}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Linking Freedom
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{BSD Licenses}
|
||||||
|
\begin{itemize}
|
||||||
|
\item On the more permissive end
|
||||||
|
\item BSD 4 Clause
|
||||||
|
\begin{itemize}
|
||||||
|
\item Original BSD license
|
||||||
|
\item Copyright notice
|
||||||
|
\item No endorsement
|
||||||
|
\item Attribution
|
||||||
|
\end{itemize}
|
||||||
|
\item BSD 3 Clause
|
||||||
|
\begin{itemize}
|
||||||
|
\item Removes advertising requirement
|
||||||
|
\end{itemize}
|
||||||
|
\item BSD 2 Clause
|
||||||
|
\begin{itemize}
|
||||||
|
\item Yes endorsement
|
||||||
|
\end{itemize}
|
||||||
|
\item BSD 2 Clause Patent
|
||||||
|
\begin{itemize}
|
||||||
|
\item Same as above with a patent grant
|
||||||
|
\end{itemize}
|
||||||
|
\item BSD 1 Clause
|
||||||
|
\begin{itemize}
|
||||||
|
\item Same as 2 Clause, but only need license for source
|
||||||
|
\end{itemize}
|
||||||
|
\item BSD 0 Clause
|
||||||
|
\begin{itemize}
|
||||||
|
\item Fuck it we ball
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Creative Commons Part 1}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Intended to sit between public domain and All rights reserved]
|
||||||
|
\item Not specific to software
|
||||||
|
\begin{itemize}
|
||||||
|
\item This presentation is CC-BY-NC-SA 4.0
|
||||||
|
\end{itemize}
|
||||||
|
\item CC-BY
|
||||||
|
\begin{itemize}
|
||||||
|
\item Attribution
|
||||||
|
\end{itemize}
|
||||||
|
\item CC-BY-SA
|
||||||
|
\begin{itemize}
|
||||||
|
\item Attribution + ShareAlike
|
||||||
|
\end{itemize}
|
||||||
|
\item CC0
|
||||||
|
\begin{itemize}
|
||||||
|
\item Public Domain
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{The Permissive Twins}
|
||||||
|
Apache
|
||||||
|
\begin{itemize}
|
||||||
|
\item Keep Notices
|
||||||
|
\item Unmodified code stays under Apache in derivatives
|
||||||
|
\begin{itemize}
|
||||||
|
\item Modified code can be under any license
|
||||||
|
\end{itemize}
|
||||||
|
\item Patent Grant
|
||||||
|
\item State Changes
|
||||||
|
\item GPLv3 Compatible
|
||||||
|
\item LLVM Exception (optional)
|
||||||
|
\item FSF begrudgingly approved
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{The Permissive Twins (cont.)}
|
||||||
|
MIT
|
||||||
|
\begin{itemize}
|
||||||
|
\item Most popular license on GitHub
|
||||||
|
\item Include the license in derivatives
|
||||||
|
\begin{itemize}
|
||||||
|
\item MIT-0 doesn’t even require that
|
||||||
|
\end{itemize}
|
||||||
|
\item No patent grant
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{The Other Public Domain Ones}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Unlicense
|
||||||
|
\begin{itemize}
|
||||||
|
\item Public Domain, with more words
|
||||||
|
\end{itemize}
|
||||||
|
\item WTFPL
|
||||||
|
\begin{itemize}
|
||||||
|
\item "You just DO WHAT THE FUCK YOU WANT TO"
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Grab Bag}
|
||||||
|
\begin{itemize}
|
||||||
|
\item EUPL
|
||||||
|
\begin{itemize}
|
||||||
|
\item Most popular on GyattHub
|
||||||
|
\item Made by EU
|
||||||
|
\item Compatible with GPL/AGPL/MPL/LGPL/APL/JPL/Both IPLs/BNPL/WTFPL and what have you
|
||||||
|
\item Linking Freedom
|
||||||
|
\item Network Use is distribution
|
||||||
|
\item Royalty Free
|
||||||
|
\end{itemize}
|
||||||
|
\item MPL
|
||||||
|
\begin{itemize}
|
||||||
|
\item Used by Firefox and Thunderbird
|
||||||
|
\item You gotta keep em seperated
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\section{Non-FOSS Licenses}
|
||||||
|
\begin{frame}
|
||||||
|
\centering
|
||||||
|
\huge Non-FOSS Licenses
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Creative Commons Part 2: Tragedy of the Commons}
|
||||||
|
\begin{itemize}
|
||||||
|
\item CC-BY-NC-SA
|
||||||
|
\begin{itemize}
|
||||||
|
\item Attribution
|
||||||
|
\item NonCommercial
|
||||||
|
\item ShareAlike
|
||||||
|
\end{itemize}
|
||||||
|
\item CC-BY-ND
|
||||||
|
\begin{itemize}
|
||||||
|
\item Attribution
|
||||||
|
\item NoDerivatives
|
||||||
|
\end{itemize}
|
||||||
|
\item CC-BY-NC-ND
|
||||||
|
\begin{itemize}
|
||||||
|
\item You're smart, you can figure it out
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Putting the Pot in Potpurri}
|
||||||
|
\begin{itemize}
|
||||||
|
\item AFPL
|
||||||
|
\begin{itemize}
|
||||||
|
\item Derived from GPL
|
||||||
|
\item Include Source Code
|
||||||
|
\item No selling
|
||||||
|
\end{itemize}
|
||||||
|
\item Anti-996
|
||||||
|
\begin{itemize}
|
||||||
|
\item So back in the old \stackanchor{zhōng}{中} of \stackanchor{guó}{国}, there was this thing called the 996 system
|
||||||
|
\item Don’t be Mr. Krabs, follow labor laws
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Putting the Pot in Potpurri (cont.)}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Anti-Capitalist Software License
|
||||||
|
\begin{itemize}
|
||||||
|
\item Include License
|
||||||
|
\item Don’t be a capitalist
|
||||||
|
\item ACAB
|
||||||
|
\end{itemize}
|
||||||
|
\item Artistic License
|
||||||
|
\begin{itemize}
|
||||||
|
\item \sout{Is what I’m taking with all these legal definitions}
|
||||||
|
\item Not that important except FSF calls it "Too clever for its own good" which I thought was funny
|
||||||
|
\item I can't even find a link for this
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Putting the Pot in Potpurri (cont.)}
|
||||||
|
BSD 3 Clause No Nuclear Warranty
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}{Rapid Fire since it's 5:49PM and I have to leave in 20 minutes}
|
||||||
|
\begin{itemize}
|
||||||
|
\item BUSL/BSL
|
||||||
|
\begin{itemize}
|
||||||
|
\item GPLv2-ish after 4 years
|
||||||
|
\end{itemize}
|
||||||
|
\item CPOL
|
||||||
|
\begin{itemize}
|
||||||
|
\item No selly
|
||||||
|
\item Can't do shit without permission from author
|
||||||
|
\end{itemize}
|
||||||
|
\item Commons Clause
|
||||||
|
\begin{itemize}
|
||||||
|
\item Not actually a license
|
||||||
|
\item Don't sell my shit
|
||||||
|
\end{itemize}
|
||||||
|
\item Functional Source License
|
||||||
|
\begin{itemize}
|
||||||
|
\item Apache or MIT after 2 years
|
||||||
|
\item No competing with me
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Rapid Fire since it's 5:49PM (cont.)}
|
||||||
|
\begin{itemize}
|
||||||
|
\item HESSLA
|
||||||
|
\begin{itemize}
|
||||||
|
\item No human rights violations pls
|
||||||
|
\item No helping other people do human rights violations
|
||||||
|
\end{itemize}
|
||||||
|
\item JSON
|
||||||
|
\begin{itemize}
|
||||||
|
\item Don't be evil
|
||||||
|
\iem Unless you're IBM
|
||||||
|
\end{itemize}
|
||||||
|
\item PPL
|
||||||
|
\begin{itemize}
|
||||||
|
\item Dont make money off of this unless you're a co-op
|
||||||
|
\end{itemize}
|
||||||
|
\item SSPL
|
||||||
|
\begin{itemize}
|
||||||
|
\item AGPL with extra steps
|
||||||
|
\end{itemize}
|
||||||
|
\item SIL OFL
|
||||||
|
\begin{itemize}
|
||||||
|
\item For fonts
|
||||||
|
\item Don't charge money for it
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Hexley}
|
||||||
|
\begin{itemize}
|
||||||
|
\item WHY THE FUCK DOES APPLE HAVE A FUCKING LICENSE FOR ITS FURSONA
|
||||||
|
\item WHY DOES APPLE HAVE A FURSONA
|
||||||
|
\item WHY THE FUCK dO I HAVE The LICENSE FOR A NON-FOSS FUCKIGN FURSONA IN MY PRESENTATION
|
||||||
|
\item You need to include the copyright statement somewhere
|
||||||
|
\item If you want to mass produce merch, you need to request permission from the copyright holders
|
||||||
|
\begin{itemize}
|
||||||
|
\item derivatives must be related to original work
|
||||||
|
\item derivatives should also should not "dilute the quality" of the work
|
||||||
|
\end{itemize}
|
||||||
|
\item IT'S ONE AM AND THEY HIT THE SECOND FUCKING BRAINCELL
|
||||||
|
\item I AM HAVING A DTROKE APPLE NAS TEO FURSONAE
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
%% Anika + Hexley slide
|
||||||
|
\begin{frame}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Hippocratic License}
|
||||||
|
This one is pretty modular actually
|
||||||
|
\begin{itemize}
|
||||||
|
\item no charge
|
||||||
|
\item no royalty
|
||||||
|
\item can remix/redistribute etc
|
||||||
|
\item has patent grant
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Hippocratic License Core}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Don't murder people
|
||||||
|
\item Don't slavery
|
||||||
|
\item Don't child labors
|
||||||
|
\item No Cruel and Unusual Punishment
|
||||||
|
\item No racism/sexism/etc
|
||||||
|
\item Right to a fair trial?
|
||||||
|
\item No search and seizure without a warrant or random arrests?
|
||||||
|
\item No invasions of home or privacy, or communications
|
||||||
|
\item No eminent domain
|
||||||
|
\item No Trail of Tearsing people
|
||||||
|
\item No unionbusting
|
||||||
|
\item No hurting the environment
|
||||||
|
\item equal pay for equal work
|
||||||
|
\item reasonable working hours and periodic paid holidays
|
||||||
|
\item Verify your supply chain
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Hippocratic License Optional Sections}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Don't be a fossil fuel company
|
||||||
|
\item No hurting the environment (again?)
|
||||||
|
\item No mineral or fossil fuel mining
|
||||||
|
\item Don't be on the BDS list
|
||||||
|
\item Don't be the Taliban
|
||||||
|
\item Don't be the Myanmar government
|
||||||
|
\item Don't do business in/with the Xinjiang Uygur Autonomous Region of China?
|
||||||
|
\item Don't have beef with Customs and Border Protection for Forced Labor
|
||||||
|
\item Don't do mass surveillance
|
||||||
|
\item Don't be a military
|
||||||
|
\item Don't be law enforcement
|
||||||
|
\item Don't be a media entity that promotes violence
|
||||||
|
\item Don't unionbusting (again?)
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Resources that can help with picking a license}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Most of these are only gonna help with FOSS licenses
|
||||||
|
\item \href{https://choosealicense.com/}{choosealicense.com} is maintained by GitHub, has the most common licenses
|
||||||
|
\item \href{https://interoperable-europe.ec.europa.eu/collection/eupl/solution/licensing-assistant/find-and-compare-software-licenses}{EU Licensing Assistant} makes it easier to compare licenses in my opinion
|
||||||
|
\item \href{https://spdx.org/licenses/}{SPDX} is gonna be the most thorough source, has a list of like every license on earth, and licenses are typically identified using their entry in the SPDX list
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\end{document}
|
||||||
425
licensing.typ
Normal file
|
|
@ -0,0 +1,425 @@
|
||||||
|
#import "@preview/polylux:0.4.0": *
|
||||||
|
#import "@preview/rubby:0.10.2": get-ruby
|
||||||
|
|
||||||
|
// Make the paper dimensions fit for a presentation and the text larger
|
||||||
|
// #set page(paper: "presentation-16-9", fill: rgb("#010206"))
|
||||||
|
#set page(width: 297.0mm * 2,height: 168.0625mm, fill: rgb("#010206"), columns: 2,
|
||||||
|
background: [
|
||||||
|
#place(
|
||||||
|
top + left,
|
||||||
|
rect(
|
||||||
|
width: 50%,
|
||||||
|
height: 100%,
|
||||||
|
fill: rgb("#010206"),
|
||||||
|
)
|
||||||
|
)
|
||||||
|
#place(
|
||||||
|
top + right,
|
||||||
|
rect(
|
||||||
|
width: 50%,
|
||||||
|
height: 100%,
|
||||||
|
fill: rgb("#1e1b30"),
|
||||||
|
)
|
||||||
|
)
|
||||||
|
])
|
||||||
|
#set columns(gutter: 4%)
|
||||||
|
#set text(size: 18pt, font: "TX-02", fill: rgb("#EBF6ff"), fallback: true,weight: 400)
|
||||||
|
#set align(top)
|
||||||
|
#let sections-band = toolbox.all-sections( (sections, current) => {
|
||||||
|
align(left)[
|
||||||
|
#box(
|
||||||
|
width: 50%,
|
||||||
|
{
|
||||||
|
set text(fill: gray, size: .8em)
|
||||||
|
sections
|
||||||
|
.map(s => if s == current { strong(s) } else { s })
|
||||||
|
.join([ • ])
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]
|
||||||
|
})
|
||||||
|
#let ruby = get-ruby(
|
||||||
|
size: 0.5em, // Ruby font size
|
||||||
|
dy: 0pt, // Vertical offset of the ruby
|
||||||
|
pos: top, // Ruby position (top or bottom)
|
||||||
|
alignment: "center", // Ruby alignment ("center", "start", "between", "around")
|
||||||
|
delimiter: "|", // The delimiter between words
|
||||||
|
auto-spacing: true, // Automatically add necessary space around words
|
||||||
|
)
|
||||||
|
#show link: underline
|
||||||
|
|
||||||
|
|
||||||
|
// Use #slide to create a slide and style it using your favourite Typst functions
|
||||||
|
#slide[
|
||||||
|
#set align(horizon)
|
||||||
|
#set align(center)
|
||||||
|
= \*Notices your Software\*
|
||||||
|
|
||||||
|
== _OwO is this under a Free, Libre, \
|
||||||
|
and Open Source license?_
|
||||||
|
|
||||||
|
\
|
||||||
|
A crime against legal systems, good writing,\ and Richard Stallman himself
|
||||||
|
|
||||||
|
\
|
||||||
|
By Mira Volitaris (ArgentumCation)
|
||||||
|
|
||||||
|
2025-09-19
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
#set page(footer: sections-band)
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
#toolbox.register-section("Intro")
|
||||||
|
= What’s a License?
|
||||||
|
#toolbox.pdfpc.speaker-note("This is a note that only the speaker will see.")
|
||||||
|
- How you tell other people what they can and can't do with the things you make
|
||||||
|
#toolbox.pdfpc.speaker-note("TEST")
|
||||||
|
- By default, works are have All Rights Reserved
|
||||||
|
- Until big corpo and/or pirates get their mitts on it
|
||||||
|
- There’s two big classes of license
|
||||||
|
- Permissive
|
||||||
|
- Restrictive
|
||||||
|
- Can also control other things
|
||||||
|
- Some licenses have ethics clauses
|
||||||
|
- Some are royalty-free
|
||||||
|
#colbreak()
|
||||||
|
#set text(size: 13pt)
|
||||||
|
Q: First up, what is a license?
|
||||||
|
|
||||||
|
A: A miserable block of text, next question
|
||||||
|
|
||||||
|
- Copyright law is a bitch, Posting your stuff online is a bitch
|
||||||
|
|
||||||
|
- Basically a license is your way of telling other people what they can and can’t do with your stuff
|
||||||
|
|
||||||
|
- By default, your stuff is under All Rights Reserved, which means you own it and if anyone wants to use it/look at it/share it/what have you, then they’ve gotta go through you first
|
||||||
|
|
||||||
|
- In practice, that's probably not gonna stop anyone until you get lawyers involved
|
||||||
|
|
||||||
|
- So with the kind of licenses you can get off the shelf, there’s two main types, Permissive and Restrictive, I find it helpful to think of these from the point of view of big corpo
|
||||||
|
- Permissive: Basically gives downstream people more freedom to do whatever they want. Like making their own copy of your stuff and selling it
|
||||||
|
- Big companies will generally only use dependencies if they’re under a permissive license
|
||||||
|
- Restrictive: Intended to protect specific freedoms, like distribution and modification
|
||||||
|
- Licenses can attempt to enforce other things like ethics clauses or royalty free
|
||||||
|
- Royalties in this case are basically a subscription fee to use a copyrighted work
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
#toolbox.register-section("FOSS Licenses")
|
||||||
|
#set align(center)
|
||||||
|
#set align(horizon)
|
||||||
|
= FOSS Licenses
|
||||||
|
|
||||||
|
#colbreak()
|
||||||
|
#set align(left)
|
||||||
|
#set align(top)
|
||||||
|
FOSS stands for Free and Open Source Software, the definition of which is loosely enforced by the Open Source Initiative and Free Software Foundation
|
||||||
|
// inset: 0.5em,
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= FOSS Freedoms
|
||||||
|
#toolbox.side-by-side[
|
||||||
|
- As outlined by the Stall Man himself, this outlines what’s open source or not
|
||||||
|
0. The freedom to run the program to for whatever and whyever
|
||||||
|
1. The freedom to see and modify the source code
|
||||||
|
2. The freedom to make and distribute copies
|
||||||
|
3. The freedom to do that with your modified versions
|
||||||
|
][
|
||||||
|
#figure(
|
||||||
|
image("img/stallman.png",height: 325pt))
|
||||||
|
]
|
||||||
|
#colbreak()
|
||||||
|
This is the general idea of what FOSS is
|
||||||
|
- Let me use the program however the fuck I want
|
||||||
|
- Let me do whatever the fuck I want with the code
|
||||||
|
- I can give your code to whoever the fuck
|
||||||
|
- I can give my code to whoever the fuck
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= FOSS Freedoms (cont.)
|
||||||
|
|
||||||
|
- Everything in this section is gonna require the following:
|
||||||
|
- Commercial Use
|
||||||
|
- Distribution
|
||||||
|
- Modification
|
||||||
|
- Private Use
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
#toolbox.side-by-side(columns: (4fr,3fr))[
|
||||||
|
= GPL: The GNU Pubic Licenses
|
||||||
|
|
||||||
|
- GPLv2
|
||||||
|
- No Warranty
|
||||||
|
- No Liability
|
||||||
|
- Disclose Source
|
||||||
|
- License notice
|
||||||
|
- Same License
|
||||||
|
- State Changes
|
||||||
|
- GPLv3
|
||||||
|
- Don’t lock down the hardware
|
||||||
|
- No DRM
|
||||||
|
- Patent Grant
|
||||||
|
- License Interop
|
||||||
|
][
|
||||||
|
#set align(bottom)
|
||||||
|
#figure(
|
||||||
|
image("img/gpl-compat.png"))
|
||||||
|
]
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= GPL (cont.)
|
||||||
|
|
||||||
|
- AGPLv{2,3}
|
||||||
|
- Network use counts as distribution
|
||||||
|
- Used by Grafana, Mastodon, et al
|
||||||
|
- LGPLv{2,3}
|
||||||
|
- Linking Freedom
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= BSD Licenses
|
||||||
|
On the more permissive end
|
||||||
|
#toolbox.side-by-side()[
|
||||||
|
- BSD 4 Clause
|
||||||
|
- Original BSD license
|
||||||
|
- Copyright notice
|
||||||
|
- No endorsement
|
||||||
|
- Attribution
|
||||||
|
- BSD 3 Clause
|
||||||
|
- Removes attribution requirement
|
||||||
|
][
|
||||||
|
- BSD 2 Clause
|
||||||
|
- Yes endorsement
|
||||||
|
- BSD 2 Clause Patent
|
||||||
|
- Same as above with a patent grant
|
||||||
|
- BSD 1 Clause
|
||||||
|
- Same as 2 Clause, only need license for source
|
||||||
|
- BSD 0 Clause
|
||||||
|
- Fuck it we ball
|
||||||
|
]
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Creative Commons
|
||||||
|
Intended to sit between public domain and All rights reserved
|
||||||
|
- Not specific to software
|
||||||
|
- This presentation is CC-BY-NC-SA 4.0
|
||||||
|
- CC-BY
|
||||||
|
- Attribution
|
||||||
|
- CC-BY-SA
|
||||||
|
- Attribution + ShareAlike
|
||||||
|
- CC0
|
||||||
|
- Public Domain
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= The Permissive Twins
|
||||||
|
Apache:
|
||||||
|
- Keep Notices
|
||||||
|
- Unmodified code stays under Apache in derivatives
|
||||||
|
- Modified code can be anything
|
||||||
|
- Patent Grant
|
||||||
|
- State Changes
|
||||||
|
- GPLv3 Compatible
|
||||||
|
- LLVM Exception (optional)
|
||||||
|
- FSF begrudgingly approved
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= The Permissive Twins (cont.)
|
||||||
|
MIT:
|
||||||
|
- Most popular license on GitHub
|
||||||
|
- Include the license in derivatives
|
||||||
|
- MIT-0 doesn’t even require that
|
||||||
|
- No patent grant
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= The Other Public Domain Ones
|
||||||
|
|
||||||
|
- WTFPL
|
||||||
|
- “You just DO WHAT THE FUCK YOU WANT TO.”
|
||||||
|
- Unlicense
|
||||||
|
- Basically the same thing, doesn’t say the fuck word
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= Grab Bag
|
||||||
|
- EUPL
|
||||||
|
- Most popular on GyattHub
|
||||||
|
- Made by EU
|
||||||
|
- Compatible with GPL/AGPL/MPL/LGPL/APL/JPL/Both IPLs/VPL/BNPL/WTFPL and what have you
|
||||||
|
- Linking Freedom
|
||||||
|
- Network Use is distribution
|
||||||
|
- Royalty Free
|
||||||
|
- MPL
|
||||||
|
- Used by Firefox and Thunderbird
|
||||||
|
- You gotta keep em seperated
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
#toolbox.register-section("Non-FOSS Licenses")
|
||||||
|
#set align(center)
|
||||||
|
#set align(horizon)
|
||||||
|
= Non-FOSS Licenses
|
||||||
|
#set align(bottom)
|
||||||
|
]
|
||||||
|
|
||||||
|
#slide[
|
||||||
|
= Creative Commons Part 2
|
||||||
|
|
||||||
|
- CC-BY-NC-SA
|
||||||
|
- Attribution
|
||||||
|
- NonCommercial
|
||||||
|
- Sharealike
|
||||||
|
- CC-BY-ND
|
||||||
|
- Attribution
|
||||||
|
- NonCommercial
|
||||||
|
- CC-BY-NC-ND
|
||||||
|
- I’ll let you figure this one out
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Putting the Pot in Potpourri
|
||||||
|
|
||||||
|
- AFPL
|
||||||
|
- Derived from GPL
|
||||||
|
- Include Source Code
|
||||||
|
- No selling
|
||||||
|
- Anti-996
|
||||||
|
- So back in the old #ruby[zhōng][中] of #ruby[guó][国], there was this thing called the 996 system
|
||||||
|
|
||||||
|
Don’t be Mr. Krabs, follow labor laws
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Putting the Pot in Potpourri (cont.)
|
||||||
|
|
||||||
|
- Anti-Capitalist Software License
|
||||||
|
- Include License
|
||||||
|
- Don’t be a capitalist
|
||||||
|
- ACAB
|
||||||
|
- Artistic License
|
||||||
|
- #strike[Is what I’m taking with all these legal definitions]
|
||||||
|
- Not that important except FSF calls it "Too clever for its own good" which I thought was funny
|
||||||
|
- I can't even find a link for this
|
||||||
|
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Putting the Pot in Potpourri (cont.)
|
||||||
|
|
||||||
|
- BSD 3 Clause No Nuclear Warranty
|
||||||
|
#show: later
|
||||||
|
#place(top+center,dy: -75pt, image("img/full-bush.png", height: 150%))
|
||||||
|
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Rapid Fire since it’s 5:49PM
|
||||||
|
|
||||||
|
- BUSL/BSL
|
||||||
|
- GPLv2 ish after 4 years
|
||||||
|
- CPOL
|
||||||
|
- No selling this
|
||||||
|
- Don’t do shit without my permission
|
||||||
|
- Commons Clause
|
||||||
|
- Don’t sell this shit
|
||||||
|
- Not a license
|
||||||
|
- Functional Source
|
||||||
|
- Apache or MIT after 2 years
|
||||||
|
- No competing with me
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Rapid Fire since it’s 5:49PM
|
||||||
|
|
||||||
|
- HESSLA
|
||||||
|
- No human rights violations pls
|
||||||
|
- No helping other people do human rights violations
|
||||||
|
- JSON
|
||||||
|
- Don’t be evil
|
||||||
|
- Unless you’re IBM
|
||||||
|
- PPL
|
||||||
|
- Don’t make money off of this unless you’re a co-op
|
||||||
|
- SSPL
|
||||||
|
- AGPL with extra steps
|
||||||
|
- SIL OFL
|
||||||
|
- For fonts
|
||||||
|
- don’t charge money for it
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Hexley
|
||||||
|
|
||||||
|
- WHY THE FUCK DOES APPLE HAVE A FUCKING LICENSE FOR ITS FURSONA
|
||||||
|
- WHY DOES APPLE HAVE A FURSONA
|
||||||
|
- WHY THE FUCK dO I HAVE The LICENSE FOR A NON-FOSS FUCKIGN FURSONA IN MY PRESENTATION
|
||||||
|
- You need to include the copyright statement somewhere
|
||||||
|
- If you want to mass produce merch, you need to request permission from the copyright holders
|
||||||
|
- derivatives must be related to original work
|
||||||
|
- derivatives should also should not "dilute the quality" of the work
|
||||||
|
- IT'S ONE AM AND THEY HIT THE SECOND FUCKING BRAINCELL
|
||||||
|
- I AM HAVING A DTROKE APPLE NAS TEO FURSONAE
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
#toolbox.side-by-side[
|
||||||
|
#box(image("img/anika.png"))
|
||||||
|
][
|
||||||
|
#box(image("img/hexley.png"))
|
||||||
|
]
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Hippocratic License
|
||||||
|
This one is pretty modular actually
|
||||||
|
- no charge
|
||||||
|
- no royalty
|
||||||
|
- can remix/redistribute etc
|
||||||
|
- has patent grant
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Hippocratic License Part 2
|
||||||
|
#toolbox.side-by-side[
|
||||||
|
- Don't murder people
|
||||||
|
- Don't slavery
|
||||||
|
- Don't child labors
|
||||||
|
- No Cruel and Unusual Punishment
|
||||||
|
- No racism/sexism/etc
|
||||||
|
- Right to a fair trial?
|
||||||
|
- No search and seizure without a warrant or random arrests?
|
||||||
|
- No invasions of home or privacy, or communications
|
||||||
|
- No eminent domain
|
||||||
|
- No Trail of Tearsing people
|
||||||
|
- No unionbusting
|
||||||
|
][
|
||||||
|
- No hurting the environment
|
||||||
|
- equal pay for equal work
|
||||||
|
- reasonable working hours and periodic paid holidays
|
||||||
|
- Verify your supply chain
|
||||||
|
]
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Hippocratic License Part 3
|
||||||
|
|
||||||
|
#toolbox.side-by-side[
|
||||||
|
- Don't be a fossil fuel company
|
||||||
|
- No hurting the environment (again?)
|
||||||
|
- No mineral or fossil fuel mining
|
||||||
|
- Don't be on the BDS list
|
||||||
|
- Don't be the Taliban
|
||||||
|
- Don't be the Myanmar government
|
||||||
|
- Don't do business in/with the Xinjiang Uygur Autonomous Region of China?
|
||||||
|
- Don't have beef with Customs and Border Protection for Forced Labor
|
||||||
|
][
|
||||||
|
- Don't do mass surveillance
|
||||||
|
- Don't be a military
|
||||||
|
- Don't be law enforcement
|
||||||
|
- Don't be a media entity that promotes violence
|
||||||
|
- Don't unionbusting (again?)
|
||||||
|
]
|
||||||
|
]
|
||||||
|
#slide[
|
||||||
|
= Some resources that can help with picking a license
|
||||||
|
|
||||||
|
- Most of these are only gonna help with FOSS licenses
|
||||||
|
- #link("https://choosealicense.com/")[choosealicense.com] is maintained by GitHub, has the most common licenses
|
||||||
|
- #link("https://interoperable-europe.ec.europa.eu/collection/eupl/solution/licensing-assistant/find-and-compare-software-licenses")[EU Licensing Assistant] makes it easier to compare licenses in my opinion
|
||||||
|
- #link("https://spdx.org/licenses/")[SPDX] is gonna be the most thorough source, has a list of like every license on earth, and licenses are typically identified using their entry in the SPDX list
|
||||||
|
]
|
||||||