Community på Sveriges dataportal
Open Source-licens i kombination med Copyright notice
-
Hej,
Vi är lite nyfikna hur andra myndigheter har gjort när de publicerar öppen källkod (på t ex GitHub).
Förutom att välja en licens så finns det ju även möjlighet att ha med en Copyright notice i källkodsfilerna.Jag är ingen juridisk-expert så därför undrar jag hur ni andra har gjort och vilket resonemang ni hade.
I MIT License t ex så anger man en Copyright (se t ex "Copyright (c) 2022 Havs- och vattenmyndigheten: "https://github.com/diggsweden/jitsi-outlook?tab=MIT-1-ov-file#readme)
Skapar det problem som "vi bortsett från" när man tar emot Pull Requests (bidrag) eftersom personen(erna) som bidrar äger rätten till sin källkod per default. Vi kan med andra ord inte ta in den och bara ersätta med Copyright <någon myndighet> - inte utan medgivande genom t ex Contributor License Agreement (CLA). Ett CLA skapar ju en tröskel för att få in bidrag.
För övrigt så har GitHub har: https://github.com/cla-assistant/cla-assistant
Det är inte jättevanligt bland open source-projekt att där finns ett CLA men en del har sådana, t ex:
- Microsoft: https://opensource.microsoft.com/cla/
Jag vill minnas att jag även råkat ut för att min kommentar på en issue inte har synts förrän jag har accepterat motsvarande CLA.
Hur som helst, hur har andra myndigheter resonerat?
-
@lfvjimisola intressant frågeställning som blir mer central när vi i högre utsträckning bidrar till varandras lösningar!
Vi på Arbetsförmedlingar har i diskussioner resonerat såhär:
- Vi på Arbetsförmedlingen har inte upprättat CLA:er och kan vi undvika sådana så är det bra. Det går att vara tydlig ändå i va som gäller. Se NOSADs godkännandeprocess nedan.
- Det som är praxis är att man följer den licens som redan används i huvudprojektet. Om Arbetsförmedlingen bidrar med en pull request till HAV innebär detta att myndigheten accepterar att kodbidraget kommer att användas i enlighet med licensen som HAV valt.
Arbetsförmedlingen använder MIT för NOSAD.se och skriver såhär för att vara tydliga i samarbeten:
Gokännandeprocess kod
Genom att skicka in en MergeRequest är det ägaren till repot som får välja att acceptera förändringen eller inte. Det gör att myndigheten som ansvarar för sidan har kontroll på vad som infogas och kan ta ansvar för den publicerade sidan.
Ett bidrag kan enbart ske om du kan svara JA på följande frågor:- Licensierar du ditt bidrag i enlighet med MIT-licensen?
- Om du har utfört arbetet som en del för din arbetsgivare, har du deras tillåtelse att göra bidraget?
-
@Maria_Dalhage Tillägg till tidigare svar: Copyright /upphovsrätten gäller oavsett om man fyller i copyright eller inte. Men om den fylls i blir det tydligare vem som satt licensen.
-
Sorry för sent svar. Tack för inputen!
-
Har haft diskussioner om detta med LFV:s koncern juridik som vill att vi ska Copyright i varenda fil.
Vi utvecklare är inte helt överens för det skapar en extraarbete som inte behövs av just den orsaken som du tar du upp. -
Hej, lite sent här svar, inte inne så ofta:
CLA,. DCO och inbound=outbund
- CLA är inte att rekommendera - jobbigt, ostandardiserat och komplicerat för både er som skriver den, samt den utvecklare som ska följa den. I diskussion med juridik tidigare så gällde för oss: Ni är fria att bidra till projekt som inte kräver CLA eller NDA:er. Och det kan ju vara en bra grundinställning (att inte kräva dessa för egna projekt). Man brukar istället i öppen källkodsvärlden ofta använda två andra praxis för bidrag-> DCO:er som är en enkel underskrift och brukar användas som ett intyg på att "jag har rätt att bidra med denna kod genom att göra en git --sign-off" samt en text om "inbound är lika med outbound", det vill jag säga - det som ges som bidrag här kommer att få samma licens som projektets huvudlicens.
Vi har med exempel på dessa skrivningar i vårt projekt för god öppen källkod-hälsa: https://github.com/diggsweden/open-source-project-template/blob/main/templates/CONTRIBUTING.template.adoc du kan kika på.
- Licenser och om att specificera dem enkelt
En allt vanligare specifikation är REUSE som gör att man förutom den traditionella huvudlicensen för ett projekt också anger licenserna i ett standardiserat format (SPDX) i varje fil. Syftet är att man inte bara ska ange vad som gäller för koden, utan även andra resurser, tex bilder o text som delas i projektet. Det blir dessutom maskinläsbart så enkelt för konsumenter av projektet att följa licenscompliance. Det finns ett verktyg som gör att det är enkelt att lägga till o ta bort headrar. https://reuse.software/. Också stor nytta när man släpper projekt själv, eftersom man ofta hittar en del copyrightat material genom att tvingas sätta en licens på allt. När jag jobbade på public service höll vi en gång på att dela animerat material i ett testcase, men upptäckte detta tack vare RESUSE-standarden - vem äger materialet helt enkelt.
Vi har satt det som ska krav på våra projekt nyligen efter tal med juridik. Använder man verktyget är det ett litet jobb att lägga till i ett och man kan ha en linter för detta i sina pipelines med.
Se igen tidigare refererat projekt som använder REUSE också. -
@Josef_Andersson. Tummen upp! Vi resonerar på samma sätt. Toppen att detta passerat er juridik. Det kan göra det lättare för andra organisationer att göra samma typ av avvägningar.