ไลบรารีไลเซนส์ GPLv2 ใด ๆ สามารถใช้ในแอปพลิเคชันอินทราเน็ตภายในของ บริษัท ได้หรือไม่


13

ฉันกำลังสร้างแอปพลิเคชันภายในสำหรับ บริษัท ที่ฉันทำสัญญากับ เราต้องการใช้ไลเซนส์ไลบรารี GPLv2ในแอปพลิเคชันนี้ บางจุด

  1. แอปพลิเคชั่นนี้จะใช้ภายในขอบเขตของ บริษัท และไม่สามารถใช้งานเพื่อสาธารณะได้ ใช้สำหรับ บริษัท ภายในเท่านั้น
  2. มันจะไม่ถูกขายตลอดไป !! . ดังนั้นไม่มีเงินจะทำโดยตรงจากการขายรหัส มันไม่ใช่ผลิตภัณฑ์
  3. แอปพลิเคชั่นมีสองรูปแบบ
    • รูปแบบดั้งเดิมของมันซึ่งเป็นคอนโซลที่ใช้ exe (ซึ่งใช้ไลบรารี GPL) และ
    • การใช้งานผ่านเว็บอินเตอร์เฟสที่เรียกใช้ไฟล์ปฏิบัติการได้
  4. ซอร์สโค้ดจะยังคงเป็นรหัสต้นฉบับ (ใช้โดย บริษัท เท่านั้น) และมีความเหมาะสม

ฉันได้อ่านคำถามมากมายเกี่ยวกับเรื่องนี้ (เรื่องที่ปิดเป็นหัวข้อนอกเรื่องและอีกเรื่องที่ไม่ได้ทำเครื่องหมายจากโปรแกรมเมอร์ ) แต่ฉันมีเวลาเข้าใจยากว่าการตีความใบอนุญาตของฉันถูกต้องหรือไม่

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

คำถามต่อไปนี้จากคำถามพบบ่อย GNUดูเหมือนจะสนับสนุนความคิดของฉัน

GPL ต้องการให้มีการโพสต์ซอร์สโค้ดของเวอร์ชันที่แก้ไขแล้วสู่สาธารณะหรือไม่?

GPL ไม่ต้องการให้คุณปล่อยเวอร์ชั่นที่แก้ไขหรือส่วนหนึ่งส่วนใดของมัน คุณมีอิสระในการแก้ไขและใช้งานแบบส่วนตัวโดยไม่ต้องปล่อยให้เป็นอิสระ สิ่งนี้ใช้กับองค์กร (รวมถึง บริษัท ) ด้วยเช่นกัน องค์กรสามารถสร้างเวอร์ชันที่แก้ไขและใช้งานภายในได้โดยไม่ต้องเผยแพร่นอกองค์กร

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

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

ไลบรารีไลเซนส์ GPLv2 ใด ๆ สามารถใช้ในแอปพลิเคชันอินทราเน็ตภายในของ บริษัท ได้หรือไม่


2
นี่เป็นคำถามทางกฎหมายสำหรับทนายความของ บริษัท หรือหัวหน้ากงสุลในการตัดสินใจ
hotpaw2

1
@ hotpaw2 - ข้อเสนอแนะของคุณมีข้อดีอยู่แล้ว & เป็นแนวทางที่ดีที่สุดที่สามารถให้ได้มันทำให้ฉันยุ่งเหยิงจริง ๆ กับนักพัฒนาทั้งหมดในโลกคำถามเหล่านี้ยังคงถูกถามและยังคงไม่ชัดเจนในบางกรณีฉันเดาว่า แต่อย่างจริงจังแม้ว่าความรู้สึกของฉันคือว่าใบอนุญาตไม่ชัดเจนเกี่ยวกับบางแง่มุมตอนนี้หากนักพัฒนาที่ใช้ซอฟต์แวร์นี้ไม่สามารถรับคำตอบที่ชัดเจนได้ IMO พยายามอธิบายแนวคิดให้กับนักกฎหมายและการตีความใบอนุญาตเป็น จำนวนมากที่จะตอบ ask.An สำหรับนักพัฒนาโดยนักพัฒนาเป็นวิธีที่จะไป
อาห์หมัด

@Ahmad: ด้านเดียวที่ฉันพบไม่ชัดเจนคือชิ้นส่วนที่ต้องเคารพกฎหมายลิขสิทธิ์: งานที่ได้รับคืออะไรการแจกจ่าย ฯลฯ จนกว่าเราจะมีการชี้แจงทางกฎหมาย (ในสหรัฐอเมริกาที่อาจเกี่ยวข้องกับการเปลี่ยนแปลงข้อความ ของกฎหมายหรือการตัดสินของศาลที่ผลิตกฎหมายกรณี) ไม่มีใครจะรู้ว่าแน่นอน
David Thornley

ตามที่คุณบอกว่ามีการใช้งานสองรูปแบบของแอปพลิเคชัน 1) รูปแบบดั้งเดิมของมันซึ่งเป็นคอนโซลที่ใช้ exe (ซึ่งใช้ไลบรารี GPL); และ 2) การใช้งานผ่านเว็บอินเตอร์เฟสซึ่งเรียกใช้ไฟล์ปฏิบัติการได้ สำหรับคนที่ 1 โปรดอธิบายว่า 'มันเป็นการโทรไปยังไลบรารี GPL ผ่านการโทรของระบบหรือผ่านการโทรที่กำหนดเอง'?

คำตอบ:


22

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


ตราบใดที่มันไม่เคยถูกแจกจ่ายซ้ำใบอนุญาตจะไม่มีผลกับคุณ ไม่มี. แน่นอนดำเนินการตามคำแนะนำของคุณหากคุณไม่แน่ใจและตรวจสอบให้แน่ใจว่าพวกเขาคุ้นเคยกับกฎหมายลิขสิทธิ์
Michael Trausch

2
กล่าวอีกนัยหนึ่งผู้ที่มีไบนารีต้องมีแหล่งที่เกี่ยวข้องเพื่อให้สามารถแก้ไขข้อบกพร่องและสร้างไบนารีใหม่ได้

2
นั่นหมายความว่าฉันสามารถใช้เว็บไซต์ GPLv2 ภายใน บริษัท โดยไม่ต้องขายฟังก์ชั่น
Johnny_D

3

ฉันคิดว่าคุณยกคำตอบแล้วคุณก็มี

ความรู้เกี่ยวกับ GPL ของฉันคือสิ่งที่คุณต้องการทำคุณไม่มีปัญหา


3

คำตอบที่นี่ขึ้นอยู่กับคำนิยามทางกฎหมายของการกระจาย

หากการให้โปรแกรมแก่พนักงานของคุณเพื่อเรียกใช้กำลังแจกจ่ายข้อกำหนด GPL จะมีผลบังคับใช้และคุณต้องให้พนักงานที่ได้รับโปรแกรมดังกล่าวด้วยเช่นกัน

หากการให้สำเนาโปรแกรมแก่พนักงานของคุณนั้นไม่ใช่การแจกจ่ายคุณก็ไม่มีข้อกำหนดเพราะคุณยังไม่ได้แจกจ่ายมัน

คำถามที่พบบ่อยคุณได้ยกมาบอกคุณว่าคุณจะได้ไม่ต้องให้รหัสของคุณใช้ได้สาธารณชน (นั่นคือสำหรับบุคคลที่สุ่มบนถนน)

โปรดทราบว่าเป็นที่ชัดเจนว่าภายใต้ GPLv2 ที่เว็บเซอร์วิสนั้นไม่ถือว่าเป็นการแจกจ่าย มันเป็นเพียงแอปพลิเคชั่นคอนโซลที่สับสน

ฉันขอแนะนำให้คุณรับคำแนะนำทางกฎหมายจากทนายความของ บริษัท ของคุณ


2

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


4
OTOH ความฝันส่วนใหญ่ในการสร้างรายได้จากเครื่องมือที่พัฒนาขึ้นสำหรับใช้งานภายใน บริษัท ผู้จัดการฝันจะถูกบดขยี้เมื่อตระหนักถึงความเฉพาะเจาะจงขององค์กรและแอพพลิเคชั่นบั๊กกี้ ใบอนุญาตมักเป็นปัญหาสุดท้ายที่ฉันพบเมื่อเกิดสถานการณ์ดังกล่าวขึ้น
keppla

@keppla: ใช่และนั่นหมายความว่า: ใช้มัน แต่ระวังให้ดี รักษาขอบเขตกึ่งชัดเจนระหว่างกรรมสิทธิ์และ GPL ของคุณไว้ดังนั้นหากถึงเวลาของการเปลี่ยนแปลงคุณจะไม่พบว่าตัวเองยุ่งเหยิงอย่างไร้ความหวัง "ความลับทางธุรกิจ" คั่นด้วยเลเยอร์นามธรรมที่ดีของตรรกะกาวบางส่วนจาก GPL
เอสเอฟ

1

LGPL เวอร์ชั่น 2 ช่วยให้คุณสามารถแจกจ่ายแหล่งที่มาและไบนารี

คุณสามารถขายได้

ข้อ จำกัด จริงเท่านั้นมีดังนี้:

หากคุณแก้ไขไลบรารีและแจกจ่ายไลบรารีคุณต้องรีลีสการเปลี่ยนแปลงที่คุณทำกับไลบรารีแบบสาธารณะ อ่านจุดที่ 2 ของ LGPL

หากคุณไม่แก้ไขมันคุณจะไม่มีปัญหาจริงๆ


0

ฉันไม่คิดว่าจะเป็นปัญหา เว็บแอปพลิเคชันที่ใช้รหัส GPL'd แต่ไม่สามารถใช้ได้ในรูปแบบซอร์สโค้ดแก่ผู้ใช้เป็นหนึ่งในปัญหาที่ GPLv3 เปลี่ยนไปเมื่อเปรียบเทียบกับ GPLv2 ซึ่งเป็นการปิด "ช่องโหว่" นั้น ดูเหมือนว่าคำถามเดียวกันส่วนใหญ่

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


0

เป็นสิ่งสำคัญที่ต้องจำไว้ในคำแนะนำ "โปรแกรมเมอร์ถึงโปรแกรมเมอร์" ทั้งหมดนี้ว่าไม่มีคำแนะนำด้านกฎหมาย เนื่องจากเธรดนี้มีความชัดเจนจึงมีพื้นที่สำหรับตีความด้วย GPL

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

-

ตัวอย่างเช่นนี่คือรอยย่น: จะเกิดอะไรขึ้นถ้ารหัส GPL'd เป็น JavaScript

เมื่อผู้ใช้เข้าถึงเว็บไซต์ด้วยรหัส JavaScript GPL'd ในทางเทคนิค "ซอร์สโค้ด" (ในกรณีนี้ไฟล์ JS) จะ "แจกจ่าย" ให้กับผู้ใช้ปลายทาง หมายความว่าทั้งเว็บไซต์ของคุณต้องเป็น GPL หรือไม่ มีการถกเถียงกันทั้งหมดเกี่ยวกับเรื่องนั้นเช่นกัน

ในขณะที่ฉันเกลียดการจ่ายทนายให้มากที่สุดเท่าที่จะเป็นคนขยันต่อไป แต่ความเสี่ยงนี่เป็นเรื่องหนึ่งที่ดีกว่าที่จะไม่พึ่งพาคำแนะนำทางอินเทอร์เน็ต (ยกเว้นคำแนะนำนี้แน่นอน)


ไม่เกี่ยวข้อง - OP กำลังถามเกี่ยวกับแอปพลิเคชันภายในทั้งหมด ในกรณีดังกล่าวไม่มี GPL รุ่นใดพูดถึงสิ่งที่เกี่ยวกับการแจกจ่ายสิ่งต่าง ๆ (แม้ว่าการเชื่อมโยงไปยังซอฟต์แวร์ที่ไม่รองรับ GPL อาจเป็นปัญหา) และ Gnu คำถามที่พบบ่อยซึ่งไม่มีข้อกำหนดโดยตรง
David Thornley

-1

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

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

ในกรณีของไลบรารีที่คอมไพล์รหัส GPL'd จะแยกออกจากฐานรหัสหลักของคุณและดังนั้นจึงจำเป็นต้องเผยแพร่ซอร์สโค้ดสำหรับไลบรารีที่รวบรวมเท่านั้นไม่ใช่ส่วนที่เหลือของฐานรหัสของคุณ

ในกรณีที่ไม่ได้รวบรวมไลบรารี - เช่นในแอปพลิเคชัน PHP ฉันเชื่อว่ายังคงมีการแบ่งแยกอยู่ ตัวอย่างเช่นแอปพลิเคชันของคุณใช้ไลบรารีโอเพนซอร์ซเพื่อสร้าง PDF - การดัดแปลงใด ๆ กับรหัสการสร้าง PDF จะได้รับการคุ้มครองโดยสิทธิ์การใช้งานและการปรับปรุงใด ๆ จะต้องได้รับการปล่อยตัวออกมา .

โปรดทราบว่าการเปลี่ยนแปลงนี้มี GPL v3 โดยรหัสของคุณจะต้องเปิดแหล่งที่มาหากคุณเชื่อมโยงไปยังห้องสมุดที่มาเปิด ...


1
"เฉพาะซอร์สโค้ดสำหรับไลบรารีที่รวบรวมจะต้องมีการเปิดตัว" - นี่เป็นการอธิบาย LGPL ไม่ใช่ GPL GPL ทำงานภายใต้สมมติฐานที่ว่าการลิงก์ไปยังไลบรารีทำให้แอปพลิเคชันของคุณเป็นงานอนุพันธ์ของไลบรารีและด้วยเหตุนี้ขึ้นอยู่กับ GPL เอง
Sean McMillan

-2

ฉันไม่แน่ใจว่ามันเป็นการตกลงที่จะห้ามไม่ให้พนักงานแจกจ่ายแอปพลิเคชั่นนั้นใหม่หรือไม่เนื่องจากแอปพลิเคชันนั้นเป็น GPL ด้วยเช่นกัน ดังนั้นสิ่งที่คุณคิดว่าอาจเป็น "แอปพลิเคชันภายใน" อาจมี (ถูกต้องตามกฎหมายหรือไม่) รั่วไหลพร้อมกับซอร์สโค้ด


โปรดอธิบายอย่างละเอียดเกี่ยวกับ 'เนื่องจากแอปพลิเคชันนั้นเป็น GPL ด้วยเช่นกัน' คุณหมายถึงอะไร หากใครต้องการที่จะใช้ห้องสมุด GPL'ed เท่านั้นและแจกจ่ายมันใบอนุญาตเตะจากสิ่งที่ฉันเข้าใจป่านนี้ แอปพลิเคชันอินทราเน็ต (คอนโซล n เว็บ) ไม่ใช่สำหรับการแจกจ่ายและหากพนักงานคนใดตัดสินใจที่จะ 'แจกจ่ายซ้ำ' แอปพลิเคชันของ บริษัท ฉันค่อนข้างแน่ใจว่าเขาจะไม่เป็นพนักงานเป็นเวลานานหลังจากนั้น ..
Ahmad

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

โปรดอ่านคำถามอีกครั้ง คำตอบส่วนใหญ่ดูเหมือนจะไม่เห็นด้วยกับคุณหรือมีบางสิ่งที่เราทุกคนหายไป? แอปพลิเคชัน (รวมถึงส่วน GPL'ed) ไม่ได้มีไว้สำหรับการกระจาย / การกระจายอีกครั้งจะถูกใช้ภายในเท่านั้นไม่ได้ขายไม่ได้หันหน้าไปทางสาธารณะ ไลบรารี GPL จะไม่ถูกแก้ไข แต่อย่างใด คุณรู้หรือไม่ว่า Google ใช้ linux kernal ที่แก้ไขแล้วสำหรับใช้ภายในเท่านั้นและไม่เผยแพร่รุ่นนี้ ฉันเน้นการใช้ภายในเท่านั้น
Ahmad

ไม่ว่าคุณตั้งใจจะแจกจ่ายแอปพลิเคชันหรือไม่นั้นไม่เกี่ยวข้อง GPL มีความชัดเจนในเรื่องต่อไปนี้: ใครก็ตามที่ได้รับผลงาน GPL สามารถเผยแพร่ได้อย่างอิสระเพิ่มเติม (และสามารถเรียกใช้ซอร์สโค้ด) พูดคุยกับนักกฎหมายเพื่อค้นหาว่ามีอะไรอีกที่พนักงานของคุณสามารถเลือกได้หากพวกเขาต้องการแจกจ่ายงาน GPL เนื่องจากใบอนุญาต GPL อนุญาตให้พวกเขา
zvrba

1
แอปพลิเคชันไม่ใช่GPL โดยอัตโนมัติโดยรวมไลบรารี GPL อย่างไรก็ตามหากคุณต้องการกระจายแอพที่มีไลบรารี่ GPL แอปนั้นจะต้องได้รับอนุญาตภายใต้ลิขสิทธิ์ที่เข้ากันได้ของ GPL ส่วนที่ 7 ของสถานะGPL V2 : หากคุณไม่สามารถแจกจ่ายเพื่อให้เป็นไปตามภาระผูกพันของคุณภายใต้ใบอนุญาตนี้และภาระผูกพันอื่น ๆ ที่เกี่ยวข้องพร้อมกันดังนั้นคุณจึงไม่สามารถเผยแพร่โปรแกรมได้เลย ดังนั้นหากคุณไม่ได้รับอนุญาตให้เผยแพร่รหัสแอปพลิเคชัน บริษัท ของคุณคุณจะไม่สามารถเผยแพร่แอปพลิเคชันได้
KeithB
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.