Bildwerk Web 0.6.0 - Quellcode und Bibliotheken
Stand: 2026-10-08

Die Lizenztexte gelten komponentenweise. GPL-3.0 ist der von LGPLv3 einbezogene
Grundtext; seine Beigabe macht die unabhängige App nicht allein dadurch zu GPL-
Software. Die Rechte zur Änderung der LGPL-Bibliotheken und zum Debuggen solcher
Änderungen bleiben bestehen.

Web-Anwendung
-------------
Das Archiv Bildwerk-0.6.0-Web-Source.zip enthält die passenden Webquellen
aus der verifizierten Bildwerk-0.6.0-Quellcode.zip, ergänzt um dieselben
Navigationslinks und die statische Lizenzseite, Lizenztexte und Hostkonfiguration
dieser Integration. Original-Quellarchiv-SHA-256: 77b441093107777fd0d92bcbceb8c4753cf310f9f79c37401bea95d7f5f84350.
Der Programm-/Codec-Quellcode ist unverändert. Auch die fertige index.html
liegt als deployment/index.html im Archiv. Keine node_modules, dist oder Modelle.
Download: ../sources/Bildwerk-0.6.0-Web-Source.zip

Die ausdrückliche Erlaubnis zur lokalen Neukombination mit geänderten LGPL-
Bibliotheken steht in LOCAL-MODIFICATION-PERMISSION.txt. Die Lizenzbedingungen
der Drittanbieter bleiben maßgeblich für deren jeweilige Bestandteile.

LGPL-Bibliotheken und exakter HEIC-Build
--------------------------------------
1. libheif-js 1.23.5, npm-gitHead:
   d8ec4bc3bc5bf8055975577bccbbc7e1d7313c2d
   https://github.com/catdad-experiments/libheif-js/tree/d8ec4bc3bc5bf8055975577bccbbc7e1d7313c2d
   Quellarchiv:
   https://github.com/catdad-experiments/libheif-js/archive/d8ec4bc3bc5bf8055975577bccbbc7e1d7313c2d.tar.gz
   scripts/install.js und scripts/bundle.js erzeugen die npm-WASM-ESM-Datei.
   Das Installskript verwendet den folgenden Emscripten-Release.

2. libheif-emscripten v1.23.5:
   https://github.com/catdad-experiments/libheif-emscripten/releases/tag/v1.23.5
   https://github.com/catdad-experiments/libheif-emscripten/tree/v1.23.5
   Workflow .github/workflows/emscripten.yml; Emscripten 3.1.61,
   Ubuntu 22.04, Node 24. Der WASM-Build ersetzt USE_WASM=0 durch
   USE_WASM=1 USE_UNSAFE_EVAL=0 im nachstehenden run-ci.sh.
   Achtung: ein GitHub-Quellarchiv dieses Wrapper-Repositories enthält den
   libheif-Submodulinhalt nicht automatisch. Quelle 3 zusätzlich herunterladen.

3. libheif v1.23.5, exakter vom Emscripten-Release benannter Commit:
   413e2a87e6a70b3eccc3a3adc5801179dd2d9e00
   https://github.com/strukturag/libheif/tree/413e2a87e6a70b3eccc3a3adc5801179dd2d9e00
   https://github.com/strukturag/libheif/archive/413e2a87e6a70b3eccc3a3adc5801179dd2d9e00.tar.gz
   Buildskripte: build-emscripten.sh, scripts/install-ci-linux.sh,
   scripts/prepare-ci.sh und scripts/run-ci.sh in diesem Commit.
   build-emscripten.sh bindet standardmäßig libde265 1.0.15 statisch ein.
   AOM, OpenJPEG, WebCodecs und unkomprimierte Codecs sind dort standardmäßig aus.
   ENABLE_MULTITHREADING_SUPPORT=OFF, ENABLE_PLUGIN_LOADING=OFF.

4. libde265 v1.0.15:
   https://github.com/strukturag/libde265/tree/v1.0.15
   https://github.com/strukturag/libde265/releases/download/v1.0.15/libde265-1.0.15.tar.gz
   Das libheif-Buildskript nennt diesen Quellrelease, konfiguriert statisch und
   ohne SSE/Beispielprogramme und bindet libde265.a ein. COPYING enthält LGPL/GPL.

Für eine geänderte HEIC-Bibliothek: diese Quellen und die passenden Buildskripte
verwenden, die interface-kompatible libheif-bundle.mjs ersetzen, anschließend
die Web-App mit ihrem Lockfile und vite.config.js erneut bauen. Die Bibliothek
wird als separates Modul über libheif-js/libheif-wasm/libheif-bundle.mjs importiert.
Die Anwendung fordert keine kryptografische Signatur der HEIC-Bibliothek und
schränkt den lokalen Austausch nicht ein. Die Modell-Prüfsumme betrifft U2-Net,
nicht die LGPL-Bibliotheken.

Weitere Codecquellen
-------------------
@jsquash/avif 2.1.1 und @jsquash/png 3.1.1:
https://github.com/jamsinclair/jSquash/tree/b7fa9ac9ec02f224847ad23d19d115f9e296a368
AVIF-Build: packages/avif/codec/Makefile und helper.Makefile.
https://github.com/AOMediaCodec/libavif/tree/v1.0.1
https://aomedia.googlesource.com/aom/+/v3.7.0/
https://github.com/webmproject/libwebp/tree/e2c85878f6a33f29948b43d3492d9cdaf801aa54
PNG-Build: packages/png/codec/Cargo.toml, Cargo.lock und src/.
Jede Rust-Cratequelle ist in png-crates/sources.json mit Prüfsumme genannt.

@jsquash/jpeg 1.6.0:
https://github.com/jamsinclair/jSquash/tree/1f62015f53e28bd18b2d7c8a3ca3326577efc445
https://github.com/mozilla/mozjpeg/tree/v3.3.1

@jsquash/webp 1.5.0:
https://github.com/jamsinclair/jSquash/tree/8bcd212da8c2be7c9c223e8f222eb3d9574a713b
https://github.com/webmproject/libwebp/tree/d2e245ea9e959a5a79e1db0ed2085206947e98f2

U2-Net:
https://github.com/xuebinqin/U-2-Net
https://github.com/danielgatis/rembg/releases/download/v0.0.0/u2net.onnx

Die exakten Drittserverlinks sind das ergänzende Source-Angebot. Vor öffentlichem
Deployment auf Erreichbarkeit prüfen und bei Änderung/Ausfall durch dauerhaft
zugängliche passende eigene Quellarchive ersetzen. Lizenzpflichten zur
Quellverfügbarkeit bleiben beim Veröffentlicher.
Die vier oben genannten HEIC-Quellarchive wurden am 2026-10-07 per HEAD geprüft:
jeweils Status 200. Die Archivkörper wurden bei dieser Erreichbarkeitsprüfung
nicht heruntergeladen; ein vollständiger Rebuild-Nachweis wird nicht behauptet.
