Relicense BSD 2/3-clause code เป็น GPL


11

สมมติว่าฉันปล่อยซอร์สโค้ดภายใต้ไลเซนส์ BSD ใหม่ อนุญาตให้บุคคลอื่นนำรหัสนี้ทำการแก้ไขและแจกจ่ายภายใต้เงื่อนไขของ GPL หรือไม่ จากวิกิพีเดีย :

ใบอนุญาตซอฟต์แวร์ฟรีที่ใช้กันทั่วไปส่วนใหญ่เช่นใบอนุญาต MIT / X ดั้งเดิมใบอนุญาต BSD (ในรูปแบบ 2 ข้อปัจจุบัน) และ LGPL เป็น "รองรับ GPL" นั่นคือรหัสของพวกเขาสามารถรวมกับโปรแกรมภายใต้ GPL โดยไม่มีข้อขัดแย้ง (ชุดค่าผสมใหม่จะมี GPL ที่นำไปใช้กับทั้งหมด) อย่างไรก็ตามลิขสิทธิ์ซอฟต์แวร์โอเพนซอร์ซ / โอเพนซอร์สบางตัวไม่รองรับ GPL

ฉันสมมติว่านี่หมายความว่าเราสามารถกำหนดรหัสลิขสิทธิ์ใหม่ BSD ให้ GPL ได้ไหม


ฉันถามคำถามที่คล้ายกันใน Open Source Stack Exchange: opensource.stackexchange.com/questions/4837/…ฉันรู้สึกว่าเรายังไม่พบคำตอบที่สรุป ทั้งหมดที่เรามีคือการเดาโหล มันจะเป็นการดีถ้าได้ยินจากทนายความที่แท้จริงหรือแม้แต่ FSF เอง
แทนเนอร์ Swett

คำตอบ:


8

นั่นเป็นคำถามที่น่าสนใจ ข้อจำกัดความรับผิดชอบ: IANAL

ส่วนที่ยกมาหมายถึงรหัสใบอนุญาต BSD สามารถนำมาใช้ในโครงการซึ่งเป็น GPL ได้รับใบอนุญาต

ในทางกลับกันคุณยังคงเป็นผู้ถือลิขสิทธิ์ของรหัสของคุณ ใบอนุญาตของรหัสเดิมไม่สามารถเปลี่ยนแปลงได้หากไม่ได้รับอนุญาตจากคุณ ใบอนุญาต BSD ยังต้องการอย่างชัดเจน:

  • การเผยแพร่ซอร์สโค้ดจะต้องเก็บรักษาประกาศลิขสิทธิ์ข้างต้นรายการเงื่อนไขนี้และข้อจำกัดความรับผิดชอบต่อไปนี้
  • การแจกจ่ายซ้ำในรูปแบบไบนารีจะต้องทำซ้ำประกาศลิขสิทธิ์ข้างต้นรายการเงื่อนไขนี้และข้อจำกัดความรับผิดชอบต่อไปนี้ในเอกสารประกอบและ / หรือวัสดุอื่น ๆ ที่มาพร้อมกับการกระจาย

ดังนั้นใบอนุญาต BSD ไม่สามารถถูกแยกออกจากรหัสของคุณได้

เพื่อที่จะสามารถปล่อยรหัสที่รวมกันภายใต้ GPL ผู้เขียนคนอื่น ๆ จะต้องทำการ"สนับสนุนอย่างมีนัยสำคัญ"กับรหัส มันคลุมเครือในสิ่งที่มันหมายถึง แต่มักจะหมายถึงอย่างน้อยเพิ่มคุณสมบัติที่สำคัญใหม่ไม่เพียง แต่แก้ไขเล็กน้อย

สถานการณ์ที่คล้ายกัน: SFLC เสร็จสิ้นการสอบทานของไดร์เวอร์ Atheros ไร้สายสำหรับ Linux, เผยแพร่คู่มือสำหรับนักพัฒนา

คำถามที่เกี่ยวข้องกับ SO: /programming/821608/relicensing-a-bsd-library


ดังนั้นเงื่อนไข BSD จะต้องถูกเก็บรักษาไว้ นั่นชัดเจน แต่สามารถเพิ่มเงื่อนไขเพิ่มเติมลงในรายการพูดประโยคที่ทำให้เหมือนการเปลี่ยนแปลงของคุณกับคนอื่นได้ GPL
Brecht Machiels

1
@Brecht: หากว่ามันเป็นสิ่งใหม่ที่ตกอยู่ในฐานะงานแยกต่างหากภายใต้งานลิขสิทธิ์ หากเป็นการเปลี่ยนแปลงเล็กน้อยหรือการปรับตัวก็ไม่ได้แยกจากกันดังนั้นจึงไม่สามารถให้สิทธิ์ใช้งานอีกครั้งได้
vartec

6

จากประสบการณ์ของฉันไม่คุณไม่ "อนุญาตให้ใช้สิทธิ์อีกครั้ง" เพราะคุณไม่ได้เป็นเจ้าของลิขสิทธิ์ คุณมีใบอนุญาตจากผู้เขียนต้นฉบับเท่านั้น

สิ่งที่คุณสามารถทำได้คือใช้งานที่มีลิขสิทธิ์ในงานที่ได้รับมา แต่คุณต้องปฏิบัติตามเงื่อนไขของใบอนุญาตซึ่งในกรณีของ BSD / MIT กล่าวว่าคุณต้องเก็บประกาศเกี่ยวกับลิขสิทธิ์และใบอนุญาตไว้ในรหัสที่คุณใช้ .

ในทางปฏิบัติหากมีคนใช้ห้องสมุด BSD ของคุณในแอปพลิเคชัน GPL สิ่งที่คุณเห็นในแอปพลิเคชันของพวกเขาคือ:

  • สำเนาใบอนุญาต GPL ในไฟล์ข้อความ
  • ไฟล์แยกต่างหากที่อ้างว่าโปรแกรมทั้งหมดได้รับอนุญาตภายใต้ GPL (และชี้ไปที่ไฟล์ไลเซนส์ GPL สำหรับรายการ) แต่จากนั้นมีส่วนต่าง ๆ ด้านล่างส่วนหัวที่ระบุว่า "ไลบรารี่ XYZ ได้รับอนุญาตภายใต้ลิขสิทธิ์ BSD" จากนั้นแสดง ลิขสิทธิ์ของ XYZ ก็เช่นกัน นี่คือตัวอย่างของประเภทของไฟล์นี้, จากโปรแกรมจีพีที่ผมเขียน

หากมีคนเอาโค้ดหรือไฟล์จากงานของคุณและรวมไว้ในแอปพลิเคชัน GPL ของพวกเขาและจากนั้นแก้ไขคุณอาจเห็นพวกเขารวมทั้ง GPL และส่วนหัว BSD ในไฟล์ ไฟล์นี้จะมีผู้แต่งสองคน - คุณและพวกเขา จะต้องแสดงทั้งลิขสิทธิ์

โปรดจำไว้ว่า GPL นั้นเป็นไวรัสดังนั้นจึงใช้ได้กับงานทั้งหมด แต่ BSD / MIT จะใช้กับรหัสที่ถูกต้องเท่านั้น


1
สันนิษฐานว่าคุณสามารถเชื่อถือได้งานที่ใบอนุญาตอนุญาตแม้ว่าคุณจะไม่ได้เป็นเจ้าของลิขสิทธิ์ดั้งเดิม BSD จะปรากฏขึ้นเพื่ออนุญาตสิ่งนี้
อาร์มันด์

2

ข้อจำกัดความรับผิดชอบ: IANAL

ไม่มีข้อห้ามในใบอนุญาต MIT หรือ BSD กับการ relicensing เนื่องจากสิทธิ์การใช้งาน MIT หรือ BSD ไม่เพิ่มข้อ จำกัด นอกเหนือจากสิ่งที่มีอยู่แล้วใน GPL (บิตลิขสิทธิ์และการรับประกันอยู่ในข้อ 1 ของข้อกำหนดและเงื่อนไขของ GPLv2) ฉันไม่เห็นปัญหาใด ๆ

ใบอนุญาต BSD เก่ามีส่วนโฆษณาที่ไม่ได้เล่นกับ GPL


2
ฉันไม่ใช่ทนาย แต่ฉันคิดว่านี่อาจเป็นข้อมูลที่ผิด มีเพียงผู้ถือลิขสิทธิ์เท่านั้นที่สามารถเชื่อถืองานที่มีลิขสิทธิ์ได้ เหตุผลที่ BSD เข้ากันได้กับ GPL คือรหัสที่ได้รับอนุญาต BSD สามารถใช้ในการทำงานของ GPL ได้ แต่รหัส BSD ดั้งเดิมยังคงได้รับอนุญาตภายใต้ BSD เป็นส่วนหนึ่งของงานที่ได้รับมันยังได้รับอนุญาตภายใต้ GPL แต่คุณต้องเก็บลิขสิทธิ์ดั้งเดิมไว้เหมือนเดิม
Scott Whitlock

3
@Scott BSD กล่าวว่าคุณต้องเก็บรักษาคำสั่งของ BSD อย่างไรก็ตามมันไม่ได้ จำกัด การเพิ่มพวกเขาดังนั้นบางทีนี่อาจเป็นการตีความที่สมเหตุสมผล
อาร์มันด์

2
opensource.org/licenses/mit-license.phpระบุอย่างชัดเจนว่าใครก็ตามที่ได้รับสำเนาของรหัสอาจอนุญาตให้ใช้สิทธิ์ซอฟต์แวร์ต่อไปได้
Frank Shearar

2

ขออภัยที่คุณส่วนใหญ่ผิด

การออกใบอนุญาตและกรรมสิทธิ์เป็นสองสิ่งที่แตกต่างกัน คุณไม่สามารถให้สิทธิ์สิ่งที่คุณไม่ได้เป็นเจ้าของซ้ำได้ ไม่ใช่การตัดสินใจของคุณ

เจ้าของเป็นผู้ถือลิขสิทธิ์ไม่ใช่คุณ ดังนั้นคุณจะไม่สามารถอนุญาตงานของพวกเขาอีกครั้ง ในขณะที่คุณไม่ได้เป็นเจ้าของผลงานของพวกเขาคุณก็แค่ให้สิทธิ์ใช้งาน นั่นคือเจ้าของอนุญาตให้คุณใช้ เขา / เธอไม่ได้เป็นเจ้าของคุณ

มันจะไร้สาระที่จะคิดว่าผู้เขียนต้นฉบับ (หรือใครก็ตามที่ได้รับรหัส BSD) จะต้องติดตาม GPL เพื่อใช้รหัสต้นฉบับเพียงเพราะคุณตัดสินใจใช้รหัสของพวกเขาในโครงการ GPL

อย่างไรก็ตามคุณสามารถอนุญาตให้ใช้สิทธิ์ในรหัส GPL Your Own และจากนั้นส่วนนั้นไม่ใช่ส่วนดั้งเดิมอยู่ภายใต้ GPL ในฐานะผู้เขียนต้นฉบับไม่ได้นำงาน GPL มาใช้เพราะคุณเป็นผู้ออกใบอนุญาตเท่านั้นและไม่ได้เป็นเจ้าของงานต้นฉบับ

คุณสามารถใช้รหัสลิขสิทธิ์ BSD ในรหัส GPL ของคุณ (เนื่องจาก BSD อนุญาตให้คุณทำสิ่งนี้ตราบใดที่คุณปฏิบัติตามข้อกำหนด BSD และหนึ่งคือไม่ต้องลบใบอนุญาตจากสำเนา) แต่คุณไม่สามารถให้สิทธิ์ทั้งหมดอีกครั้งได้ คุณไม่ได้เป็นเจ้าของมัน ไม่ใช่การตัดสินใจของคุณอีกครั้ง อย่างไรก็ตามหากคุณต้องการใช้รหัส GPL ของบุคคลที่สามกับรหัส BSD จากนั้นปัญหาจะได้รับการปฏิบัติตามส่วน GPL


1
ฉันเชื่อว่าข้อความข้างต้น "คุณไม่สามารถให้สิทธิ์สิ่งที่คุณไม่ได้เป็นเจ้าของซ้ำ" ได้นั้นไม่ถูกต้องใบอนุญาตจำนวนมากให้สิทธิ์ในงานลิขสิทธิ์ที่ได้รับอนุญาตช่วง บางครั้งผู้ที่ได้รับอนุญาตช่วงก็ยัง จำกัด สิทธิ์ในการอนุญาตให้ใช้สิทธิ์เพิ่มเติมอีก แต่ไม่เสมอไป ข้อมูลเฉพาะนั้นขึ้นอยู่กับสถานการณ์และคุณได้รับสิทธิ์ในการทำเช่นนั้นหรือไม่
คาเมรอน

นอกจากนี้หากคุณรวมใบอนุญาต BSD ในสำเนาของคุณก็หมายความว่ารหัสยังคงเป็น BSD และไม่สามารถอยู่ภายใต้ GPL ได้ในเวลาเดียวกัน
warvariuc
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.