Dapatkah saya menggunakan perangkat lunak GPL dalam aplikasi komersial

204

Saya punya 3 pertanyaan tentang GPL di sini:

  1. Jika saya menggunakan perangkat lunak GPL dalam aplikasi saya, tetapi tidak memodifikasi atau mendistribusikannya, apakah saya harus merilis aplikasi saya di bawah GPL?

  2. Bagaimana jika saya memodifikasi beberapa perangkat lunak yang digunakan aplikasi saya. Kemudian saya harus merilis aplikasi saya di bawah GPL, atau dapatkah saya menyediakan perangkat lunak yang dimodifikasi di bawah persyaratan GPL.

  3. Dan bagaimana jika saya menggunakan perangkat lunak GPL, tetapi tidak memodifikasinya, dapatkah saya mendistribusikannya dengan aplikasi saya?

Contoh kasus saya adalah, saya memiliki kerangka kerja PHP yang saya gunakan pustaka GeSHi untuk menyorot beberapa output.

  1. Karena GeSHi adalah GPL, apakah kerangka kerja saya harus GPL?

  2. Dapatkah saya memodifikasi GeSHi untuk kasus penggunaan khusus aplikasi saya jika saya memberikan modifikasi kembali ke pengelola GeSHi?

  3. Bisakah saya mendistribusikan ulang kerangka kerja saya dengan GeSHi?

Petah
sumber
10
Komersial! = Kepemilikan
Gerstmann
2
Hanya ingin tahu, apa artinya mendistribusikan dalam hal ini? Jika program yang dimaksud adalah, katakanlah, firmware di alat yang tidak dapat disentuh oleh siapa pun kecuali perusahaan yang menjual alat, apakah itu "distribusi"?
Wes Miller
2
Ya distribusi is. Itu sebabnya Anda menemukan hal-hal seperti router ADSL di mana kode sumbernya (harus) tersedia untuk diunduh. Pemasok bereputasi menyediakan sumber karena persyaratan lisensi mengharuskannya. Hal yang sama berlaku untuk kotak NAS, kamera IP dan banyak gadget lainnya.
cepat_now
2
@quickly_now - itulah sebabnya hal-hal Tivoisation ditambahkan di GPLv3, jadi jika Anda menggunakan kode GPLv2 dalam suatu alat, Anda tidak benar-benar harus melepaskannya, tetapi jika Anda menggunakan kode GPLv3, Anda melakukannya. Ingatlah bahwa Tivo menggunakan kode GPL dan tidak pernah merilis modifikasi mereka, yang mengecewakan banyak orang dan sebagian mengarah ke GPLv3.
Scott Whitlock

Jawaban:

177

Jika saya menggunakan perangkat lunak GPL dalam aplikasi saya, tetapi tidak memodifikasi atau mendistribusikannya, apakah saya harus merilis aplikasi saya di bawah GPL?

JAWABAN: Pertanyaan Anda agak ambigu. Dua kasus:

(a) Jika Anda tidak mendistribusikan APLIKASI ANDA, maka jawabannya adalah TIDAK, karena Anda tidak mendistribusikan aplikasi Anda. Misalnya jika itu hanya untuk penggunaan internal di perusahaan Anda, maka Anda tidak memiliki kewajiban untuk melakukan apa pun.

(B) Jika Anda mendistribusikan APLIKASI ANDA, dan Anda menggunakan sesuatu GPL sebagai bagian dari aplikasi Anda (bahkan jika hanya menghubungkan saat run-time ke perpustakaan) - dan bahkan jika Anda tidak mengenakan biaya uang - dan bahkan jika Anda tidak mengubah bahwa GPL s / w dengan cara apa pun - maka Anda HARUS membuat sumber APLIKASI ANDA tersedia.

Menyediakan sumber tidak berarti mengunduh. Mungkin Anda harus mendapatkan permintaan tertulis dan Anda mengirim fotokopi daftar (lihat komentar: Anda tidak dapat benar-benar mengirim daftar. Ini terlalu dibesar-besarkan untuk maksud) . Anda diizinkan untuk membebankan biaya penanganan / penyalinan yang "masuk akal". Tetapi Anda tidak dapat lepas dari kewajiban untuk membuat kode sumber Anda sendiri tersedia.

Bagaimana jika saya memodifikasi beberapa perangkat lunak yang digunakan aplikasi saya. Kemudian saya harus merilis aplikasi saya di bawah GPL, atau dapatkah saya menyediakan perangkat lunak yang dimodifikasi di bawah persyaratan GPL.

JAWABAN: Lihat di atas. Jika Anda menggunakan GPL s / w, maka Anda harus membuat kode sumber Anda tersedia. Ini termasuk kode GPL yang dimodifikasi.

Dan bagaimana jika saya menggunakan perangkat lunak GPL, tetapi tidak memodifikasinya, dapatkah saya mendistribusikannya dengan aplikasi saya?

JAWABAN: Lihat di atas. Anda dapat mendistribusikannya (kode GPL), asalkan Anda membuat sumber Anda tersedia.

Karena GeSHi adalah GPL, apakah kerangka kerja saya harus GPL?

JAWABAN: Jika Anda mendistribusikan kerangka kerja Anda, maka YA.

Dapatkah saya memodifikasi GeSHi untuk kasus penggunaan khusus aplikasi saya jika saya memberikan modifikasi kembali ke pengelola GeSHi?

JAWABAN: Anda bisa jika mau. Anda tidak harus melakukannya. Anda dapat memodifikasinya, tetapi ketika Anda mendistribusikan aplikasi Anda, Anda wajib membuat sumber Anda tersedia dan juga sumber untuk modifikasi yang Anda buat ke perpustakaan.

Bisakah saya mendistribusikan ulang kerangka kerja saya dengan GeSHi?

JAWABAN: Anda bisa jika mau. Jika aplikasi Anda tidak didistribusikan dengan kode GPL dan Anda membuat pengguna mengunduhnya secara terpisah untuk menggunakannya, maka kasing Anda sedikit lebih spesial dan mungkin memancing beberapa argumen, tetapi prinsip yang sama kemungkinan besar pada akhirnya akan berlaku: Anda harus buat sumber Anda tersedia.

Jika Anda ingin menghindari masalah ini, maka Anda perlu menggunakan hal-hal dengan lisensi yang berbeda atau paling tidak LGPL yang akan memungkinkan pemanggilan run-time perpustakaan tanpa penyebaran virus dari kondisi GPL kembali ke kode Anda.

Jika ragu Anda membutuhkan nasihat hukum. Setiap saran yang Anda dapatkan di sini (dari saya atau orang lain) harus diperlakukan dengan cukup hati-hati. Hanya seorang pengacara yang dapat memberi Anda nasihat hukum yang tepat.

dengan cepat_now
sumber
67
Harus mencintai GPL: Paksa segala sesuatu yang menyentuhnya menjadi open source
TheLQ
31
Hanya sebuah catatan: itu mungkin akan melanggar lisensi untuk memasok kode sumber sebagai fotokopi. Sebagaimana tercantum dalam lisensi: "Kode sumber untuk suatu karya berarti bentuk karya yang disukai untuk membuat modifikasi."
mipadi
26
@ Petah: GPL seperti virus: ia menginfeksi semua yang disentuhnya. Jika Anda menyediakan antarmuka generik dan Anda mengizinkan pengguna untuk menginstal berbagai komponen pilihan mereka, Anda DAPAT pergi dengan tidak terkontaminasi oleh GPL. NAMUN, seandainya Anda memberikan barang-barang Anda dan orang lain akan menyatukan 2 ... maka barang-barang Anda akan tersentuh oleh GPL. Anda memiliki situasi yang sangat sulit tidak peduli bagaimana Anda mencoba dan bergerak-gerak di sekitarnya.
cepat_now
10
Jika pertanyaan telah diajukan beberapa kali, lalu mengapa ini bukan duplikat?
11
Perhatikan bahwa memungut biaya penanganan yang "masuk akal" bukanlah pencegah yang kuat bagi orang yang tertarik pada kode sumber Anda; penerima pertama dari kode sumber Anda dapat memilih untuk secara hukum memberi orang lain dengan kode sumber Anda.
Brian
12

Hal ini tampaknya sangat tidak setuju jika Anda menggunakannya di situs web, daripada mendistribusikan kembali yang dapat dieksekusi.

Anda dapat menyalin, mendistribusikan, dan memodifikasi perangkat lunak selama Anda melacak perubahan / tanggal dalam file sumber dan menyimpan modifikasi di bawah GPL. Anda dapat mendistribusikan aplikasi Anda menggunakan perpustakaan GPL secara komersial, tetapi Anda juga harus memberikan kode sumber. GPL v3 mencoba untuk menutup beberapa celah di GPL v2.

Secara khusus

Jika Anda mendistribusikan pustaka ini dalam executable, Anda harus mengungkapkan kode sumber Anda dengan menyediakannya di samping distribusi Anda atau daftar cara yang dapat diakses (URL, salinan fisik) untuk mendapatkan sumber selama 3 tahun. Tidak berlaku jika Anda melayani melalui portal web.

https://tldrlegal.com/license/gnu-general-public-license-v3-%28gpl-3%29

Maslow
sumber
2
Bisakah Anda mengembangkan ini? Saat ini sedikit kalimat Anda sendiri dan teks dari tldrlegal. Apa perbedaan penggunaan GPL di situs web dengan menggunakannya dalam aplikasi yang berdiri sendiri?
Situs web biasanya tidak mendistribusikan perangkat lunak (tetapi hanya menyediakan layanan)
Basile Starynkevitch
3
ASIDE: ada lisensi AGPL yang mencoba untuk menjalankan GPL sebagai layanan: tldrlegal.com/license/…
kbrock
Jika pustaka GPL yang dimaksud ditulis dalam katakanlah HTML, javascript, dan CSS, dan kode pustaka "didistribusikan" oleh server ke browser web orang yang mengunjungi situs web, saya ingin tahu apakah itu dapat menyebabkan HTML, javascript, lainnya, dan kode CSS untuk menjadi GPL. Satu hal yang menarik adalah bahwa kode ini sudah akan "tersedia" hanya dengan melihat sumber halaman web, meskipun mungkin tidak dalam bentuk yang disukai. Namun, bahkan kemudian, kode sisi server Anda tidak didistribusikan, dan karena itu saya bayangkan tidak perlu menjadi GPL.
still_dreaming_1
2

Penafian : Saya bukan pengacara dan saya belum pernah membaca versi GPL, jadi jawaban ini mungkin tidak akurat secara hukum.

Jika Anda merilis / mendistribusikan perangkat lunak yang mengandung komponen GPL (seperti perpustakaan yang terhubung secara statis), perangkat lunak Anda harus ditanggung oleh GPL. (Ini kesan yang diberikan untuk versi 2; versi 3 mungkin berbeda.)

Jika Anda merilis / mendistribusikan perangkat lunak menggunakan pustaka LGPL, perangkat lunak Anda tidak perlu dicakup oleh GPL, tetapi pustaka harus mempertahankan LGPL.

Modifikasi komponen [L] GPL menyarankan kontribusi kembali ke pencipta / pemelihara. Saya tidak jelas tentang bagaimana hal itu memengaruhi lisensi produk Anda.

Agi Hammerthief
sumber
-4

Kita dapat memaksakan aturan semacam itu di hutan, tetapi dalam kehidupan nyata (yuridis negara atau negara) itu tergantung pada siapa, siapa, kapan dan apa.

Masalah hukum (hukum) muncul ketika Anda melakukan tindakan mendistribusikan program GPL sebagai biner atau pustaka pada OS non GPL. Program GPL menginfeksi dan menginfeksi orang tua dan anak tersebut bukan proses GPL (hak milik dan bahkan lisensi open source lainnya) dari perspektif hukum. Menginfeksi berarti program turunan melanggar GPL, terinfeksi berarti program GPL melanggar lisensi sendiri. Tidak ada masalah ketika Anda mengkompilasi sumber GPL didistribusikan sebagai tindakan individu (orang, org, perusahaan).

bismark
sumber
11
ini tampaknya hanya mengulangi poin yang dibuat dan dijelaskan dalam jawaban sebelumnya yang telah diposting 4 tahun yang lalu
agas