Files
hammer/docs/licencias-texto.tsv
T
sergioandClaude Opus 5 487e155f74 licencias: leer el LICENSE de verdad cuando GitHub dice «no sé» — 1053 de 1141 (92%)
Último recurso mecánico, `scripts/licencias-texto.sh`: para las 60 recetas donde la API de
GitHub devuelve NOASSERTION (el repo TIENE un LICENSE pero licensee no lo reconoce: texto
retocado, encabezado propio, dos licencias en un fichero), baja el texto y lo clasifica acá.
34 identificadas — 16 MIT, 10 Apache-2.0, 7 BSD-2-Clause, 1 BSD-3-Clause.

SÓLO PERMISIVAS, Y NO ES PEREZA. MIT, Apache-2.0, BSD, ISC, MPL-2.0 y Unlicense se
reconocen por frases inconfundibles y NO tienen variantes -only/-or-later ⇒ reconocer el
texto da el SPDX completo.

La familia GPL se deja al humano A PROPÓSITO, y la razón es sutil: el COPYING de la GPL es
IDÉNTICO tanto si el proyecto es «sólo v3» como «v3 o posterior» — lo que las distingue vive
en las cabeceras de los fuentes. Y encima el propio COPYING incluye, en su apéndice «cómo
aplicar la licencia», la frase «or (at your option) any later version», así que buscarla da
SIEMPRE positivo y parecería evidencia siendo texto de plantilla. Es exactamente la trampa
de la regla del `.a` no-PIC, donde grep contaba reubicaciones de .debug_* y mentía.

Comprobado a mano un caso que daba mala espina: el LICENSE de `conftest` empieza
«Conftest — Write tests against your config files / Copyright (C) 2019 …», que es el formato
típico de una cabecera GPL. Leído entero, dice «Licensed under the Apache License, Version
2.0». La clasificación era correcta; la sospecha, barata.

Hashes verificados sobre las 36 tocadas: idénticos.

Quedan 88, ya sin vía mecánica: los repos donde ni la API ni el texto deciden, la familia
GPL sin desambiguar, y tarballs de sitios propios (gmplib, xiph, sr.ht, codeberg…).

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

2.1 KiB

1# licencias-texto.tsv — GENERADO por scripts/licencias-texto.sh. No editar a mano.
2# Clasificación por el TEXTO del fichero LICENSE del repo, para los casos en que la API de
3# GitHub dice NOASSERTION. SÓLO permisivas (MIT/Apache/BSD/ISC/MPL/Unlicense): no tienen
4# variantes -only/-or-later, así que reconocer el texto da el SPDX completo. La familia GPL
5# se deja al humano A PROPÓSITO: su COPYING es idéntico en «sólo v3» y «v3 o posterior», y
6# encima incluye la frase «or (at your option) any later version» en su apéndice de plantilla
7# ⇒ buscarla da siempre positivo y parece evidencia sin serlo.
8# Tercera columna: owner/repo:fichero del que se leyó. Total 34
9amassApache-2.0OWASP/Amass:LICENSE
10conftestApache-2.0open-policy-agent/conftest:LICENSE
11dejavu-fontsMITdejavu-fonts/dejavu-fonts:LICENSE
12dsqApache-2.0multiprocessio/dsq:LICENSE.md
13dufMITmuesli/duf:LICENSE
14eksctlApache-2.0weaveworks/eksctl:LICENSE
15evcxrApache-2.0google/evcxr:LICENSE
16fqMITwader/fq:LICENSE
17git-lfsMITgit-lfs/git-lfs:LICENSE.md
18gitsignApache-2.0sigstore/gitsign:LICENSE
19gobetweenMITyyyar/gobetween:LICENSE
20go-migrateMITgolang-migrate/migrate:LICENSE
21gooseMITpressly/goose:LICENSE
22icu4cMITunicode-org/icu:LICENSE
23itstoolMITsabotage-linux/gettext-tiny:LICENSE
24jqMITjqlang/jq:COPYING
25k0sctlApache-2.0k0sproject/k0sctl:LICENSE
26kubevalApache-2.0instrumenta/kubeval:LICENSE
27libeventBSD-2-Clauselibevent/libevent:LICENSE
28libpslMITrockdaboot/libpsl:LICENSE
29libsassMITsass/libsass:LICENSE
30libvaMITintel/libva:COPYING
31linux-pamBSD-2-Clauselinux-pam/linux-pam:COPYING
32millerBSD-2-Clausejohnkerl/miller:LICENSE.txt
33musl-ftsBSD-3-Clausevoid-linux/musl-fts:COPYING
34onigurumaBSD-2-Clausekkos/oniguruma:COPYING
35p11-kitBSD-2-Clausep11-glue/p11-kit:COPYING
36popeyeApache-2.0derailed/popeye:LICENSE
37qtkeychainBSD-2-Clausefrankosterfeld/qtkeychain:COPYING
38richgoMITkyoh86/richgo:LICENSE
39sasscMITsass/sassc:LICENSE
40shadowBSD-2-Clauseshadow-maint/shadow:COPYING
41utf8procMITJuliaLang/utf8proc:LICENSE.md
42vulkan-loaderApache-2.0KhronosGroup/Vulkan-Loader:LICENSE.txt