Ha programozóként egy új nyílt forrású programot fejlesztenél, akkor milyen licencet választanál?

 ( pehsa | 2018. november 24., szombat - 13:51 )
Protective (Copyleft) FOSS licence (GPL, AGPL)
45% (136 szavazat)
Permissive FOSS licence (MIT, BSD)
25% (76 szavazat)
Public Domain
3% (8 szavazat)
Egyéb leírom
4% (11 szavazat)
Nem érdekel a kérdés
24% (71 szavazat)
Összes szavazat: 302

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Vagy GPL-t vagy BSD-t, libhez inkább BSD-t, egyéb esetekben inkább GPL-t.

Egy nagy multi általában Permissive FOSS licencekben érdekelt. Úgy nem kell fizetnie a hozzájárulóknak ha zárt terméket készítene a munkájukat felhasználva. Legfeljebb jófejségből, de az nem kötelez semmire.
Libekhez van megfelelő Copyleft licenc, például LGPL.
Önálló fejlesztőként alapból szvsz a Copyleft licencek a legjobbak, mert így ha egy tőled független cég felhasználja a kódodat és abból zárt terméket akar készíteni muszáj neki tárgyalnia veled és megfizetnie a munkádat. Te vagy alkupozícióban.

Az Apache típusú köztes licenceket hiányolom a lehetőségek közül. Azok nem teljesen permissive licencek, a szabadalmakra elég szigorú megkötéseik vannak.

WTFPL. vagy ha az nagyon nem, akkor MIT. Minden masban annyi ertelmetlen megkotes van, hogy lehetetlen barmi ertelmes dologra hasznalni oket.


I hate myself, because I'm not open-source.

A BSD-ben sincs semmi értelmetlen megkötés. Azt is használhatod amire akarod, csak fel kell tüntetni, hogy honnan származik a kód, meg csatolni kell a BSD licencet.

A WTFPL meg lényegében a Public Domain :D

---
"Errors are red
My screen in blue
Someone help me
I've deleted Sys32"

BSD-bol is attol fugg melyik. Van a 4-clause az advertisement kikoteseivel, vagy egy simplified vagy 2-clause ami kb MIT, meg a 3-clause ami a ketto kozott van.
A WTFPL meg nem teljesen public domain, egyreszt mukodik ott is ahol nem lehet public domain ala tenni a cuccost (de erre ott van az unlicense is), de pluszba meg ott van benne hogy te kodolni akarsz es nem ilyen jogi hulyesegekkel sz*pni.


I hate myself, because I'm not open-source.

Most hallottam róla először, de ahogy látom Copyleft licence ez is.

---
"Errors are red
My screen in blue
Someone help me
I've deleted Sys32"

Nem kompatibilis a BSD es a MIT licenccel --> kuka

Nem tudom honnan vetted, hogy nem kompatibilis. Nagyon jól együttműködik az EUPL a MIT/BSD szoftverekkel.

Itt a lista, hogy mivel és milyen módon kompatibilis:
https://joinup.ec.europa.eu/collection/eupl/eupl-compatible-open-source-licences

Az EUPL lenne, a GPL for EU. Elvileg GPL, ami az EU torvenyekben jobban illik.
Sajnos a GPL-lel (mivel mindketto megkoto licensz) nem mukodik. Hacsak nem exception list van a license vegen.

En is kuldtem patchet EUPL-es projektbe. En nem latom ertelmet az EUPL-nek, de nem vagyok szakerto.

---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....

Nemcsak a GPL, hanem az összes copyleft licenc inkompatibilis, de ez nem az EUPL "hibája", hanem a jogrendszerek különbségekből adódik. Az EU a természetes személyekhez köt néhány jogot és lemondani sem lehet róla, míg az USÁ-ban mindenről le lehet mondani. Például a GNU alapítvány külön nyilatkozatot kér a fejlesztőktől, így a GPL-es szoftverek felett kizárólagosan rendelkezik, akár át is licencelhetné őket a hozzájárulók beleegyezése nélkül legálisan. A másik, hogy az EUPL nem rendelkezik szoftverszabadalmakról való lemondásról, mert itt ilyen nincs ebben a formában. Viszont egy európai licencű kód simán sérthet amerikai szabadalmat úgy, hogy az EU-n belül jogszerűen használható, emiatt sem lehet GPL (copyleft) kompatibilis.

Érthető, hogy nem tetszik neked az EUPL, mert valójában nem nemzetközi, ez igaz. Viszont a GPL-es kód publikálásával, vagy pl. a GNU nyilatkozattal meg a magyar és az EU jogot sértheted meg, valószínűleg jogkövetkezmény nélkül. Sajnos jelenleg ez van, nincs mindkét jogrendszernek teljesen megfelelő copyleft licenc.

Ezt a részt: "Viszont a GPL-es kód publikálásával, vagy pl. a GNU nyilatkozattal meg a magyar és az EU jogot sértheted meg,"

kifejtenéd bővebben?

Bővebben kifejtve egy nagyon hosszú joganyag lenne az eredmény, ennek nincs így értelme. Alapvetően két ok miatt lehet nem szándékosan szerzői jogot sérteni: az EU és az amerikai jogrend alapjai gyökeresen eltérnek (erről sok jogi szemléletű tanulmányt lehet találni), a másik a magyar jogszabály alapvetően a művészeti ágak által létrehozott művek védelméről szól és a szoftverek csak nagyjából van benne említve.

Az amerikai jogrend szerint - mint magánember - eladományozhatod a szoftverek jogait cégeknek vagy alapítványoknak. Ezzel szemben a magyar törvény:
9. § (2) A szerző személyhez fűződő jogait nem ruházhatja át, azok másként sem szállhatnak át és a szerző nem mondhat le róluk.
(3) A vagyoni jogok - a (4)-(6) bekezdésekben foglaltak kivételével - nem ruházhatók át, másként sem szállhatnak át és azokról lemondani sem lehet.
58. § (3) A szoftverre vonatkozó vagyoni jogok átruházhatók.

A másik egyértelmű példa a licence visszavonásáról, még a GPL sem írhatja felül a hatályos magyar törvényeket:
2. Basic Permissions.
All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law.

https://www.gnu.org/licenses/gpl-3.0.en.html
53. § (1) Ha a szerző alapos okból visszavonja a mű nyilvánosságra hozatalához adott engedélyét vagy a már nyilvánosságra hozott művének további felhasználását ilyen okból megtiltja, a felhasználási szerződést felmondhatja.

MIT választanál? ;)

Valaki el tudná mondani, hogy melyik, miért jó? Nem szeretnék minden egyes licencet elolvasni...
Vannak ilyenek https://choosealicense.com/, de nem nagyon írja le hogy melyik miért jó és mik a főbb különbségek. Valakinek van egy jobb összehasonlítása?

Saját vélemény alkotásához miért mások véleményére akarsz támaszkodni?

A Protective/Copyleft licence-k arra szolgálnak, hogy ha kiadsz egy forráskódot és más használni akarja, akkor kötelessége azt ugyanazzal a licencel kiadni, tehát nem adhatja el és nem szabad csak binárisként terjeszteni.

A Permissive licence-k engedik felhasználni a kódot kereskedelmi szoftverekben és nem kötelező a módosított kódot kiadni. Csak olyan megkötése van, hogy fel kell tüntetni kié az eredeti kód és csatolni kell annak licencét.

A Public Domain meg hivatalosan nem tulajdona senkinek. Azt csinálsz vele amit akarsz, arra használod amire akarod. Az eredeti PD szerint akár módosítás nélkül ki is adhatod kereskedelmi szoftverként akár pénzt kérve érte.

---
"Errors are red
My screen in blue
Someone help me
I've deleted Sys32"

Én úgy tudom, hogy a copyleft nem korlátozza a kereskedelmi felhasználást, csak a forráskódot - és a származtatott forráskódot - kell közzétenni ugyanolyan licenccel. Binárisként is lehet terjeszteni, csak mellette forráskódot is mellékelni kell. Legalábbis így magyarázta ki Stallman.

Így van. A kereskedelmi meg a tulajdonosi (proprietary) szoftver az két független kategória.

Számomra csak az nem világos, hogy GPL esetén, ha te binárisban akarod terjeszteni a saját alkalmazásodat, akkor elég mellékelni az eredeti projekt GPL forráskódját, vagy az általad kiegészített, származtatott kódot is kell?

A származékos kódot is kell. Ez a fő különbség a GPL és az LGPL között.

Ahh, akkor úgy látom, nem csak én nem értem, még mások, (pl: TP-Link) sem.

Általában tényleg kutyaütő banda a TP-Link, anno meg is lepődtem hogy nyomtatott GPL licenc járt az olcsó TP-Link router mellé :D

Az most is jár, és a honlapján nyilvánosságra is hozza a forráskódot. De az nem a származtatott kód, hanem az eredeti. A származtatottat kizárólag binárisban terjeszti.

Ennnyit arról, mennyi időt érdemes foglalkozni a licenc témával. Tplinket se tudták még térdrekényszeríteni bíróságon a fennállása óta folyamatosan elkövetett
licenc-sértései miatt.
--

Ami igaz, az igaz, mondjuk számomra sem vált világossá, (pedig vagy 10 éve mozgok a linux körüli témákban) hogy, GPL-nél, ha kész terméket adsz el, akkor automatikusan nyilvánosságra kell hozd a származtatott forráskódot, vagy csak ha azt az ügyfél kéri, vagy elég csak az eredetit?

B kérdés, ha csak viszonteladónak árusítassz, és ő nem, de az ő ügyfelei kérik, akkor mivan?

akkor automatikusan nyilvánosságra kell hozd a származtatott forráskódot, vagy csak ha azt az ügyfél kéri

Csak ha az kéri, aki a binárist jogszerűen megkapta, és csak neki kell felajánlani (az más kérdés, hogy továbbadhatja, ha akarja). Természetesen azt kell felajánlani, amiből az ő binárisa keletkezett.

Ha nyilvánosan terjeszted a binárist (bárki letöltheti), akkor nyilván bárkinek lehetővé kell tenni a forráskód letöltését.

B kérdés, ha csak viszonteladónak árusítassz, és ő nem, de az ő ügyfelei kérik, akkor mivan?

Neked a viszonteladónak kell lehetővé tenned, viszont az ő ügyfeleinek meg neki kell lehetővé tennie. Nyilván a legegyszerűbb, ha végfelhasználóknak magad teszed lehetővé.

Ha már okosítasz legalább ne ferdítenél!

"A Protective/Copyleft licence-k arra szolgálnak, hogy ha kiadsz egy forráskódot és más használni akarja, akkor kötelessége azt ugyanazzal a licencel kiadni, tehát nem adhatja el és nem szabad csak binárisként terjeszteni."

Tele van tévedésekkel és csúsztatásokkal.
"tehát nem adhatja el" - dehogy nem adhatja el. A kereskedelmi Linux disztribúciók abszolút eladják, közvetlenül pénzt szednek a GPL szoftverért. Az Apple Safari böngészője KDE eredetű (WebKit) motorra épül ami GPL licences. A Google Androidja tele van GPL kódokkal. Mindketten kereskedelmi termékeket árulnak GPL kódokra építve és pénzt szednek utánuk két különböző modellben. Ők közvetve szednek pénzt Copyleft kódok után.

"akkor kötelessége azt ugyanazzal a licencel kiadni"

Ez is tévedés, mert van átmenet a Copyleft licencek között is például GPLv2>GPLv3 vagy GPL>AGPL

"és nem szabad csak binárisként terjeszteni"

Nyugodtan lehet csak binárisként terjeszteni. GPL csak arra kötelez, hogy az ügyfélnek, csak neki és nem az egész világnak, oda kell adni a GPL szoftver forráskódját akkor ha KÉRI.
GPL szoftverrel működő szolgáltatásnál nem jön létre olyan jogviszony ami kötelezővé teszi a forráskód átadását. Leggyakrabban emlegetett példa: Google

"A Permissive licence-k engedik felhasználni a kódot kereskedelmi szoftverekben"

Akárcsak a GPL.

"és nem kötelező a módosított kódot kiadni"

GPL-nél is csak akkor kell ha eladtad a más kódját felhasználó szoftveredet, akár pénzért akár ingyen, és kéri az ügyfeled.

" Csak olyan megkötése van, hogy fel kell tüntetni kié az eredeti kód és csatolni kell annak licencét."

Nem kell csatolni az eredeti BSD licencet, azt ugyanis meg is lehet változtatni. Onnantól az az EULA lesz a licence.

"Az eredeti PD szerint akár módosítás nélkül ki is adhatod kereskedelmi szoftverként akár pénzt kérve érte."

Mintha ezt nem lehetne megtenni az előbbi licencekkel!

Szóval sikerült egy olyan hozzászólást összehoznod, amiben jóformán csak téves állítások vannak. Ez különben nem kis teljesítmény. Máskor régi fórum flame-war-ok helyett inkább hiteles forrásból tájékozódj ha már fel kívánsz világosítani valami mást.
Kapásból kezdhetnéd az érintett licencek szövegével. Nem titkosak. Teljesen nyíltan és ingyen elérhetőek :)

Azt nem lehet, hogy az egyik projekt ilyen, a másik pedig olyan licencelésű? Ha egyszer kiválasztottam az egyiket, akkor már életem végéig azt kell használnom?

Egy projekthez, azt választasz amit akarsz. Sőt akár projekten belül is használhatsz több licence fajtát egy-egy modulhoz.

A kérdés inkább arra vonatkozik, hogy melyiket részesíted előnyben.

---
"Errors are red
My screen in blue
Someone help me
I've deleted Sys32"

> Ha egyszer kiválasztottam az egyiket, akkor már életem végéig azt kell használnom?

Úgy tudom, a GPL (meg nyilván még több más lályszensz is) megengedi, hogy a jogtulaj más licenc alatt *is* terjessze a saját művét; emlékeim szerint pl. a Folding@Homenál van valami olyan program vagy modul, ami eredetileg GPL-es, de a jogtulaj valami zárt licenc alatti változatot adott a Folding@Home-éknak.

- - -
TransferWise

A jogtulajdonosnak mindig joga van hozzá, hogy más licenc alatt (is) kiadja a motyóját, ezt semmilyen licenc nem tilthatja meg.

Ha az önzés nem lenne mélyen gyökerező emberi tulajdonság, akkor a public domain vagy a MIT/BSD tök jó volna. Mondjuk egy csomó cég még most sem érti miről szól ez.

Software is like sex, it's better with a penguin. :D (r)(tm)(c) آكوش

Ha egy robot személy felhasználja a kódotokat, hogy fejlődjön, vagy egy gépet tanítanak a kódotokkal, az nem zavar titeket?

Engem nagyon zavar, mert akkor biztosan hibásan fog működni, ha az én kódomat felhasználják. ;D
Majd ha tökéletes kódot írok, akkor is én szeretnék világuralomra törni a bádogdobozok helyett.

Apache2

--
Pásztor János

Attól függ.
- Ha úgy gondolom, hogy más még fog rajta javítani, hozzátenni: GPL (hogy visszakapjak valamit)
- Ha valami tudományos célú cucc: public domain (aki használja, annak ne kelljen vele foglalkozni, úgy sem valószínű, hogy profitéhes)
- Kis apróság, saját szórakoztatásra: szintén PD

+1 (szóról szóra ugyanez)
--
"Csak webfejlesztést ne..." -ismeretlen eredetű szállóige-

GPL -t választanék, mert azt szeretném hogy az eredetileg nyílt forrásúként kiadott kódot ne építsék be titokban zárt forráskódú termékekbe.

--
arch,ubuntu,windows,libreelec,omnirom,microg
zbook/elitebook/rpi3/motog4_athene

hiaba, attol meg be fogjak. titokban. ezert te sose tudod meg. vagy nem tudod bizonyitani. vagy nem eri meg.
kiveve ha olyan benak hogy lebuknak, pl. at nem irt egyedi public function nevekkel, vagy mert pl. olyan featuret is bennefelejtenek amire nekik semmi szukseguk es amugy egyedi volt a te programodban. (jo pelda erre az mplayer subtitle loaderje, amit 1:1-be lenyultak es bennefelejtettek az mplayer sajat belso formatumanak tamogatasat is - de ezzel is csak annyit ertek el a GPL huszarok, hogy a kovetkezo firmwareben jobban elrejtettek)

BSD-t kellett volna anno valasztanotok, mai napig benne lenne, hogy copyright Arpi :P

Nyilván van negatív példa is, de ettől még neked nem kötelező azt mondani hogy my ass, akkor BSD-style.

--
arch,ubuntu,windows,libreelec,omnirom,microg
zbook/elitebook/rpi3/motog4_athene

Sztem az mplayerre iszonyu bizniszt lehetett volna epiteni.
Csak olyan facebookosan kellett volna csinalni:
https://code.facebook.com/cla

Es egy ceget moge tenni. Ami arra viszi a fejlesztest, amerre fizetik a dvd lejatszo, tv gyartok.

De ehhez kellett volna egy gazdasagis ember (en nem vagyok:).
Ha az egyik oldalon van szaktudas, azert altalaban vagy igy vagy ugy el lehet kerni az arat. Sztem.

cla-val az ilyen lazadasokat, meg megfurasokat is kb. ki lehet vedeni.
Ha pedig a video editing iranyba is elmentetek volna, akkor abban is tonnanyi penz van....

---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....

Ha mar Facebook, egyszerubb, jobb, erthetobb es kevesbe extrem pelda lett volna a react licence:

BSD + egy extra clause: ha hasznalod, lemondasz arrol a jogodrol, hogy bepereld a Facebookot szabadalomsertesert.

Amit aztán a felhördülésre újra is licenceltek MIT alatt :)
https://code.fb.com/web/relicensing-react-jest-flow-and-immutable-js/

igen, lehetett volna, ha nem GPL-el indul az egesz... amire eszbe kaptunk mar keso volt, tobb 1000 patch beolvasztva, es mindenkinek hozza kellett volna jarulni a licensz valtashoz. meg az ffmpeg GPL-rol LGPL-re valtasa is hatalmas kuzdelem volt, evekig probaltak mindenkitol a beleegyezest begyujteni hozza.
raadasul volt par kulcsfontossagu resz (pl. libavcodec, swscaler) amit a fejlesztoje nem akart mas licensz ala rakni, ragaszkodott a GPL-hez.

GPL-re pedig nem tudsz uzletet epiteni, csak a supportra vagy egyedi fejlesztesekre (amit viszont ki kell adnod publicba!!), ilyeneket csinaltunk is evekig, de ez nem nagy penz. licenszdijat nem lehet ra kerni, plane nem a kinaiaktol...

nem veletlen kezdtem 0-rol ujrairni az egeszet 2004-ben, mar LGPL alatt, de aztan jottek mas projektek es ez felbemaradt. meg egyedul nem is volt tul izgalmas ugyanazt ujra megcsinalni...

A'rpi

Azért az mplayer2 néven adtál ki valamit, vagy az másnak a tereméke?

mplayer2 nem az enyem, en mplayer g2-t fejlesztettem de nem volt release belole, de meg mukodo verzio se

"meg az ffmpeg GPL-rol LGPL-re valtasa is hatalmas kuzdelem volt, evekig probaltak mindenkitol a beleegyezest begyujteni hozza."

Az újjászületett mplayer esetén is elég hosszadalmas volt.

https://github.com/mpv-player/mpv/issues/2033

----
„Kb. egy hónapja elkezdtem írni egy Coelho-emulátort, ami kattintásra generál random Coelho-kompatibilis tartalmat.”

igen emlexem, engem is megkerdeztek.
sajnos ez a GPL egy csapda. az mplayer fejlesztesenel sok gpl kodot felhasznaltam, igy nem is volt kerdes mi lesz a licensze. ha viszont mast valasztottam volna, nem hasznalhattam volna fel azokat a kodokat, es vszinu nem is lett volna ilyen sikeres, vagy inkabb el sem keszul.

Pont a csapdasága a lényege. Ha nem valamihez patcheket küldök, azt azért teszem, hogy a jobbá tett verziót használhassam. A fene akar patcheket küldözgetni, aztán egyszer csak látni, hogy az adott szoftvert megvehetem binárisba windowsra.

de melyik szoftver volt ez?

~~~~~~~~
deb http://deb.uucp.hu/ wheezy yazzy repack

A'rpi bátya most kiguvadt szemmel lesi a monitort? :-)

dehogy. mar hozzaszoktam hogy az uj generacio azt se tudja mi az, en is lassan elfelejtem teljesen. multkor mar rtfm-elnem kellett hozza :)
jovore lesz 20 eve, hihetetlen, mi?

Idézet:
jo pelda erre az mplayer subtitle loaderje, amit 1:1-be lenyultak es bennefelejtettek az mplayer sajat belso formatumanak tamogatasat is - de ezzel is csak annyit ertek el a GPL huszarok, hogy a kovetkezo firmwareben jobban elrejtettek

azt értem hogy mplayer, hogyne érteném, én is azon nézem még tizenplusz év óta is a videókat.

de kik vagy milyen szoftverhez nyúlták le az mplayer subtitle modulját?

miben felejtették benne az mplayer sajat belso formatumanak tamogatasat?

minek a firmwarejében rejtették el mégis?

ide nekem hiányzik a másik szoftver neve, ami a leírt viszonyban volt az mplayerrel.

~~~~~~~~
deb http://deb.uucp.hu/ wheezy yazzy repack

mar nem emlekszem konkretan, de tobb eset is volt, meg hardveres dvd lejatszok is erintettek voltak. en akkor mar kiszalltam az mplayer fejelsztesbol, csak fel szemmel kovettem a dev levlistan a kuzdelmet a jogaszokkal.

amugy google://mplayer gpl violation
asszem ez volt a leghiresebb eset:
http://forum.doom9.org/archive/index.php/t-67928.html
https://slashdot.org/story/04/01/03/146209/mplayer-alleges-kiss-technology-violating-gpl
de ugy latom van meg boven, pl:
http://mplayerhq.hu/pipermail/mplayer-users/2012-October/085399.html
http://mplayerhq.hu/pipermail/mplayer-users/2010-July/080687.html
...

A MSO licence nem GPL, aztan megis lewarezoljak egyesek. Attol meg ez nem valik legalissa, ahogy a GPL sertes sem az.

--
When you tear out a man's tongue, you are not proving him a liar, you're only telling the world that you fear what he might say. -George R.R. Martin

gpl-t nyomtam, de ha van rá indok, lgpl is játszana, pl a projekt úgy sikeresebb lenne ilyesmi

https://www.boost.org/users/license.html

vagy

MPL2

----
„Kb. egy hónapja elkezdtem írni egy Coelho-emulátort, ami kattintásra generál random Coelho-kompatibilis tartalmat.”