LGPL 2.1 vs LGPL 3.0 Keuntungan dan Kerugian

32

Dari apa yang saya baca, LGPL 3.0 memungkinkan Anda untuk menggunakan lisensi bersama dengan lisensi lain, lebih permisif tentang itu (Bahkan tidak yakin tentang itu).
Dari https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility dikatakan bahwa itu tidak kompatibel dengan GPLv2, sementara LGPL 2.1 kompatibel dengannya. Itu agak bertentangan dengan yang saya baca ...

Jadi, tahukah Anda apa sebenarnya kelebihan dan kekurangan LGPL 3.0 dibanding LGPL 2.1?
Salah satu kelemahannya adalah tidak kompatibel dengan GPLv2.

Lilian A. Moraru
sumber

Jawaban:

22

Saya pikir Anda harus mulai dengan maksud dari LGPL 2.1 dan LGPL 3. LGPL 2.1 dirancang untuk menjadi lisensi yang sebagian besar ditulis dalam bahasa Inggris yang akan memberikan panduan kepada programmer tentang apa yang dapat mereka lakukan dengan perangkat lunak. Ini umumnya lebih jelas daripada GPL 2 karena menghubungkan pelabuhan aman. Salah satu ketidakpastian utama mengenai GPL adalah apakah pemegang hak cipta bahkan memiliki minat dalam mengendalikan program apa yang dapat ditautkan ke perpustakaan yang memiliki hak cipta. LGPL melepaskan ketidakpastian ini dengan menyediakan pelabuhan yang aman terkait penautan.

Kelemahan utama dari pendekatan ini adalah bahwa ia cenderung tergantung pada konsep hukum AS dan sejenisnya, dan definisi yurisdiksi. Apa yang mungkin merupakan karya turunan dalam satu yurisdiksi mungkin tidak di negara lain dan ini membuat perbedaan yang signifikan ketika perangkat lunak dibundel dan didistribusikan, dan izin diberikan untuk agregasi tetapi bukan derivasi. LGPL memiliki lebih sedikit masalah di sini daripada GPL tetapi merupakan ketidakpastian yang signifikan terutama dalam GPL yang merupakan lisensi pendamping.

Untuk menyelesaikan beberapa masalah ini dan juga memberikan kontrol yang lebih baik atas hak-hak yang tepat, seri lisensi GPL v3 dirancang (LGPL 3 adalah bagian dari itu). Ini berusaha untuk menghilangkan definisi yurisdiksi dari derivasi dan agregasi dan menulis ulang bahasa sehingga memberikan panduan untuk pengacara daripada programmer. Lisensi jauh lebih kompleks, jauh menggunakan struktur lebih mudah diakses oleh pengacara daripada programmer, dan belum tentu kurang jelas. [1] Namun mereka berhasil sedikit banyak dalam menyiasati definisi yurisdiksi.

Jadi tradeoff pertama adalah apakah Anda ingin menulis lisensi Anda sebagai salah satu yang audiens adalah programmer vs audiens adalah pengacara dan yang kedua adalah seberapa peduli Anda tentang definisi internasional di berbagai yurisdiksi.

Namun yang terakhir adalah bahwa seri lisensi GPL v3 telah memaksa kompatibilitas dengan AGPL v3, yang berarti bahwa kode dapat diambil dari program GPL dan memiliki batasan tambahan dari AGPL ditambahkan sedemikian rupa sehingga ini tidak dapat dikontribusikan kembali di bawah lisensi yang sama. Ini adalah masalah dengan penyalinan LGPL -> GPL juga pada kedua lisensi sehingga mungkin merupakan masalah yang relatif kecil.

Saya sendiri, saya lebih suka lisensi GPL v2 dan LGPL 2.1 karena lebih sederhana dan saya pikir ada sedikit kesempatan untuk terjadi kesalahpahaman besar (kesalahpahaman kecil mungkin lebih umum), tetapi ini adalah preferensi pribadi saya sendiri, dan milikmu mungkin berbeda.

[1] Sebagai contoh, jika Anda membaca lisensi BSD 2-klausa dan GPL v3 (dan dengan ekstensi LGPL b3) secara sempit, lisensi ini tidak kompatibel karena lisensi BSD tidak secara eksplisit menyebutkan sub-lisensi tidak seperti lisensi MIT dan oleh karena itu pada Setidaknya beberapa pengacara seperti Larry Rosen tidak percaya lisensi seperti itu diberikan. Oleh karena itu Anda tidak bisa hanya mengambil kode BSD dan menandainya sebagai GPL v3 tanpa benar-benar menambahkan perubahan yang sesuai dengan hak cipta. Namun semua orang setuju bahwa lisensi BSD dan GPL v3 kompatibel. Ini menimbulkan masalah signifikan dalam menafsirkan lisensi dan gambar garis.

Chris Travers
sumber
Jadi masalah GPLv3 yang menentang DRM juga ada di LGPLv3? @ MartinBeckett Saya sudah membaca pertanyaan itu sebelum memposting pertanyaan saya dan tidak terlihat seperti seseorang yang benar-benar menjawab pertanyaan itu.
Lilian A. Moraru
@ LilianA.Moraru Sepertinya begitu bagiku. Masalah yang lebih besar adalah bahwa jika Anda memberikan izin tambahan untuk mengabaikan bagian itu di bawah dua lisensi ini, mereka dapat disublisensikan oleh perantara karena itu adalah sifat dari izin tambahan dalam lisensi ini.
Chris Travers
(Tentu saja jika lisensi BSD baik adalah kompatibel dan tidak memungkinkan sublicensing, maka saya tidak melihat alasan bahwa izin tambahan non-removable tidak dapat ditambahkan ke perangkat lunak seperti itu oleh penulis asli.)
Chris Travers
@ LilianA.Moraru - itu sebabnya saya tidak menandai sebagai dupe, tetapi ditambahkan ke diskusi dan akan berguna bagi orang yang mencari
Martin Beckett
1
Singkatnya, dari kata-kata Anda: "Saya sendiri, saya lebih suka lisensi GPL v2 dan LGPL 2.1 karena lebih sederhana dan saya kira ada sedikit peluang untuk terjadi kesalahpahaman besar .." . Saya pikir itu takeaway utama saya dari ini.
Gabriel Staples