SHA256
- Added LICENSE.md file with Apache License 2.0 text. - Created NOTICE file for attribution of third-party components. - Updated README.md to reflect the new license and included details about the Apache-2.0 license. - Documented the license change in the diary entry for July 12, 2026. - Updated installation instructions in getting-started.md to reflect per-user installation. - Added reusable license header to all source files. - Updated various documentation files to mention the new Apache-2.0 license. - Changed legal mentions in example content to reflect the new license.
85 lines
3.3 KiB
Markdown
85 lines
3.3 KiB
Markdown
# Lizenz-Header & NOTICE — wiederverwendbare Bausteine
|
|
|
|
**Lizenz:** Apache-2.0 (`LICENSE.md`). Bewusst gewählt statt MIT, weil der Builder
|
|
an vielen Stellen patentrelevante Logik implementiert. Apache-2.0 bietet eine
|
|
**explizite Patentlizenz** (§3) sowie eine **Retorsionsklausel** (die
|
|
Patentlizenz erlischt, sobald jemand Patentklage wegen dieser Software erhebt) —
|
|
der Schutz gegen Patent-Trolle, den MIT nicht leistet.
|
|
|
|
Diese Datei enthält die Bausteine, die **immer in gleicher Form** eingebunden
|
|
werden (Quelldatei-Header + `NOTICE`). Bei Änderungen hier auch `LICENSE.md`,
|
|
`NOTICE`, `csproj` (`PackageLicenseExpression`) und die Doc-Verweise pflegen.
|
|
|
|
---
|
|
|
|
## 1. Quelldatei-Header (kompakt, empfohlen)
|
|
|
|
Form: **Copyright + Author + SPDX-Identifier**. Kompakt, maschinenlesbar, sachlich korrekt.
|
|
`Copyright` nennt den Rechteinhaber (GitCover Commons gUG (haftungsbeschränkt) (haftungsbeschränkt)), `Author` den Entwickler (Axel Druschel).
|
|
In jede `.cs`-Datei **ganz oben** (vor `using`/Namespace):
|
|
|
|
```csharp
|
|
// Copyright 2026 GitCover Commons gUG (haftungsbeschränkt)
|
|
// Author: Axel Druschel
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
```
|
|
|
|
## 2. Quelldatei-Header (vollständiges Apache-Boilerplate)
|
|
|
|
Alternative, falls ein Reviewer das kanonische Apache-Format bevorzugt:
|
|
|
|
```csharp
|
|
// Copyright 2026 GitCover Commons gUG (haftungsbeschränkt)
|
|
// Author: Axel Druschel
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
```
|
|
|
|
## 3. NOTICE-Datei (Repo-Root, Pflicht bei Apache-2.0)
|
|
|
|
Inhalt der `NOTICE` im Repository-Root (Attribution der Dritt-Komponenten;
|
|
der Text hier ist identisch mit der committeten `NOTICE`):
|
|
|
|
```
|
|
GitCover.WebStaticBuilder
|
|
Copyright 2026 GitCover Commons gUG (haftungsbeschränkt)
|
|
|
|
This product includes software developed by GitCover Commons gUG (haftungsbeschränkt)
|
|
(https://gitcover.org).
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
|
use this product except in compliance with the License. A copy of the
|
|
License is provided in the file LICENSE.
|
|
|
|
Third-party components distributed with this product:
|
|
|
|
- Markdig (BSD-2-Clause)
|
|
https://github.com/xoofx/markdig
|
|
- YamlDotNet (MIT)
|
|
https://github.com/aaubry/YamlDotNet
|
|
|
|
The above components retain their respective licenses; their license texts
|
|
and notices are reproduced in the documentation and source distributions.
|
|
```
|
|
|
|
---
|
|
|
|
## Hinweise
|
|
|
|
- **SPDX** (`SPDX-License-Identifier`) wird von GitHub, NuGet, dotnet und den
|
|
meisten Scanner erkannt — der kompakte Header (Block 1) genügt rechtlich.
|
|
- Bei **Abänderung** von Dateien verlangt Apache-2.0 §4(b) einen hinweisenden
|
|
Vermerk („Changed files" / Changelog). Der Header selbst bleibt unverändert.
|
|
- `NOTICE` muss bei Weitergabe (Distribution) erhalten bleiben (§4(d)).
|
|
- Dritt-Komponenten: `Markdig` (BSD-2), `YamlDotNet` (MIT) — beide mit
|
|
Apache-2.0 verträglich; ihre Lizenztexte in `NOTICE` geführt.
|