Licentie en bronvermelding op orde #16

Closed
opened 2026-07-20 14:46:14 +02:00 by jelmer · 0 comments
Owner

Gemigreerd uit backlog/ naar issues op 2026-07-20 — oorspronkelijk TASK-13.
Labels in het oude bord: documentatie.

Het project zelf een licentie geven én netjes voldoen aan de voorwaarden van
alles wat we gebruiken. Nu is dat niet in orde.

Geconstateerde gaten (2026-07-18)

  1. Geen LICENSE-bestand. De README zegt "open source op Codeberg", maar
    zonder licentie geldt juridisch alle rechten voorbehouden — niemand mag
    het hergebruiken. Keuze maken:
    • MIT / BSD-2 — simpel, maximaal hergebruik, ook in gesloten producten.
    • AGPL-3.0 — verplicht dat wie de app (aangepast) als dienst aanbiedt
      de broncode deelt. Past bij een webapp die je zelf host en waarvan je wilt
      dat verbeteringen terugvloeien.
    • Eventueel aparte licentie voor code (bijv. MIT) en voor de teksten
      (bijv. CC BY 4.0).
  2. Fonts zonder licentietekst. static/fonts/ bevat Space Grotesk en
    Figtree; beide staan onder de SIL Open Font License 1.1, die vereist dat
    de licentietekst wordt meegeleverd bij herdistributie van de fontbestanden.
    static/fonts/OFL.txt toevoegen (per font, met de juiste
    copyrightregel).
  3. Leaflet zonder licentietekst. static/leaflet/leaflet.js heeft wel de
    @preserve-copyrightheader, maar de BSD-2-Clause-tekst ontbreekt.
    static/leaflet/LICENSE toevoegen.

Te controleren voorwaarden van de bronnen

  1. Melvin / NDW — exacte hergebruiksvoorwaarden nalezen op
    ndw.nu/copyright en het Open Data Portaal;
    controleren of de huidige vermelding ("Data: Melvin (NDW)") voldoet aan de
    gevraagde bronvermelding, en of er iets over actualiteit/aansprakelijkheid
    vermeld moet worden. Wij tonen bewerkte, gefilterde data — dat expliciet
    benoemen is verstandig.
  2. MapTiler — attributie © MapTiler © OpenStreetMap staat in de kaart
    (voldoet aan de basisplicht). Nalezen of de free tier extra eisen stelt
    (zichtbaarheid, niet-verwijderbaar, link).
  3. OpenStreetMap (ODbL) — attributie staat er; bij afgeleide data zou een
    share-alike-verplichting kunnen spelen. Wij tonen alleen tiles, dus
    waarschijnlijk niet van toepassing — even bevestigen.
  4. OpenRouter / gpt-oss-120b — voorwaarden rond het tonen van
    modeluitvoer. De AI-disclaimer staat al in de footer.

Voorstel voor de uitvoering

  • LICENSE in de repo-root, plus een korte licentieregel in de README.
  • Een colofon in de app (bijv. achter een link in de footer) die alle
    bronnen en licenties op één plek bundelt: NDW/Melvin, MapTiler, OSM,
    Leaflet, de fonts, en het gebruikte AI-model.
  • Disclaimer over aansprakelijkheid: dit is een hulpmiddel, geen garantie dat
    een route vrij is — de wegbeheerder en Melvin zijn leidend.

Definition of Done

  • #1 LICENSE gekozen en toegevoegd, README verwijst ernaar
  • #2 OFL- en Leaflet-licentieteksten meegeleverd bij de gevendorde bestanden
  • #3 Colofon met alle bronnen live op https://gpx.jelmer.org

Hoe het is opgelost

Afgerond (2026-07-20) en live geverifieerd op https://gpx.jelmer.org.

Licentie: AGPL-3.0 gekozen — wie de app (aangepast) als dienst aanbiedt moet
de broncode delen. LICENSE in de root, licentieregel in de README.

Licentieteksten van derden meegeleverd zoals hun licenties vereisen, opgehaald
bij de bron in plaats van overgetypt:

  • static/leaflet/LICENSE.txt (BSD 2-Clause, uit de v1.9.4-tag)
  • static/fonts/OFL-SpaceGrotesk.txt en OFL-Figtree.txt (SIL OFL 1.1, met de
    juiste copyrightregel per font uit de Google-Fonts-repo)

Colofon als sheet in de app, bereikbaar vanaf het startscherm en vanuit de
resultaten. Bundelt Melvin/NDW, MapTiler, OpenStreetMap, Leaflet, de fonts en
het AI-model, met bovenaan de disclaimer dat dit een hulpmiddel is en geen
garantie — de wegbeheerder en de melding zelf zijn leidend.

Bronvoorwaarden nagelopen:

  • NDW/Melvin is CC0 en eist geen attributie op data (wel op beeldmateriaal,
    dat gebruiken we niet). NDW vraagt expliciet niet de indruk te wekken dat zij
    een afgeleid werk onderschrijven; daarom staat er nu bij dat wij de data
    filteren, groeperen en van een AI-inschatting voorzien, en dat NDW die
    bewerking niet onderschrijft.
  • MapTiler en OpenStreetMap: de verplichte attributie stond al in de
    kaart en staat nu ook in het colofon.

Valkuil onderweg: server.py serveert alleen extensies uit een MIME-allowlist,
dus .txt moest erbij én het Leaflet-bestand kon niet extensieloos LICENSE
heten. Zonder die twee waren de licentieteksten simpelweg 404 geweest — precies
de verplichting die we wilden invullen. Nu geverifieerd: alle drie geven 200 met
text/plain.

Nog open, hoort bij TASK-15: zodra Vlaanderen (GIPOD) erbij komt moet die bron
ook in het colofon. De exacte attributietekst van GIPOD is nog niet hard.

> Gemigreerd uit `backlog/` naar issues op 2026-07-20 — oorspronkelijk **TASK-13**. > Labels in het oude bord: `documentatie`. Het project zelf een licentie geven én netjes voldoen aan de voorwaarden van alles wat we gebruiken. Nu is dat niet in orde. ### Geconstateerde gaten (2026-07-18) 1. **Geen LICENSE-bestand.** De README zegt "open source op Codeberg", maar zonder licentie geldt juridisch *alle rechten voorbehouden* — niemand mag het hergebruiken. Keuze maken: - **MIT / BSD-2** — simpel, maximaal hergebruik, ook in gesloten producten. - **AGPL-3.0** — verplicht dat wie de app (aangepast) als dienst aanbiedt de broncode deelt. Past bij een webapp die je zelf host en waarvan je wilt dat verbeteringen terugvloeien. - Eventueel aparte licentie voor code (bijv. MIT) en voor de teksten (bijv. CC BY 4.0). 2. **Fonts zonder licentietekst.** `static/fonts/` bevat Space Grotesk en Figtree; beide staan onder de **SIL Open Font License 1.1**, die vereist dat de licentietekst wordt meegeleverd bij herdistributie van de fontbestanden. → `static/fonts/OFL.txt` toevoegen (per font, met de juiste copyrightregel). 3. **Leaflet zonder licentietekst.** `static/leaflet/leaflet.js` heeft wel de `@preserve`-copyrightheader, maar de **BSD-2-Clause**-tekst ontbreekt. → `static/leaflet/LICENSE` toevoegen. ### Te controleren voorwaarden van de bronnen 4. **Melvin / NDW** — exacte hergebruiksvoorwaarden nalezen op [ndw.nu/copyright](https://www.ndw.nu/copyright) en het Open Data Portaal; controleren of de huidige vermelding ("Data: Melvin (NDW)") voldoet aan de gevraagde bronvermelding, en of er iets over actualiteit/aansprakelijkheid vermeld moet worden. Wij tonen bewerkte, gefilterde data — dat expliciet benoemen is verstandig. 5. **MapTiler** — attributie `© MapTiler © OpenStreetMap` staat in de kaart (voldoet aan de basisplicht). Nalezen of de free tier extra eisen stelt (zichtbaarheid, niet-verwijderbaar, link). 6. **OpenStreetMap (ODbL)** — attributie staat er; bij afgeleide data zou een share-alike-verplichting kunnen spelen. Wij tonen alleen tiles, dus waarschijnlijk niet van toepassing — even bevestigen. 7. **OpenRouter / gpt-oss-120b** — voorwaarden rond het tonen van modeluitvoer. De AI-disclaimer staat al in de footer. ### Voorstel voor de uitvoering - `LICENSE` in de repo-root, plus een korte licentieregel in de README. - Een **colofon** in de app (bijv. achter een link in de footer) die alle bronnen en licenties op één plek bundelt: NDW/Melvin, MapTiler, OSM, Leaflet, de fonts, en het gebruikte AI-model. - Disclaimer over aansprakelijkheid: dit is een hulpmiddel, geen garantie dat een route vrij is — de wegbeheerder en Melvin zijn leidend. ## Definition of Done - [x] #1 LICENSE gekozen en toegevoegd, README verwijst ernaar - [x] #2 OFL- en Leaflet-licentieteksten meegeleverd bij de gevendorde bestanden - [x] #3 Colofon met alle bronnen live op https://gpx.jelmer.org ## Hoe het is opgelost Afgerond (2026-07-20) en live geverifieerd op https://gpx.jelmer.org. Licentie: **AGPL-3.0** gekozen — wie de app (aangepast) als dienst aanbiedt moet de broncode delen. `LICENSE` in de root, licentieregel in de README. Licentieteksten van derden meegeleverd zoals hun licenties vereisen, opgehaald bij de bron in plaats van overgetypt: - `static/leaflet/LICENSE.txt` (BSD 2-Clause, uit de v1.9.4-tag) - `static/fonts/OFL-SpaceGrotesk.txt` en `OFL-Figtree.txt` (SIL OFL 1.1, met de juiste copyrightregel per font uit de Google-Fonts-repo) Colofon als sheet in de app, bereikbaar vanaf het startscherm en vanuit de resultaten. Bundelt Melvin/NDW, MapTiler, OpenStreetMap, Leaflet, de fonts en het AI-model, met bovenaan de disclaimer dat dit een hulpmiddel is en geen garantie — de wegbeheerder en de melding zelf zijn leidend. Bronvoorwaarden nagelopen: - **NDW/Melvin** is CC0 en eist geen attributie op data (wel op beeldmateriaal, dat gebruiken we niet). NDW vraagt expliciet niet de indruk te wekken dat zij een afgeleid werk onderschrijven; daarom staat er nu bij dat wij de data filteren, groeperen en van een AI-inschatting voorzien, en dat NDW die bewerking niet onderschrijft. - **MapTiler** en **OpenStreetMap**: de verplichte attributie stond al in de kaart en staat nu ook in het colofon. Valkuil onderweg: `server.py` serveert alleen extensies uit een MIME-allowlist, dus `.txt` moest erbij én het Leaflet-bestand kon niet extensieloos `LICENSE` heten. Zonder die twee waren de licentieteksten simpelweg 404 geweest — precies de verplichting die we wilden invullen. Nu geverifieerd: alle drie geven 200 met text/plain. Nog open, hoort bij TASK-15: zodra Vlaanderen (GIPOD) erbij komt moet die bron ook in het colofon. De exacte attributietekst van GIPOD is nog niet hard.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jelmer/gpx-afsluitingen#16
No description provided.