AGPL er GPLv3 plus afsnit 13: lader du brugere nå din ændrede version over et netværk, kan de bede dig om dens kildekode.
På denne side
Hvad den gør
AGPL er GPL version 3 med én ekstra klausul. Afsnit 13 siger, at hvis du ændrer programmet og lader brugere interagere med det over et netværk, skal du tilbyde de brugere Corresponding Source til din ændrede version. Tilbuddet er gratis og gives fra en netværksserver. Alt det øvrige i GPLv3 gælder stadig, når du overdrager en binær fil. Klausulen findes for at lukke det, forfatterne kaldte application service provider-hullet: hosting er ikke distribution, så klassisk copyleft nåede aldrig en hostet tjeneste. Grafana, Mastodon, Nextcloud og MinIO bruger den.
Detaljer
To ord i afsnit 13 afgør de fleste AGPL-sager: modified version. At køre uændret AGPL-software som en del af din tjeneste er en væsentligt anden position end at køre et lappet build. Ret én linje, og afsnit 13 har noget at hæfte sig ved. Det sværere spørgsmål er, hvor din applikation slutter, og programmet begynder, og det kan intet SPDX-id svare på. Tag denne komponent til en jurist, før arkitekturen stivner omkring den, ikke efter at en kunde spørger.
Fordele
- Lukker SaaS-smutvejen: du kan ikke tage koden, køre den som en tjeneste og aldrig dele dine ændringer.
- Gør netværksudløseren eksplicit, så et hostet produkt har et ja-eller-nej-spørgsmål i stedet for en distributionsdebat.
Ulemper
- Et SaaS-produkt, der indeholder denne kode, kan skulle tilbyde tilhørende kildekode til tjenesten, ikke kun til en downloadbar binær fil.
- Procurement og investorer behandler denne familie som høj opmærksomhed. Forvent ekstra gennemgang, før du publicerer en side, der lister den.
Hvad den tillader og kræver
Vælg en kategori for at se hele tilladelsen i én overskuelig liste. Tilladelser viser, hvad licensen giver lov til, grænser viser, hvad den tilbageholder, og forpligtelser viser de betingelser, jeres releaseproces skal opfylde.
Tilladelser
Kommerciel brug
Du må sende koden med i et betalt produkt. Licensen begrænser ikke kommerciel brug.
Ændre
Du må ændre koden, også holde ændringerne private, medmindre en senere pligt siger noget andet.
Distribuere
Du må give kopier til andre. Distribution er det, der typisk gør notits- og kildekodepligter til reelt arbejde.
Privat brug
Brug inde i virksomheden, også interne forks, udløser ikke i sig selv distributionspligter.
Grænser
Holde ansvarlig
Forfatterne fraskriver sig garanti. Modtagere kan ikke holde dem ansvarlige for skader fra softwaren, undtagen hvor loven forbyder den fraskrivelse.
Bruge varemærke
Licensen er ikke en varemærkelicens. Navne, logoer og produktmærker bliver hos ejerne, medmindre en separat tilladelse siger noget andet.
Åbne dit produkt
Copyleft kan nå et samlet værk, du distribuerer, ikke kun de originale filer. Hvor langt det rækker i dit stack, er et juristspørgsmål.
Netværks-copyleft
Hosting er ikke et smuthul her. Netværksinteraktion med et ændret dækket værk er det, der vækker kildekodepligten.
Senere AGPL
AGPL-3.0-only låser version 3. Modtagere kan ikke vælge en senere Affero GPL fra FSF.
Forpligtelser
Medtag copyright
Behold copyright-notitser på distribuerede kopier.
Medtag licens
Giv modtagere en kopi af licensen sammen med programmet.
Offentliggør kildekode
Når du distribuerer en binær fil af et dækket værk, skal tilsvarende kildekode tilbydes på den måde, licensen beskriver.
Samme licens
Det samlede værk, du distribuerer, skal blive under denne licens. Du kan ikke lukke det dækkede værk med en mere restriktiv tilladelse.
Offentliggør kildekode
AGPL tilføjer en netværksudløser. Hvis brugere interagerer med et ændret dækket værk over et netværk, skal de kunne få den tilsvarende kildekode.
Hvad AGPL-3.0-only kræver, når I sender kode ud
For AGPL-3.0-only kan det at tilbyde softwaren som en hostet tjeneste udløse samme kildekodepligt, som det at give nogen en binær fil ville. Bekræft det, I kører, ikke kun det, I sender ud som en fil. Netværks-copyleft er skrevet til det hul. Trinene nedenfor er forsendelses- og hostingarbejdet, i den rækkefølge en reviewer typisk går dem.
Du er uden for afsnit 13, så længe programmet kører uændret. Klausulen hæfter sig til din ændrede version, så et urørt build i din stak er den lettere position at forsvare og stadig værd at dokumentere.
Du opfylder afsnit 13, når brugere af din ændrede version kan få dens Corresponding Source uden beregning, tilbudt tydeligt fra en netværksserver frem for først efter en mail.
Du opfylder GPLv3-halvdelen, når en binær fil, du overdrager, følges af den komplette tilsvarende kildekode til det kombinerede værk, under AGPL.
Du har afgrænset klausulen, når du kan sige, hvad der tæller som programmet, og hvad der er din omkringliggende applikation, og en jurist er enig i den grænse, du har trukket.
Du har arms-længde-argumentet, når dit produkt kun taler med en AGPL-database eller -kø over en socket. Adskilte processer i arms længde er den sædvanlige undtagelse, og den skal stadig ses efter.
De pligter, AGPL-3.0-only navngiver
Notitsen følger stadig med enhver kopi. AGPL-3.0-only navngiver også en kildekodepligt, der kan udløses, når I tilbyder softwaren som en hostet tjeneste. Dette er betingelserne i teksten.
Medtag copyright
Behold copyright-notitser på distribuerede kopier.
Medtag licens
Giv modtagere en kopi af licensen sammen med programmet.
Offentliggør kildekode
Når du distribuerer en binær fil af et dækket værk, skal tilsvarende kildekode tilbydes på den måde, licensen beskriver.
Samme licens
Det samlede værk, du distribuerer, skal blive under denne licens. Du kan ikke lukke det dækkede værk med en mere restriktiv tilladelse.
Offentliggør kildekode
AGPL tilføjer en netværksudløser. Hvis brugere interagerer med et ændret dækket værk over et netværk, skal de kunne få den tilsvarende kildekode.
Det skal du være opmærksom på
- At læse afsnit 13 som 'at hoste AGPL-software betyder, at du udgiver din kildekode'. Den hæfter sig til din ændrede version, så det første spørgsmål er, om du overhovedet har ændret programmet.
- At forvente to tjeklistepunkter på hver AGPL-komponent. Under den forvalgte SaaS-distributionskontekst dukker kun netværks-gennemgangen op; kildekode-tilbuddet kræver Distribueret binær eller Blandet.
- At antage, at en AGPL-database, din app blot forespørger, trækker selve appen ind under AGPL. Det gør den som regel ikke, men svaret afhænger af, hvor tæt de to er koblet.
- At lappe en AGPL-komponent i en privat fork og behandle det som en intern detalje. Netop den lapning er, hvad afsnit 13 beder dig tilbyde brugerne af din tjeneste.
Hvad GNU AGPL v3.0 ikke gør
Søgeresultater flader ofte GNU AGPL v3.0 ud til et slogan. Dette er de sædvanlige fejllæsninger. AGPL-3.0-only er en tilladelse med betingelser, ikke en tilladelse til at springe papirarbejdet nedenfor over.
- AGPL er ikke GPL med et andet nummer. Fjern netværksinteraktion er en distributions-lignende udløser.
- Den lader ikke et SaaS-produkt inkludere AGPL-kode og springe kildekode-tilbuddet over, fordi der ikke blev sendt en binær fil ud.
Hvordan AGPL-3.0-only adskiller sig fra nærliggende licenser
Disse licenser forveksles ofte med AGPL-3.0-only, men deres pligter ved en release er forskellige. Hver række opsummerer, hvad licensen kræver, når I sender kode ud. Åbn den linkede side for den fulde tjekliste.
- AGPL-3.0-only
- AGPL er GPLv3 plus afsnit 13: lader du brugere nå din ændrede version over et netværk, kan de bede dig om dens kildekode.
- AGPL-3.0-or-later
- AGPL-3.0-or-later er AGPLv3 plus lov til at tage en senere Affero GPL. Afsnit 13 hæfter stadig på en ændret version, brugere når over et netværk.
- GPL-3.0-only
- GPL-3.0 beholder kildekode-pligten ved binær distribution og tilføjer et patentbrev, en anti-lockdown-regel for forbrugerenheder og en frist til at rette.
- SSPL-1.0
- SSPL er MongoDBs omskrivning af AGPL. Tilbyder du softwaren som en tjeneste, kræver dens afsnit 13 kildekoden til hele din tjeneste-stak.
Ofte stillede spørgsmål om GNU AGPL v3.0
Svar på almindelige spørgsmål om, hvad GNU AGPL v3.0 kræver, hvornår pligterne gælder, og hvilken dokumentation der skal følge med en release.
Hvad er GNU AGPL v3.0?
AGPL er GPL version 3 med én ekstra klausul. Afsnit 13 siger, at hvis du ændrer programmet og lader brugere interagere med det over et netværk, skal du tilbyde de brugere Corresponding Source til din ændrede version. Tilbuddet er gratis og gives fra en netværksserver. Alt det øvrige i GPLv3 gælder stadig, når du overdrager en binær fil. Klausulen findes for at lukke det, forfatterne kaldte application service provider-hullet: hosting er ikke distribution, så klassisk copyleft nåede aldrig en hostet tjeneste. Grafana, Mastodon, Nextcloud og MinIO bruger den.
Hvad kræver AGPL-3.0-only, når I sender et produkt ud?
Du er uden for afsnit 13, så længe programmet kører uændret. Klausulen hæfter sig til din ændrede version, så et urørt build i din stak er den lettere position at forsvare og stadig værd at dokumentere. Du opfylder afsnit 13, når brugere af din ændrede version kan få dens Corresponding Source uden beregning, tilbudt tydeligt fra en netværksserver frem for først efter en mail. Du opfylder GPLv3-halvdelen, når en binær fil, du overdrager, følges af den komplette tilsvarende kildekode til det kombinerede værk, under AGPL. Du har afgrænset klausulen, når du kan sige, hvad der tæller som programmet, og hvad der er din omkringliggende applikation, og en jurist er enig i den grænse, du har trukket. Du har arms-længde-argumentet, når dit produkt kun taler med en AGPL-database eller -kø over en socket. Adskilte processer i arms længde er den sædvanlige undtagelse, og den skal stadig ses efter.
Udløser det kildekodepligten at køre AGPL-3.0-only som en hostet tjeneste?
Ja. For AGPL-3.0-only kan det at tilbyde softwaren som en hostet tjeneste udløse samme kildekodepligt som distribution. Det er pointen med denne familie.
Hvad er tilsvarende kildekode for AGPL-3.0-only?
Tilsvarende kildekode er den kilde, en modtager skal bruge for at bygge og køre den samme binære fil, inklusive scripts og interfacefiler, licensen nævner. At hoste en repository-URL kan være et tilbud. Tilbuddet skal matche det, I faktisk har sendt ud. SourceTrust registrerer, at en på jeres team har bekræftet tilbuddet. Den udgiver ikke jeres kildekode og hoster ikke et spejl.
Hvordan adskiller AGPL-3.0-only sig fra GNU AGPL v3.0 eller senere?
AGPL-3.0-only kræver dette: AGPL er GPLv3 plus afsnit 13: lader du brugere nå din ændrede version over et netværk, kan de bede dig om dens kildekode. GNU AGPL v3.0 eller senere kræver dette: AGPL-3.0-or-later er AGPLv3 plus lov til at tage en senere Affero GPL. Afsnit 13 hæfter stadig på en ændret version, brugere når over et netværk. Åbn GNU AGPL v3.0 eller senere-siden for, hvad den licens kræver, når I sender kode ud. Behandl ikke SPDX-id'erne som udskiftelige, bare fordi de korte navne ligner hinanden.
Hvor registrerer jeg AGPL-3.0-only til en køber?
Kataloget markerer AGPL-3.0-only som en licens, hvor netværksbrug ikke er undtaget, så et punkt om netværks-gennemgang dukker op på projektets tjekliste for SaaS- og Blandet-projekter. Et særskilt punkt om kildekode-tilbud dukker kun op, når projektet også sender binære filer ud, altså i konteksten Distribueret binær eller Blandet. Begge venter på, at en person bekræfter dem, og publicering er spærret, indtil hvert relevant punkt er bekræftet. SourceTrust udgiver ikke kildekode for dig. Komponentsiden viser desuden en kritisk kompatibilitetsadvarsel, når en AGPL-komponent ligger i et projekt, hvis kontekst er SaaS eller Blandet.
Hvor registrerer jeg AGPL-3.0-only til en køber?
Kataloget markerer AGPL-3.0-only som en licens, hvor netværksbrug ikke er undtaget, så et punkt om netværks-gennemgang dukker op på projektets tjekliste for SaaS- og Blandet-projekter. Et særskilt punkt om kildekode-tilbud dukker kun op, når projektet også sender binære filer ud, altså i konteksten Distribueret binær eller Blandet.
Begge venter på, at en person bekræfter dem, og publicering er spærret, indtil hvert relevant punkt er bekræftet. SourceTrust udgiver ikke kildekode for dig.
Komponentsiden viser desuden en kritisk kompatibilitetsadvarsel, når en AGPL-komponent ligger i et projekt, hvis kontekst er SaaS eller Blandet. Læs /docs/inventory-compliance for at finde hver AGPL-komponent på tværs af dine projekter.
- To punkter på den samme komponent sker kun i Blandet-konteksten. I den forvalgte SaaS-kontekst ser du netværks-gennemgangen og intet andet.
- At bekræfte netværks-gennemgangen registrerer, at du og din jurist har set på den. Det er din egen attestation, ikke en kontrol af din arkitektur.
Se også
Hubben er søjlen for denne klynge. Søskendelicenser er de andre eger. Produkt-FAQ-links forklarer, hvordan SourceTrust registrerer pligten, ikke selve licensteksten.
- Alle licenser
- AGPL-3.0-or-later
- GPL-3.0-only
- SSPL-1.0
- Gennemgang af netværksdistribution
- Copyleft kildekode-tilbud
- GPL over for AGPL
Praktisk vejledning til procurement-gennemgang, ikke juridisk rådgivning. Bekræft brug med høj risiko med jurist.
