Skip to content

docs(readme): explain Apache 2.0 + uABI posture#55

Merged
leodido merged 1 commit intomainfrom
docs/readme-apache2-rationale
May 4, 2026
Merged

docs(readme): explain Apache 2.0 + uABI posture#55
leodido merged 1 commit intomainfrom
docs/readme-apache2-rationale

Conversation

@leodido
Copy link
Copy Markdown
Owner

@leodido leodido commented May 4, 2026

Follow-up to #54 (LICENSE / NOTICE cleanup).

A library that reads /proc, /sys, /boot/config-*, and /lib/modules/*/config invites the question "why isn't this GPL?" from downstream legal reviewers. This PR adds a short paragraph to the README License section that answers it once.

Content

Two sub-points under a new ### Why Apache 2.0 heading:

  1. Kernel-uABI posture. No kernel source embedded, no cgo, no GPL/LGPL deps. Kernel interaction is uABI only: /proc and /sys reads, syscalls and constants via golang.org/x/sys/unix (BSD-3-Clause), ELF parsing via cilium/ebpf (MIT, never calls BPF_PROG_LOAD). The kernel's COPYING carve-out for "user programs that use kernel services by normal system calls" applies.
  2. Apache 2.0 over MIT. Patent grant (§3) matters for security-adjacent probing (eBPF, LSM, IMA, namespaces, Spectre mitigations). Adopter base (Cilium, Tetragon, Tracee, Falco, Pixie, Inspektor Gadget) is uniformly Apache 2.0.

Files

  • README.md: 11 added, 1 removed in the License section.
  • CHANGELOG.md: one [Unreleased] ### Added entry.

Co-authored-by: Ona no-reply@ona.com

Adds a License-section paragraph explaining why a library that reads /proc and /sys is Apache 2.0 (not GPL) and Apache 2.0 over MIT. Documents the kernel-uABI-only posture, the kernel COPYING carve-out for normal syscalls, the patent-grant rationale, and the adopter base.

Co-authored-by: Ona <no-reply@ona.com>
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 4, 2026
@leodido leodido self-assigned this May 4, 2026
@leodido leodido merged commit c9f81d2 into main May 4, 2026
7 checks passed
@leodido leodido deleted the docs/readme-apache2-rationale branch May 4, 2026 13:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant