From d8d578f6e3fe843ff45229dbcb578c095e773573 Mon Sep 17 00:00:00 2001 From: openclaw Date: Fri, 27 Mar 2026 12:50:08 +0000 Subject: [PATCH] docs: add ci-meta-tq license overview for Softwarefreigabeantrag --- .../ci-meta-tq-license-overview.md | 182 ++++++++++++++++++ 1 file changed, 182 insertions(+) create mode 100644 docs/03-license-analysis/ci-meta-tq-license-overview.md diff --git a/docs/03-license-analysis/ci-meta-tq-license-overview.md b/docs/03-license-analysis/ci-meta-tq-license-overview.md new file mode 100644 index 00000000..9b2954b8 --- /dev/null +++ b/docs/03-license-analysis/ci-meta-tq-license-overview.md @@ -0,0 +1,182 @@ +# Lizenzübersicht – ci-meta-tq + +**Repository:** [tq-systems/ci-meta-tq](https://github.com/tq-systems/ci-meta-tq) +**Tag:** `scarthgap.TQ.ARM.BSP.0006` +**Commit:** `067e145` +**Datum:** 2026-03-27 +**Zweck:** Softwarefreigabeantrag – Lizenzanalyse des BSP-Build-Systems + +--- + +## 1. Übersicht + +Das Repository `ci-meta-tq` ist ein Yocto/OpenEmbedded Build-System-Integrator von TQ-Systems. +Es enthält: + +- **CI-Skripte** (Shell, Python) unter MIT/GPL-2.0 +- **Build-Konfigurationen** (JSON, Shell) unter MIT +- **Dokumentation** unter CC-BY-4.0 +- **8 Submodule** (Yocto-Layer) mit jeweils eigener Lizenzierung + +Das Repository selbst enthält **keinen** Quellcode für Endprodukt-Pakete – es orchestriert +lediglich den Build-Prozess und verweist via Submodule auf die eigentlichen Layer. + +--- + +## 2. Lizenzen des ci-meta-tq Repositorys (Top-Level) + +| Komponente | Lizenz | Anmerkung | +|------------|--------|-----------| +| Metadaten, Rezepte, Konfiguration | MIT | Standard für OE/Yocto-Metadaten | +| CI-Skripte (`ci/`) | MIT | Sofern nicht anders angegeben | +| Dokumentation | CC-BY-4.0 | Creative Commons Attribution 4.0 | +| Sonstige Dateien (Default) | GPL-2.0-only | Fallback laut LICENSE.md | + +**Lizenzdateien im Repo:** +- `COPYING.MIT` +- `COPYING.GPL-2` +- `COPYING.CC-BY-4.0` +- `LICENSE.md` + +--- + +## 3. Submodule – Lizenzübersicht + +Alle Submodule sind auf dem Tag `scarthgap.TQ.ARM.BSP.0006` gepinnt. + +| # | Submodul | Commit | Metadaten-Lizenz | Quellcode/Rezepte | Upstream | +|---|----------|--------|------------------|--------------------|----------| +| 1 | `poky` | `6f7e929` | MIT | MIT + GPL-2.0-only | git.yoctoproject.org | +| 2 | `meta-tq` | `a0766ee` | MIT | MIT (Default: GPL-2.0) | github.com/tq-systems | +| 3 | `meta-openembedded` | `e8fd97d` | MIT | MIT | github.com/openembedded | +| 4 | `meta-freescale` | `4ea1005` | MIT | Gemischt (siehe §4) | git.yoctoproject.org | +| 5 | `meta-arm` | `8e0f8af` | MIT | MIT | git.yoctoproject.org | +| 6 | `meta-ti` | `8c258e7` | MIT | MIT | git.yoctoproject.org | +| 7 | `meta-qt6` | `c58fdf7` | MIT | MIT (Qt: Dual-Lizenz) | code.qt.io | +| 8 | `meta-rauc` | `a0f4a8b` | MIT | MIT | github.com/rauc | + +### Erläuterung + +Alle Yocto/OE-Layer verwenden **MIT** für ihre Metadaten (Rezepte, bbappend, bbclass, Konfiguration). +Die eigentlichen Software-Pakete, die durch die Rezepte gebaut werden, haben jeweils eigene Lizenzen – +diese sind in der bestehenden Lizenztabelle (`UT-license-table.csv`) für 264 Pakete erfasst. + +--- + +## 4. meta-freescale – Detaillierte Lizenzaufstellung + +Der NXP/Freescale-Layer ist der einzige mit signifikantem Anteil proprietärer Komponenten: + +### 4.1 Lizenzverteilung der Rezepte + +| Lizenz | Anzahl Rezepte | Kategorie | +|--------|---------------|-----------| +| MIT | 12 | Permissiv ✅ | +| BSD-3-Clause | 15 | Permissiv ✅ | +| BSD-2-Clause | 2 | Permissiv ✅ | +| Apache-2.0 | 5 | Permissiv ✅ | +| GPL-2.0-only | 18 | Copyleft ⚠️ | +| GPL-2.0-or-later | 6 | Copyleft ⚠️ | +| LGPL-2.0-or-later | 1 | Schwach Copyleft | +| LGPL-2.1-only | 5 | Schwach Copyleft | +| LGPL-2.1-or-later | 5 | Schwach Copyleft | +| **Proprietary** | **18** | **Prüfung erforderlich** ❌ | +| NXP-Binary-EULA | 7 | **Prüfung erforderlich** ❌ | + +### 4.2 Proprietäre Komponenten (NXP) + +| Paket | Lizenz | Beschreibung | +|-------|--------|-------------| +| firmware-imx | Proprietary | NXP i.MX Firmware-Blobs | +| firmware-nxp-wifi | Proprietary | NXP WiFi-Firmware | +| firmware-ele-imx | Proprietary | EdgeLock Enclave Firmware | +| firmware-upower | Proprietary | uPower Firmware | +| imx-sc-firmware | Proprietary | System Controller Firmware | +| imx-seco / imx-seco-libs | Proprietary | Secure Enclave | +| imx-gpu-viv | Proprietary | Vivante GPU-Treiber | +| imx-gpu-g2d | Proprietary | 2D-GPU-Beschleuniger | +| imx-dpu-g2d | Proprietary | DPU 2D-Beschleuniger | +| imx-pxp-g2d | Proprietary | PXP 2D-Beschleuniger | +| imx-vpu-hantro | Proprietary | Hantro VPU-Decoder | +| imx-vpu-hantro-vc | Proprietary | Hantro VC8000E Encoder | +| imx-vpu | Proprietary | VPU-Bibliothek | +| imx-codec | Proprietary | Audio/Video-Codecs | +| imx-parser | Proprietary | Media-Parser | +| imx-dsp / imx-dsp-codec-ext | Proprietary | DSP-Firmware | +| imx-opencl-converter | Proprietary | OpenCL-Konverter | +| mali-imx | Proprietary | ARM Mali GPU-Treiber | +| basler-camera / isp-imx | Proprietary | ISP/Kamera | +| dp-firmware-cadence | Proprietary | DisplayPort-Firmware | +| imx-mcore-demos | Proprietary | M-Core Demos | + +### 4.3 NXP Binary EULA Komponenten + +| Paket | Beschreibung | +|-------|-------------| +| ddr-phy | DDR PHY Training Firmware | +| inphi | Inphi PHY Firmware | +| ls2-phy | LayerScape PHY Firmware | +| ppfe-firmware | Packet Processing Firmware | +| qe-ucode | QUICC Engine Microcode | +| fm-ucode | Frame Manager Microcode | +| management-complex | DPAA2 Management Complex | +| uefi | UEFI Firmware | + +> **Hinweis für UT-Projekt:** Die meisten proprietären NXP-Pakete (GPU, VPU, Multimedia, etc.) +> sind **NICHT** im spaetzle/musl-Build enthalten! Nur `firmware-imx` und `firmware-nxp-wifi` +> sind relevant (bereits in der UT-Lizenztabelle erfasst). + +--- + +## 5. meta-qt6 – Besonderheit Dual-Lizenz + +| Aspekt | Details | +|--------|---------| +| Layer-Metadaten | MIT | +| Qt6-Framework | Dual-Lizenz: LGPL-3.0 / GPL-2.0 / GPL-3.0 (Open Source) ODER Kommerziell | +| Steuerung | Variable `QT_EDITION` in Yocto | +| Kommerzielle Module | Einige Qt-Module nur unter kommerzieller Lizenz | + +> **Hinweis für UT-Projekt:** Qt6 ist im spaetzle/musl-Build **nicht enthalten**. +> Nur relevant bei Wechsel auf dumpling-wayland (glibc). + +--- + +## 6. Zusammenfassung für den Softwarefreigabeantrag + +### 6.1 ci-meta-tq als Ganzes + +| Eigenschaft | Wert | +|-------------|------| +| Hauptlizenz | MIT | +| Dokumentation | CC-BY-4.0 | +| Proprietäre Bestandteile im Repo selbst | Keine | +| Enthält ausführbaren Code | Nein (nur Build-Metadaten) | +| Submodule mit proprietären Rezepten | meta-freescale (NXP) | +| Redistribution erlaubt | Ja (MIT) | +| Source-Code-Pflicht | Nein (MIT hat keine Copyleft-Pflicht) | + +### 6.2 Lizenzklassen im Gesamtsystem + +| Kategorie | Lizenzen | Auswirkung | +|-----------|----------|------------| +| **Permissiv** | MIT, BSD-2/3-Clause, Apache-2.0 | Keine Einschränkung | +| **Schwach Copyleft** | LGPL-2.0/2.1 | Bibliotheksquellcode bereitstellen | +| **Copyleft** | GPL-2.0 | Quellcode bereitstellen | +| **Starkes Copyleft** | GPL-3.0 | Anti-Tivoization-Klausel prüfen! | +| **Proprietär** | NXP Proprietary, NXP-Binary-EULA | NXP-Lizenzvereinbarung erforderlich | +| **Dokumentation** | CC-BY-4.0 | Attribution erforderlich | + +### 6.3 Handlungsbedarf + +- [x] ci-meta-tq Top-Level-Lizenzen dokumentiert +- [x] Alle 8 Submodule mit Lizenz erfasst +- [x] Proprietäre NXP-Komponenten identifiziert +- [ ] NXP SLA (Software License Agreement) für Deployment prüfen +- [ ] GPL-3.0 Anti-Tivoization für Embedded-Deployment bewerten lassen +- [ ] Qt6-Lizenzierung klären (falls dumpling-wayland geplant) + +--- + +**Autor:** Siggi ⚙️ +**Dokument-ID:** LIC-CI-META-TQ-001