Bagaimana cara keluar dari GPL?


24

PENOLAKAN Saya tidak berpura-pura tahu tentang perizinan. Faktanya, semua yang saya katakan di bawah ini mungkin sepenuhnya salah!

Backstory:

Baru-baru ini, saya telah mencari mesin permainan yang layak, dan saya pikir saya telah menemukan yang sangat saya sukai, Cafu Engine .

Namun, mereka memiliki rencana lisensi ganda, di mana semua yang Anda buat dengan mesin terpaksa berdasarkan GPL, kecuali Anda membayar lisensi komersial. Saya tidak mengatakan bahwa itu adalah mesin yang buruk, mereka bahkan mengatakan bahwa mereka sangat santai tentang biaya lisensi. Namun, fakta bahwa itu bahkan melibatkan GPL membuatku takut.

Jadi pertanyaan saya pada dasarnya, bagaimana cara keluar dari GPL.

Berikut ini sebuah contoh: Mesin id Tech, juga dikenal sebagai mesin Quake, atau mesin Doom, adalah basis untuk mesin Sumber yang populer. Namun, mesin id Tech telah dirilis di bawah GPL, dan mesin Source adalah milik. Apakah Valve mendapatkan lisensi yang berbeda? Atau apakah mereka melakukan sesuatu untuk menghindari GPL? Apakah ada cara untuk keluar dari GPL? Atau, jika Anda menggunakan kode sumber GPL sebagai basis untuk proyek lain, apakah Anda terpaksa menggunakan GPL, dan membuat kode sumber Anda tersedia bagi dunia. Bisakah beberapa orang secara acak mengambil mesin id Tech, memodifikasinya melewati titik pengakuan, kemudian menggunakannya sebagai mesin berpemilik untuk produk komersial? Atau apakah mereka diharuskan untuk membuatnya open source.

Satu hal terakhir, saya biasanya tidak punya masalah apa-apa dengan open source. Namun saya merasa bahwa open source memiliki tempat itu, tetapi itu bukan di dunia semak-semak.


3
Anda menjawab pertanyaan Anda sendiri dengan kutipan yang Anda berikan. Juga, Sumber (HL2) tidak didasarkan pada Quake. Anda sedang memikirkan GoldSrc (HL1).
Justin Skiles

Sayang sekali ini ditolak karena pertanyaannya jelas dapat dijawab dan memiliki beberapa respons yang akurat.
Kylotan

1
Tanyakan kepada pengacara Anda, dan dalam hal ini tanyakan kepada perusahaan yang membuat mesin, tetapi seperti yang saya pahami untuk mesin permainan, GPL hanya berlaku untuk kode dan modifikasi yang Anda buat untuk itu, dan bukan aset Anda yang lain [seperti peta , suara, seni, dan sebagainya]. Mengapa itu tidak bisa Anda terima?
Random832

1
Anda mungkin juga bertanya bagaimana Anda bisa mencuri kode sumber dari Microsoft dan lolos begitu saja. Anda hanya memiliki dua opsi dan dua opsi: bermain sesuai aturan yang ditetapkan oleh pemilik kode dengan lisensi dan / atau biaya, atau menggunakan sesuatu yang lain.
Sean Middleditch

1
"Namun saya merasa bahwa open source memiliki tempat itu, tetapi itu bukan di dunia semak-semak." Tapi Anda pikir hanya menggunakan kode seseorang dan tidak membayar lisensi komersial atau menerima ketentuan alternatif yang ada di dunia bisnis? Ini bukan bisnis pencurian. Bukannya ini tidak cukup sering terjadi di dunia bisnis ... - Sepertinya Anda benar - benar menginginkan open source (dapat dipahami) dari sudut pandang programmer, tetapi memiliki keengganan yang agak dogmatis terhadapnya dari sudut pandang moneter . Nah, tampilan ini tidak kompatibel.
leftaroundabout

Jawaban:


28
  1. Jika Anda memegang hak cipta pada kode sumber, Anda dapat merilis kode itu sesuka Anda. Melepaskannya di bawah GPL tidak menghalangi rilis di bawah lisensi lain yang bahkan tidak lebih ketat. Saya tidak yakin dengan rincian Source / id Tech tetapi akan menganggap bahwa Valve menegosiasikan lisensi mereka sendiri.

  2. Jika Anda menggunakan kode GPL dalam proyek Anda, Anda harus memberikan kode sumber kepada pengguna. Ini Tidak berarti Anda diharuskan menjalankan situs web atau menyimpan salinannya untuk memberikan sesuai permintaan. Ini Tidak berarti bahwa Anda diharuskan untuk membuat semua perubahan kepada publik segera setelah Anda membuatnya - itu hanya ketika Anda mendistribusikan kembali perangkat lunak, bahwa kode dan perubahan yang Anda lakukan sesuai dengan itu. ( http://www.gnu.org/licenses/gpl-faq.html#GPLRequireSourcePostedPublic )

  3. Jika Anda menggunakan bahkan satu baris kode GPL dalam proyek Anda, Anda sekarang terikat oleh ketentuan-ketentuan GPL. Satu (meskipun bukan satu-satunya cara) adalah merilis kode Anda di bawah GPL juga (atau jangan lepaskan sama sekali).
    Jika Anda memodifikasinya melewati titik pengakuan dan tidak mematuhi ketentuan, Anda mungkin akan lolos begitu saja (yaitu Anda tidak akan dituntut) tetapi hanya karena Anda akan lolos begitu saja bukan berarti Anda tidak t melanggar lisensi, atau memperbaikinya.

  4. Untuk menggunakan 'kode GPL' tanpa GPL Anda harus mendapatkannya di bawah lisensi lain, sehingga tidak lagi 'kode GPL' (dengan membayar Cafu). Tidak ada jalan keluar dari GPL - itu dirancang khusus untuk menjadi lisensi virus oleh penemunya dan tujuannya akan dinegasikan jika memungkinkan.

Yang mengatakan, jika Anda ingin menggunakan kode GPL dalam program Anda, Anda dapat membuat entitas mandiri yang digunakan aplikasi Anda (apakah penautan dinamis memuaskan ini masih dapat diperdebatkan - tetapi umumnya diterima bahwa ketika hasilnya adalah satu program, GPL dipanggil ). Jadi misalnya, Anda dapat membuat proyek baru dengan kode GPL dan milik Anda, yang Anda rilis dengan aplikasi (milik) Anda, bersama dengan GPL dan kode sumber. Namun aplikasi Anda berkomunikasi dengannya melalui CLI atau RPC dan karenanya dapat tetap bebas dari GPL.

Saat ini banyak pengembang mengadopsi LGPL, yang memungkinkan menghubungkan sebagian besar bentuknya tanpa GPL mentransfer ke proyek tujuan. (Jika Anda memodifikasi perpustakaan itu sendiri, Anda masih harus memberikan kode perpustakaan.)

Perhatikan bahwa lebih jauh ke Poin 2, dianggap sopan untuk mempublikasikan perbaikan apa pun yang Anda lakukan untuk membuka kode sumber, terlepas dari lisensi.


9
Jika Anda bahkan menggunakan satu baris kode GPL dalam proyek Anda, proyek Anda sekarang berada di bawah lisensi GPL. Tidak. Jika Anda menggunakan satu baris kode GPL, proyek Anda melanggar lisensi GPL, dan siapa pun yang menulis baris itu dapat menuntut Anda. Salah satu solusi yang mungkin adalah melepaskan proyek Anda di bawah GPL, tetapi itu tidak secara otomatis terjadi.
TRiG

3
(Ini masih tidak menghentikan Anda untuk menjualnya atau melepaskannya di bawah lisensi yang tidak terlalu ketat selain GPL ...) Ya, itu berlaku. Jika saya merilis kode di bawah GPL, orang lain tidak dapat datang dan hanya memasukkan kode yang sama ke (katakanlah) domain publik. Saya masih memiliki kode itu; Saya hanya membuatnya tersedia untuk orang lain dengan ketentuan GPL.
Evan Harper

4
Meskipun ada beberapa ketidakakuratan kecil, +1 karena menyebutkan solusi yang paling jelas, termudah, tercepat dan paling mudah didekati: Untuk menggunakan 'kode GPL' tanpa GPL Anda harus mendapatkannya di bawah lisensi lain . Hubungi pemegang hak cipta, negosiasikan lisensi yang berbeda. Ini jelas berlaku untuk lisensi lain juga.
Martin Sojka

11
Jawaban ini, dan semua komentar kehilangan satu syarat penting: Ketentuan GPL berlaku untuk distribusi , bukan digunakan . Jika Anda menggunakan seribu baris kode GPL dalam perangkat internal Anda (yang tidak Anda bagikan), maka Anda tetap tidak terikat oleh ketentuan GPL.
MSalters

1
"Anda mungkin akan lolos begitu saja". Hmmm saya suka perasaan hangat dan tidak jelas yang saya dapatkan dari jawaban ini.
Trevor Boyd Smith

64

Anda lolos dari GPL dengan membayar pengembang untuk lisensi komersial.


27
+1, saya pikir Kapten Obvious entah bagaimana tidak terdaftar di
stackexchange

1
+1, meskipun agar lebih akurat Anda mendapatkan izin untuk menggunakan kode tanpa GPL. Itu tidak selalu berarti Anda harus membayar (walaupun sering akan).
Kylotan

tidak juga, Anda mengatakan ini seperti akan selalu ada alternatif komersial untuk setiap lisensi GPL di muka bumi; itu tergantung pada apa strategi pemilik kode itu.
user827992

4
Saya akan mengatakan, "Anda lolos dari GPL dengan membayar pengembang untuk lisensi komersial, sehingga memberi mereka bagian yang cukup dari uang yang Anda harapkan sebagai hadiah untuk upaya bertahun-tahun orang-orang yang mereka tulis secara tertulis".
DJClayworth

1
Hampir, "Anda keluar dari GPL dengan membayar pengembang untuk salinan kode yang tidak memiliki jumlah GPL (seperti MIT)."
Jonathan Dickinson

10

Anda pada dasarnya bertanya, "Bagaimana cara mencuri kode orang lain?" Jika Anda ingin menggunakan kode hak cipta seseorang, Anda harus mendapatkan lisensi darinya. Jika satu-satunya lisensi yang Anda miliki dari mereka untuk menggunakan kode mereka adalah GPL maka Anda harus mematuhinya atau Anda melanggar hak cipta mereka. Jika Anda dapat meminta mereka memberi Anda lisensi yang berbeda untuk kode mereka, maka itu tidak masalah, tetapi Anda tidak luput dari GPL.


3
-1. Anda lolos dari GPL: karena mereka memberi Anda lisensi yang sama sekali berbeda. Anda juga tidak mencuri kode mereka - jika Anda mengikuti langkah-langkah yang mereka minta (misalnya membayar uang).
Jonathan Dickinson

5
Tidak, dalam hal ini penggunaan kode mereka sama sekali tidak ada hubungannya dengan GPL. Melarikan diri menyiratkan terjebak oleh sesuatu.
Jason Goemaat

@ JonathanDickinson Saya pikir maksudnya di sini adalah bahwa OP tampaknya tidak mau membayar lisensi. Dia ingin mendapatkannya secara gratis, tetapi tanpa batasan GPL.
Paul

Ini membuat saya condong ke sitaan (alih-alih mencuri) "Namun, fakta bahwa itu melibatkan GPL membuat saya takut." Kedengarannya lebih seperti ketakutan (mapan) dari spanduk GPL tergantung kode.
Jonathan Dickinson

2
@ Jonathan. OP mengatakan bahwa Zie tidak tahu apa-apa tentang lisensi, jadi saya curiga bahwa ketakutan terhadap GPL tidak "beralasan".
TRiG

8

Apakah Anda benar-benar perlu melarikan diri dari GPL? Semua GPL mengharuskan Anda lakukan adalah melepaskan kode sumber Anda sendiri di bawah GPL. Itu tidak berlaku untuk level game, aset seni dll. Anda masih bisa menjual game Anda dan membuat kode tersedia melalui GPL kepada orang-orang yang membelinya jika mereka menginginkannya, atau membuatnya tersedia secara online untuk semua orang.

Satu-satunya masalah adalah jika Anda ingin menggunakan pustaka non-GPL pihak ketiga, maka Anda tidak akan dapat mendistribusikannya bersama dengan mesin GPL Anda.

Jika Anda perlu keluar dari GPL, lihat halaman lisensi mereka yang kedengarannya cukup fleksibel sehingga Anda bisa mencapai kesepakatan.


Saya setuju dengan jawaban ini, terutama karena kebanyakan orang tidak benar-benar menambahkan banyak nilai tambahan saat menggunakan mesin. Ini adalah aset lain yang benar-benar bernilai.
Paul

5

Ada banyak kesalahpahaman tentang apa arti sebenarnya GPL dan sebenarnya, dan saya mendeteksi satu di pertanyaan Anda:

semua yang Anda buat dengan mesin dipaksa di bawah GPL

Sebenarnya bukan itu masalahnya. Sumber mesin tetap di bawah GPL pasti, tetapi membayar untuk membaca FAQ GPL, terutama bagian-bagiannya yang berhubungan dengan output dari program GPL, yang saya percaya relevan di sini: http: // www. gnu.org/licenses/gpl-faq.html#GPLOutput

Apakah ada cara agar saya bisa mendapatkan hasil keluaran GPL dari penggunaan program saya? Misalnya, jika program saya digunakan untuk mengembangkan desain perangkat keras, dapatkah saya meminta agar desain ini harus gratis?

Secara umum ini tidak mungkin secara hukum; undang-undang hak cipta tidak memberi Anda suara apa pun dalam penggunaan hasil yang dibuat orang dari data mereka menggunakan program Anda. Jika pengguna menggunakan program Anda untuk memasukkan atau mengonversi datanya sendiri, hak cipta pada output menjadi miliknya, bukan Anda. Lebih umum, ketika suatu program menerjemahkan inputnya ke dalam bentuk lain, status hak cipta dari output mewarisi input yang dihasilkannya.

Jadi, satu-satunya cara Anda memiliki suara dalam penggunaan output adalah jika sebagian besar output disalin (lebih atau kurang) dari teks dalam program Anda. Sebagai contoh, bagian dari output Bison (lihat di atas) akan dicakup oleh GNU GPL, jika kami tidak membuat pengecualian dalam kasus khusus ini.

Anda dapat secara artifisial membuat program menyalin teks tertentu ke dalam outputnya bahkan jika tidak ada alasan teknis untuk melakukannya. Tetapi jika teks yang disalin itu tidak memiliki tujuan praktis, pengguna hanya dapat menghapus teks itu dari output dan hanya menggunakan sisanya. Maka dia tidak perlu mematuhi ketentuan redistribusi teks yang disalin.

Ini sedikit mengubah situasi Anda. Anda sebenarnya tidak berada di posisi di mana konten yang Anda kembangkan untuk atau dengan mesin ini juga termasuk dalam GPL; bahwa konten adalah milik Anda, Anda memiliki hak cipta untuknya, dan Anda dapat melisensikannya sesuai keinginan.

IANAL, dll


2
Saya tidak tahu apa-apa tentang mesin tertentu, tetapi hal di atas hanya benar jika mesin mengambil desain game Anda dan menghasilkan game mandiri sebagai hasilnya. Jika mesin itu sendiri, atau sebagiannya didistribusikan bersama game, atau ditautkan ke dalam kode game, GPL berlaku untuk semuanya.
rjmunro

Saya percaya bahwa sangat mungkin bagi mesin untuk menjadi GPL tetapi konten game tidak. Konten game bukan kode dan tidak "ditautkan" ke mesin dengan cara yang sama seperti kode; peta, tekstur, model, dll tidak terhubung ke mesin dengan cara ini. Sayangnya FAQ GPL tidak jelas mengenai hal ini (yang merupakan alasan yang valid untuk menghindari penggunaan GPL).
Maximus Minimus

Jawaban ini menjelaskan lebih lanjut apa yang terjadi dengan konten yang dihasilkan dengan beberapa alat GPL. Seperti dokumen yang ditulis dalam editor teks GPL tidak akan dipaksa menjadi GPL. Tetapi ini tidak dapat diterjemahkan ke mesin game. Mesin gim tidak mengambil kode dan menghasilkan gim yang berdiri sendiri tanpa ada hubungannya dengan mesin - Anda akan memasukkan semua gim dalam gim Anda.
Matsemann

4

Hanya orang, kelompok orang, atau aktivitas yang memiliki kode dapat mengubah lisensi sendiri.

Jika kode itu milik Anda, Anda dapat mengubah lisensi setiap kali Anda inginkan, memutuskan untuk dibayar atau tidak, Anda dapat melakukan apa yang Anda inginkan, tetapi jika kode itu bukan milik Anda, Anda tetap menggunakan lisensi jika Anda ingin menghindari masalah; masalah besar.

Pemilik juga dapat menolak untuk menerima untuk dibayar, ini adalah situasi seperti yang Anda miliki dengan paten, jika Anda dapat membuktikan bahwa Anda memiliki kode tidak berarti Anda meletakkannya di pasar untuk mendapatkan uang, banyak kali paten atau lisensi dianggap memaksa pasar atau pengguna untuk tinggal di ruang terbatas.

Jawabannya adalah tidak dan satu-satunya cara untuk mengubah lisensi berharap pemiliknya akan melakukan itu.


Cukup bagus sebagai jawaban umum - namun dalam hal ini patut mereka menerima pembayaran untuk salinan kode dengan lisensi yang berbeda. +1 (Saya juga memberikan jawaban yang lebih umum :)).
Jonathan Dickinson

4

Idenya sederhana - jika perusahaan menulis kode, maka ia memiliki semua hak, dan dengan demikian dapat memberikannya kepada beberapa pihak di bawah lisensi GPL, kepada orang lain di bawah lisensi komersial, dan kepada orang lain mereka dapat memberikannya sebagai hadiah, atau sewa, atau apa pun yang mereka inginkan.

Fakta bahwa mereka memberikan kode kepada beberapa pihak di bawah GPL, menempatkan pembatasan GPL pada pihak tersebut , tetapi tidak dapat menempatkan batasan pada pemilik kode .

Hanya, jika pemilik kode yang digunakan dalam perangkat lunak mereka beberapa kode GPL pihak ke-3 , ditulis dan dimiliki oleh orang lain, maka seluruh proyek mereka dikunci ke dalam GPL selamanya (atau sampai mereka menghapus kode GPL pihak ke-3 ini atau mendapatkan Lisensi GPL untuk itu). Harap dicatat bahwa hal yang sama berlaku untuk no-GPL, mesin komersial 100% - jika mereka memasukkan beberapa kode GPL, mereka melanggar GPL, tidak memiliki hak untuk menjual lisensi komersial dan Anda tidak memiliki hak untuk membeli lisensi tersebut.

Jadi, jika semua kode dalam "Mesin Cafu" ditulis oleh staf Cafu, Anda tidak memiliki masalah dengan GPL. Jika Anda mendapatkan lisensi komersial dari Cafu, maka lisensi GPL tidak berlaku untuk Anda sama sekali.


Jawaban ini semuanya baik, kecuali tampaknya menganggap bahwa poster asli adalah bagian dari staf Cafu dan memiliki kode, yang tampaknya tidak demikian.
Kylotan

Saya tidak menganggap itu. Aku ingin tahu apa yang membuatmu berpikir begitu.
Sandman4

Paragraf terakhir Anda cukup banyak mengatakan itu, karena itu menyamakan "staf Cafu" menjadi "Anda".
Kylotan

@Kylotan Mengedit paragraf terakhir untuk membuatnya sedikit lebih jelas. Tidak bisa mengatakannya dengan benar, semua orang dipersilakan untuk mengucapkannya dengan lebih baik.
Sandman4

Ini adalah jawaban terbaik. Saya telah mengedit paragraf terakhir, tetapi tidak memiliki edit privasi di situs ini, jadi harus menunggu persetujuan.
rjmunro

2

Ada satu cara untuk "melarikan diri" GPL atau (praktis) lisensi lain. Lakukan implementasi ruang bersih.

Pekerjakan dua kelompok orang. Tugas kelompok pertama adalah mempelajari materi asli secara mendetail dan mendeskripsikannya. Kelompok kedua, yang tidak pernah melihat materi asli, akan menulis implementasi baru berdasarkan deskripsi.

Beginilah cara BIOS pada klon PC asli dibuat; BIOS adalah satu-satunya bit yang IBM tidak membiarkan orang lain menyalin.

Ini tidak berarti bahwa Anda aman dari tuntutan hukum .. paten dan omong kosong "look and feel" masih ada di luar sana, dan setidaknya di AS, siapa pun dapat menuntut siapa pun tanpa alasan tertentu (atau setidaknya tampaknya demikian. .)


1

Mengenai pertanyaan tentang mesin Gempa: kode dapat dirilis di bawah GPL dan juga di bawah lisensi lainnya. Gempa berlisensi Valve dengan membayar uang kepada iD. Kemudian, semua orang di dunia diberikan Lisensi GPL untuk menggunakan kode sumber Gempa. Ketika iD GPL menggunakan mesin, mereka tidak secara surut mengubah lisensi lain menjadi GPL; itu tidak mungkin. Bahkan, iD masih dapat melisensikan mesin Quake di bawah lisensi yang berbeda jika mereka mau, karena mereka memiliki hak cipta asli.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.