AGPL – ce poți face și ce poți ' t
On februarie 12, 2021 by adminAGPL este o licență destul de nouă care a fost menită pentru a accesa rețelele GPL. Cu toate acestea, nefiind avocat și, de fapt, nu citind întreaga licență, nu pot să înțeleg ce anume puteți face în mod liber și ce nu cu AGPL.
Incertitudinea mea este alimentată de această postare despre MongoDB (care este AGPL) și chiar mai mult prin comentariile de mai jos.
Dacă urmăm comentariile, rezultă că puteți utiliza bibliotecile AGPL cu software-ul dvs. comercial închis, sursă de server, atâta timp cât nu modificați biblioteca. Acesta este cazul? Sau trebuie să distribuiți întreaga aplicație când utilizați o bibliotecă licențiată AGPL?
Cazul cu MongoDB este că folosește licența Apache pentru codul clientului, ceea ce pune o altă întrebare. Ce se întâmplă dacă utilizați software-ul AGPL, dar îl implementați ca o aplicație diferită de cea comercială cu sursă închisă? De exemplu, luați iText – este o bibliotecă AGPL:
- dacă o utilizați și o modificați, trebuie să open-source întreaga aplicație sau trebuie să redistribuiți doar modificările din iText?
- dacă o utilizați și nu „t modificați-l, trebuie să vă deschideți întreaga aplicație cu sursă deschisă?
- Dacă înfășurați iText într-o altă aplicație pe care o începeți ca un proces separat, dar utilizați-o din aplicația principală, ar trebui să deschideți totul sau doar aplicația wrapper? (Aplicația wrapper va fi un API bazat pe HTTP care va prelua fișiere pdf și va returna rezultatele utilizării iText ca JSON). Poate fi folosit pentru a eluda licența AGPL?
Notă: Întrebarea este despre AGPLv3
Comentarii
- A se vedea, de asemenea, acest răspuns: opensource.stackexchange.com/questions/5003/…
Răspuns
AGPL se bazează pe GPL, nu pe LGPL. Nu conține nicio excepție de legătură și orice lucrare care utilizează codul AGPL (legat sau nu, modificat sau nu) trebuie, de asemenea, să fie licențiată și distribuită AGPL.
Utilizarea unor procese separate poate eluda (A) GPL, dar acesta este un teren tulbure. Dacă aplicația dvs. finală depinde de de procesul extern, astfel încât să nu funcționeze corect fără ea, atunci ar fi luată în considerare o lucrare derivată a software-ului AGPL.
În majoritatea cazurilor în care oamenii folosesc aplicații GPL separate în programe sursă închise, acestea furnizează funcția GPL ca o extensie opțională sau un back-end alternativ pentru o altă piesă cod etc.
Lucrarea (A) GPL nu poate fi distribuită alături de aplicația finală nici măcar ca o aplicație separată (de exemplu, punându-le în aceeași arhivă sau depozit), deși este bine să oferiți instrucțiuni despre unde să găsiți funcționarea GPL și cum să o utilizați cu aplicația dvs.
Comentarii
- Deși ceea ce spuneți este adevărat, singura diferență dintre GPL și AGPL sunt cerința pentru furnizarea codului dacă ‘ este utilizat interactiv într-o rețea. Cu toate acestea, clauza care acoperă acest lucru afirmă că se aplică numai ” Versiuni modificate ” ale lucrării și „>
versiunile modificate ” este definită ca orice utilizare care necesită drepturi de autor. Simpla rularea versiunii nemodificate nu creează o ” versiune modificată „, deoarece drepturile de autor acoperă doar distribuția.
main
constă din pachete compatibile cu DFSG , care nu se bazează pe software din afara acestei zone pentru a funcționa. Acestea sunt singurele pachete considerate parte a distribuției Debian .contrib
pachetele conțin software-ul compatibil cu DFSG , dar au dependențe care nu sunt în principal (posibil ambalate pentru Debian în non-free ). non-free
conține software care nu respectă DFSG . Răspuns
AGPL este același cu GPL; prin urmare, dacă aplicația dvs. folosește codul AGPL, acesta trebuie să fie licențiat AGPL.
Ceea ce face AGPL pe lângă GPL este redefinirea utilizatorului. Pentru programele GPL care rulează pe serverul dvs., sunteți utilizatorul, pentru AGPL, utilizatorii reali ai aplicației sunt utilizatorii site-ului sau serviciului dvs. Prin urmare, distribuiți aplicația dacă o folosește altcineva decât dvs. Și asta, desigur, implică toate cerințele standard GPL.
În ceea ce privește Mongo, presupun că aplicațiile care îl folosesc nu îl folosesc, doar unele API, care nu sunt autorizate AGPL.
Comentarii
- în general, nu ‘ nu folosesc nici codul iText – I ‘ m folosind API-ul său, care este API Java binar, mai degrabă decât un API JSON în cazul Mongo.
- @Bozho Și sub ce licență este acel API?
- Driverele @Bozho Mongo DB sunt toate licențiate sub o licență Apache (
citez site-ul web pe care l-ați conectat).
Lasă un răspuns