Files
hammer/docs/licencias-conocidas.tsv
T
sergioandClaude Opus 5 a6a9d59e4f licencias: 936 de 1141 (82%) — detección por evidencia, con sus dos imprecisiones declaradas
Esta mañana eran 0. Tras la tabla curada (228) y este paso, 936. Ninguna receta se
re-hasheó: verificado en 30 de las 708 tocadas, 30 hashes idénticos, 0 cambiados.

DE DÓNDE SALE EL DATO, Y POR QUÉ NO ES ADIVINAR. `scripts/licencias-detectar.sh` consulta
la API /repos/{o}/{r}/license de GitHub para las 673 recetas cuya fuente vive allí. Eso
devuelve el resultado de DETECTAR el fichero LICENSE que el repo tiene de verdad
(licensee), no una etiqueta escrita a mano en una web: es la misma evidencia que veríamos
abriendo el tarball, obtenida sin bajar 673 tarballs por un enlace de 8 Mbps. 610 con SPDX
definido; las 63 que GitHub marca NOASSERTION/other se DESCARTAN — un «no sé» de la fuente
se propaga como hueco, no se redondea a una licencia plausible.

Las familias no-GitHub van curadas por la URL DE FUENTE, que es la evidencia que el nombre
no da. Y ahí cometí el error simétrico al que este mismo fichero advertía: había puesto
`knighttime` entre las «herramientas Go» POR SU NOMBRE, y su tarball sale de
download.kde.org — es un Framework de KDE, LGPL. Descartar por nombre falla igual que
aceptar por nombre. Corregido en la cabecera.

LAS DOS IMPRECISIONES, contables con `licencias.sh --revisar` en vez de escondidas:

 1. SPDX OBSOLETOS Y AMBIGUOS (71 recetas). GitHub devuelve `GPL-3.0`, `LGPL-2.1`,
    `AGPL-3.0`… identificadores que SPDX declaró obsoletos PRECISAMENTE porque no
    distinguen `-only` de `-or-later`, y esa diferencia decide con qué se puede combinar el
    paquete. NO se normalizan a ciegas: mapear GPL-3.0 → GPL-3.0-or-later sería inventar el
    dato que falta. Quedan marcadas para resolver mirando el fuente.

 2. LICENCIAS DOBLES COLAPSADAS. La API devuelve UNA sola licencia y muchos proyectos Rust
    son «MIT OR Apache-2.0» (p.ej. `fd` quedó como Apache-2.0). No es falso —cumplir una de
    las opciones concedidas basta— pero es incompleto. Lo resuelve el cierre estructural:
    leer el campo `license` del Cargo.toml en la fase de fetch.

Y un fallo que habría escrito basura en silencio: `licencias-detectadas.tsv` tiene TRES
columnas (añade el owner/repo consultado, para poder auditar) y el sembrador leía dos, así
que la licencia se habría llevado pegado el slug — `license = "MIT<TAB>owner/repo"`, sin
que nada lo validara. Arreglado antes de sembrar.

Quedan 205 sin licencia y 71 por desambiguar.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-07 13:26:22 -04:00

346 lines
15 KiB
Plaintext

# Tabla CURADA de licencias, para `scripts/licencias.sh --sembrar`. SDD 19 §2.1.
#
# Formato: <nombre-de-receta><TAB><expresión SPDX>
#
# ── LA REGLA ────────────────────────────────────────────────────────────────────────────────────
# Acá SÓLO entra lo que se puede afirmar con seguridad, entrada por entrada. Declarar mal una
# licencia es peor que dejarla vacía: convierte un hueco visible —que alguien va a ir a llenar— en
# una afirmación falsa sobre la que alguien va a construir. Lo que no esté seguro, NO se pone: se
# queda como deuda contada por `scripts/licencias.sh`.
#
# ── POR QUÉ NO SE PUEDE AUTOMATIZAR POR PATRÓN DE NOMBRE ────────────────────────────────────────
# Tentación evidente: «todo lo que empieza por k* es KDE ⇒ LGPL». **Falso y caro.** En este catálogo
# `kail`, `kind`, `ko`, `kopia`, `krew`, `kustomize`, `kyverno`, `katana`, `kiterunner`, `kibi`,
# `kmon`, `kondo`, `kpt`, `kbld`, `kbs2` y toda la familia `kube*` son herramientas Go sin ninguna
# relación con KDE — la mayoría Apache-2.0 o MIT. El nombre no es evidencia.
#
# Y el error simétrico, que cometí en la primera versión de este fichero: había puesto `knighttime`
# en esa lista de «herramientas Go» **por su nombre**, y resulta que su tarball sale de
# `download.kde.org` ⇒ es un Framework de KDE, LGPL. O sea que descartar por nombre falla igual que
# aceptar por nombre. **La evidencia es la URL de fuente de la receta**, que es lo que agrupa de
# verdad las familias no-GitHub de más abajo.
#
# ── LO QUE FALTA ES SOBRE TODO Go Y Rust ───────────────────────────────────────────────────────
# El grueso de las 1141 recetas son CLIs Go/Rust importados en masa. Para esas la licencia SÍ es
# automatizable con evidencia real y sin red: Cargo.toml trae el campo `license` y los módulos Go
# traen su LICENSE en el árbol. Es el trabajo estructural descrito en la cabecera de licencias.sh
# (capturar en la fase de fetch, que ya descarga y extrae el tarball).
# ── toolchain y base C ─────────────────────────────────────────────────────────────────────────
musl MIT
zlib Zlib
zlib-shared Zlib
bzip2 bzip2-1.0.6
bzip2-shared bzip2-1.0.6
xz 0BSD
zstd BSD-3-Clause OR GPL-2.0-only
lz4 BSD-2-Clause AND GPL-2.0-only
brotli MIT
binutils GPL-3.0-or-later
gcc GPL-3.0-or-later WITH GCC-exception-3.1
make GPL-3.0-or-later
m4 GPL-3.0-or-later
bison GPL-3.0-or-later
flex BSD-3-Clause
patch GPL-3.0-or-later
diffutils GPL-3.0-or-later
findutils GPL-3.0-or-later
coreutils GPL-3.0-or-later
grep GPL-3.0-or-later
sed GPL-3.0-or-later
gawk GPL-3.0-or-later
tar GPL-3.0-or-later
gzip GPL-3.0-or-later
bash GPL-3.0-or-later
busybox GPL-2.0-only
autoconf GPL-3.0-or-later
automake GPL-2.0-or-later
libtool GPL-2.0-or-later
gettext-tiny GPL-3.0-or-later
texinfo GPL-3.0-or-later
pkgconf ISC
cmake BSD-3-Clause
meson Apache-2.0
samurai ISC
ninja Apache-2.0
python3 Python-2.0
perl Artistic-1.0-Perl OR GPL-1.0-or-later
sqlite blessing
openssl Apache-2.0
curl curl
ca-certificates MPL-2.0
libarchive BSD-2-Clause
libcap BSD-3-Clause OR GPL-2.0-only
libseccomp LGPL-2.1-only
bwrap LGPL-2.0-or-later
kbd GPL-2.0-or-later
util-linux GPL-2.0-or-later AND LGPL-2.1-or-later AND BSD-3-Clause
e2fsprogs GPL-2.0-only AND LGPL-2.0-only AND BSD-3-Clause
linux GPL-2.0-only WITH Linux-syscall-note
# ── bibliotecas de sistema y gráficas ──────────────────────────────────────────────────────────
expat MIT
libffi MIT
pcre2 BSD-3-Clause
libxml2 MIT
libxml2-shared MIT
libyaml MIT
libyaml-shared MIT
libpng Libpng
libpng-shared Libpng
libjpeg-turbo IJG AND BSD-3-Clause AND Zlib
libjpeg-turbo-shared IJG AND BSD-3-Clause AND Zlib
libtiff libtiff
libtiff-shared libtiff
libwebp BSD-3-Clause
freetype FTL OR GPL-2.0-or-later
freetype-shared FTL OR GPL-2.0-or-later
fontconfig MIT
fontconfig-shared MIT
harfbuzz MIT
fribidi LGPL-2.1-or-later
pixman MIT
cairo LGPL-2.1-only OR MPL-1.1
cairo-shared LGPL-2.1-only OR MPL-1.1
pango LGPL-2.0-or-later
graphene MIT
libepoxy MIT
mesa MIT
libdrm MIT
wayland MIT
wayland-protocols MIT
plasma-wayland-protocols MIT
xkeyboard-config MIT
libxkbcommon MIT
alsa-lib LGPL-2.1-or-later
pipewire MIT
wireplumber MIT
iso-codes LGPL-2.1-or-later
libseccomp-shared LGPL-2.1-only
# ── GNOME / GTK ────────────────────────────────────────────────────────────────────────────────
glib LGPL-2.1-or-later
gobject-introspection LGPL-2.0-or-later AND GPL-2.0-or-later
gdk-pixbuf LGPL-2.1-or-later
gtk4 LGPL-2.1-or-later
libadwaita LGPL-2.1-or-later
gsettings-desktop-schemas LGPL-2.1-or-later
gnome-desktop GPL-2.0-or-later AND LGPL-2.0-or-later
gnome-shell GPL-2.0-or-later
gnome-session GPL-2.0-or-later
mutter GPL-2.0-or-later
json-glib LGPL-2.1-or-later
libsoup LGPL-2.0-or-later
at-spi2-core LGPL-2.1-or-later
atk LGPL-2.0-or-later
adwaita-icon-theme LGPL-3.0-or-later OR CC-BY-SA-3.0
hicolor GPL-2.0-or-later
accountsservice GPL-3.0-or-later
colord GPL-2.0-or-later AND LGPL-2.1-or-later
geoclue GPL-2.0-or-later
appstream LGPL-2.1-or-later
libxmlb LGPL-2.1-or-later
xdg-desktop-portal LGPL-2.1-or-later
xdg-desktop-portal-gnome LGPL-2.1-or-later
# ── Qt ─────────────────────────────────────────────────────────────────────────────────────────
# Qt 6 open source: LGPL-3.0 o GPL (la alternativa es la licencia comercial, que no aplica acá).
qt6-qtbase LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
qt6-qtdeclarative LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
qt6-qtwayland LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
qt6-qtsvg LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
qt6-qttools LGPL-3.0-only OR GPL-3.0-only
qt6-qtshadertools LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
qt6-qt5compat LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
qt5compat LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# ── KDE Frameworks (bibliotecas: LGPL doble) ───────────────────────────────────────────────────
# Verificadas una a una: son Frameworks de KDE, NO las herramientas Go homónimas (ver cabecera).
karchive LGPL-2.1-or-later OR LGPL-3.0-or-later
kauth LGPL-2.1-or-later OR LGPL-3.0-or-later
kbookmarks LGPL-2.1-or-later OR LGPL-3.0-or-later
kcodecs LGPL-2.1-or-later OR LGPL-3.0-or-later
kcolorscheme LGPL-2.1-or-later OR LGPL-3.0-or-later
kcompletion LGPL-2.1-or-later OR LGPL-3.0-or-later
kconfig LGPL-2.1-or-later OR LGPL-3.0-or-later
kconfigwidgets LGPL-2.1-or-later OR LGPL-3.0-or-later
kcoreaddons LGPL-2.1-or-later OR LGPL-3.0-or-later
kcrash LGPL-2.1-or-later OR LGPL-3.0-or-later
kdbusaddons LGPL-2.1-or-later OR LGPL-3.0-or-later
kdeclarative LGPL-2.1-or-later OR LGPL-3.0-or-later
kdecoration LGPL-2.1-or-later OR LGPL-3.0-or-later
kded LGPL-2.1-or-later OR LGPL-3.0-or-later
kfilemetadata LGPL-2.1-or-later OR LGPL-3.0-or-later
kglobalaccel LGPL-2.1-or-later OR LGPL-3.0-or-later
kguiaddons LGPL-2.1-or-later OR LGPL-3.0-or-later
kholidays LGPL-2.1-or-later OR LGPL-3.0-or-later
ki18n LGPL-2.1-or-later OR LGPL-3.0-or-later
kiconthemes LGPL-2.1-or-later OR LGPL-3.0-or-later
kidletime LGPL-2.1-or-later OR LGPL-3.0-or-later
kio LGPL-2.1-or-later OR LGPL-3.0-or-later
kirigami LGPL-2.1-or-later OR LGPL-3.0-or-later
kirigami-addons LGPL-2.1-or-later OR LGPL-3.0-or-later
kitemmodels LGPL-2.1-or-later OR LGPL-3.0-or-later
kitemviews LGPL-2.1-or-later OR LGPL-3.0-or-later
kjobwidgets LGPL-2.1-or-later OR LGPL-3.0-or-later
knewstuff LGPL-2.1-or-later OR LGPL-3.0-or-later
knotifications LGPL-2.1-or-later OR LGPL-3.0-or-later
knotifyconfig LGPL-2.1-or-later OR LGPL-3.0-or-later
kpackage LGPL-2.1-or-later OR LGPL-3.0-or-later
kparts LGPL-2.1-or-later OR LGPL-3.0-or-later
kplotting LGPL-2.1-or-later OR LGPL-3.0-or-later
kpty LGPL-2.1-or-later OR LGPL-3.0-or-later
kquickcharts LGPL-2.1-or-later OR LGPL-3.0-or-later
kservice LGPL-2.1-or-later OR LGPL-3.0-or-later
kstatusnotifieritem LGPL-2.1-or-later OR LGPL-3.0-or-later
ksvg LGPL-2.1-or-later OR LGPL-3.0-or-later
ktexteditor LGPL-2.1-or-later OR LGPL-3.0-or-later
ktextwidgets LGPL-2.1-or-later OR LGPL-3.0-or-later
kunitconversion LGPL-2.1-or-later OR LGPL-3.0-or-later
kwallet LGPL-2.1-or-later OR LGPL-3.0-or-later
kwayland LGPL-2.1-or-later OR LGPL-3.0-or-later
kwidgetsaddons LGPL-2.1-or-later OR LGPL-3.0-or-later
kwindowsystem LGPL-2.1-or-later OR LGPL-3.0-or-later
kxmlgui LGPL-2.1-or-later OR LGPL-3.0-or-later
kcmutils LGPL-2.1-or-later OR LGPL-3.0-or-later
kdnssd LGPL-2.1-or-later OR LGPL-3.0-or-later
attica LGPL-2.1-or-later OR LGPL-3.0-or-later
kactivitymanagerd GPL-2.0-or-later
plasma-activities LGPL-2.1-or-later OR LGPL-3.0-or-later
plasma-activities-stats LGPL-2.1-or-later OR LGPL-3.0-or-later
plasma5support LGPL-2.1-or-later OR LGPL-3.0-or-later
# ── Plasma y aplicaciones KDE (GPL) ────────────────────────────────────────────────────────────
kwin GPL-2.0-or-later
plasma-workspace GPL-2.0-or-later
plasma-desktop GPL-2.0-or-later
plasma-integration LGPL-2.1-or-later OR LGPL-3.0-or-later
plasma-nm GPL-2.0-or-later
plasma-pa GPL-2.0-or-later
kscreen GPL-2.0-or-later
kscreenlocker GPL-2.0-or-later
kglobalacceld GPL-2.0-or-later
krunner LGPL-2.1-or-later OR LGPL-3.0-or-later
kmenuedit GPL-2.0-or-later
kinfocenter GPL-2.0-or-later
kpipewire GPL-2.0-or-later OR LGPL-2.1-or-later
breeze GPL-2.0-or-later
breeze-icons LGPL-3.0-or-later
ark GPL-2.0-or-later
kate LGPL-2.0-or-later
konsole GPL-2.0-or-later
dolphin GPL-2.0-or-later
kcalc GPL-2.0-or-later
kcharselect GPL-2.0-or-later
kdf GPL-2.0-or-later
kfind GPL-2.0-or-later
kruler GPL-2.0-or-later
kwalletmanager GPL-2.0-or-later
kquickimageeditor LGPL-2.1-or-later OR LGPL-3.0-or-later
# ═══════════════════════════════════════════════════════════════════════════════════════════════
# FAMILIAS NO-GITHUB (2026-08-07). Para éstas no sirve la detección por API de GitHub, así que van
# curadas — pero NO a ojo: la **URL de fuente de la receta** es la evidencia que las agrupa.
#
# Un caso concreto de por qué eso importa: `knighttime` parecía una herramienta Go por el nombre y
# resulta que su tarball sale de `download.kde.org` ⇒ es un Framework de KDE. El host de descarga
# desambigua lo que el nombre confunde.
# ═══════════════════════════════════════════════════════════════════════════════════════════════
# ── X.Org (tarballs de x.org / xorg.freedesktop.org) ───────────────────────────────────────────
# Las bibliotecas modulares y los protocolos de X.Org son uniformemente MIT (la «licencia X11»).
libX11 MIT
libXau MIT
libXdmcp MIT
libXext MIT
libXfixes MIT
libXi MIT
libXrender MIT
libXcursor MIT
libXtst MIT
libICE MIT
libSM MIT
libxcb MIT
xcb-proto MIT
xcb-util MIT
xcb-util-cursor MIT
xcb-util-image MIT
xcb-util-keysyms MIT
xcb-util-renderutil MIT
xcb-util-wm MIT
xorgproto MIT
xtrans MIT
util-macros MIT
libpthread-stubs MIT
x11-compose-data MIT
# ── GnuPG (gnupg.org) — la suite es GPL y las bibliotecas LGPL ─────────────────────────────────
gnupg GPL-3.0-or-later
libgcrypt LGPL-2.1-or-later
libgcrypt-shared LGPL-2.1-or-later
libgpg-error LGPL-2.1-or-later
libgpg-error-shared LGPL-2.1-or-later
libassuan LGPL-2.1-or-later
libksba GPL-3.0-or-later AND LGPL-3.0-or-later
npth LGPL-2.1-or-later
# ── Mozilla ────────────────────────────────────────────────────────────────────────────────────
nspr MPL-2.0
nss MPL-2.0
spidermonkey MPL-2.0
# ── GNU (ftp.gnu.org) — NO es todo GPL: las bibliotecas suelen ser LGPL ─────────────────────────
gperf GPL-3.0-or-later
mpc LGPL-3.0-or-later
mtools GPL-3.0-or-later
parted GPL-3.0-or-later
readline GPL-3.0-or-later
wget GPL-3.0-or-later
which GPL-3.0-or-later
xorriso GPL-3.0-or-later
ncurses MIT
# ── GNOME (download.gnome.org) ─────────────────────────────────────────────────────────────────
glib-shared LGPL-2.1-or-later
glib-introspected LGPL-2.1-or-later
gtksourceview LGPL-2.1-or-later
librsvg LGPL-2.1-or-later
libsecret LGPL-2.1-or-later
gcr LGPL-2.1-or-later
libgweather LGPL-2.1-or-later
libgudev LGPL-2.1-or-later
libxslt MIT
py3-gobject LGPL-2.1-or-later
geocode-glib LGPL-2.0-or-later
evolution-data-server LGPL-2.0-or-later
gdm GPL-2.0-or-later
gnome-settings-daemon GPL-2.0-or-later
gjs MIT AND LGPL-2.0-or-later
# ── KDE (download.kde.org) — Frameworks LGPL doble, aplicaciones GPL ───────────────────────────
extra-cmake-modules BSD-3-Clause
frameworkintegration LGPL-2.1-or-later OR LGPL-3.0-or-later
solid LGPL-2.1-or-later OR LGPL-3.0-or-later
sonnet LGPL-2.1-or-later OR LGPL-3.0-or-later
threadweaver LGPL-2.1-or-later OR LGPL-3.0-or-later
prison LGPL-2.1-or-later OR LGPL-3.0-or-later
prison-scanner LGPL-2.1-or-later OR LGPL-3.0-or-later
syntax-highlighting LGPL-2.1-or-later OR LGPL-3.0-or-later
libplasma LGPL-2.1-or-later OR LGPL-3.0-or-later
layer-shell-qt LGPL-2.1-or-later OR LGPL-3.0-or-later
qqc2-desktop-style LGPL-2.1-or-later OR LGPL-3.0-or-later
qqc2-breeze-style LGPL-2.1-or-later OR LGPL-3.0-or-later
modemmanager-qt LGPL-2.1-or-later OR LGPL-3.0-or-later
networkmanager-qt LGPL-2.1-or-later OR LGPL-3.0-or-later
pulseaudio-qt LGPL-2.1-or-later OR LGPL-3.0-or-later
libkscreen LGPL-2.1-or-later OR LGPL-3.0-or-later
libksysguard LGPL-2.1-or-later OR LGPL-3.0-or-later
phonon LGPL-2.1-or-later OR LGPL-3.0-or-later
knighttime LGPL-2.1-or-later OR LGPL-3.0-or-later
okular GPL-2.0-or-later
gwenview GPL-2.0-or-later
spectacle GPL-2.0-or-later
filelight GPL-2.0-or-later
systemsettings GPL-2.0-or-later
powerdevil GPL-2.0-or-later