ฉันเห็นใบอนุญาตจำนวนมากสำหรับซอฟต์แวร์ประเภทใด ๆ เช่น GNU GPL, ใบอนุญาต BSD, ใบอนุญาต MIT และ LGPL กระบวนการสร้างใบอนุญาตซอฟต์แวร์ใหม่เช่น "สัญญาอนุญาตทั่วไปของ John Doe" คืออะไร
ฉันเห็นใบอนุญาตจำนวนมากสำหรับซอฟต์แวร์ประเภทใด ๆ เช่น GNU GPL, ใบอนุญาต BSD, ใบอนุญาต MIT และ LGPL กระบวนการสร้างใบอนุญาตซอฟต์แวร์ใหม่เช่น "สัญญาอนุญาตทั่วไปของ John Doe" คืออะไร
คำตอบ:
โดยทั่วไปแล้วนั่นคือทั้งหมดที่มีให้มัน อย่างจริงจัง.
ไม่เชื่อฉัน ตรวจสอบลิขสิทธิ์ของ Phil Sturgeon Don't Be A Dick (เช่นเดียวกับ WTFPL ที่เป็นแรงบันดาลใจ)
ที่กล่าวมานั้นเป็นที่น่ายินดีหรือพลาดไม่ว่าลิขสิทธิ์ซอฟต์แวร์จะมีผลบังคับใช้ตามกฎหมายหรือไม่แม้ว่าทนายความจะเป็นผู้เขียน (อย่างน้อยก็ในสหรัฐอเมริกาและขึ้นอยู่กับการตัดสินของผู้พิพากษาหรือผู้มีอำนาจด้านกฎหมาย) แม้ว่าโดยทั่วไปในฐานะผู้เขียนซอฟต์แวร์คุณได้รับความคุ้มครองตามกฎหมายลิขสิทธิ์ของประเทศของคุณแล้ว (สมมติว่าคุณได้ทำตามขั้นตอนเพื่อให้งานของคุณมีลิขสิทธิ์ในสหรัฐอเมริกานั่นเป็นเพียงการสร้างทำงาน )
มันทำให้ความต้องการของคุณสำเร็จลุล่วงไปได้ด้วยสิทธิ์การใช้งานของคุณกฎหมายลิขสิทธิ์ที่อยู่เหนือหรือเหนือกว่าหรือมากกว่านั้น ในกรณีของใบอนุญาตเช่นใบอนุญาต DBaD ของ Phil ส่วนใหญ่เป็นเรื่องของหลักการเกียรติยศและการเคารพซึ่งกันและกัน
หากคุณต้องการให้มีการบังคับใช้ตามกฎหมาย (หรืออย่างน้อยก็มีโอกาสทำเช่นนั้น) เช่นการเปิดตัวผลิตภัณฑ์ที่มีแหล่งที่มาแบบปิดคุณอาจต้องการคุยกับทนายความ ด้วยวิธีนี้คุณสามารถตรวจสอบให้แน่ใจว่าไม่มีช่องโหว่ที่เห็นได้ชัดและสามารถเขียนในลักษณะที่พรรคผู้พิพากษา / พรรคมีแนวโน้มที่จะปกครองในความโปรดปรานของคุณในกรณีที่มีคนละเมิด
EllisLab (บริษัท ที่อยู่เบื้องหลัง CodeIgniter) มีคำอธิบายที่ดีเกี่ยวกับการอนุญาตให้ใช้สิทธิ์ซอฟต์แวร์ (และทั้งสัปดาห์ของบล็อกเกี่ยวกับเรื่องจริง) ทั้งจากมุมมองทางกฎหมายและจากมุมมองของนักพัฒนา FLOSS และหลักการเกียรติที่ฉันได้กล่าวไว้ข้างต้น
(ข้อจำกัดความรับผิดชอบ: ฉันไม่ใช่นักกฎหมายนี่ไม่ใช่คำแนะนำที่มีผลผูกพันตามกฎหมาย blah, blah, blah ฉันเป็นเพียงนักพัฒนาที่จะต้องจรดปลายเท้ารอบเขตที่วางทุ่นระเบิดตามกฎหมายซึ่งเป็นการพัฒนาซอฟต์แวร์และการออกใบอนุญาตหากมีข้อสงสัย พูดคุยกับคนที่เป็นทนายความจริง ๆ แล้วโดยเน้นไปที่การจดลิขสิทธิ์สิทธิบัตรและ / หรือการให้ใบอนุญาต)
ตอบคำถามต่อไปนี้สำหรับผู้ใช้ซอฟต์แวร์ของคุณ:
ผลิตภัณฑ์โอเพนซอร์สของคุณคือฉันจะได้รับสำเนาซอร์สโค้ดหรือไม่?
ฉันจะทำอย่างไรกับผลิตภัณฑ์ของคุณ? ฉันสามารถใช้คอมพิวเตอร์เครื่องเดียวได้ไหม ฉันสามารถใช้กับคอมพิวเตอร์มากกว่าหนึ่งเครื่องได้หรือไม่ ฉันสามารถแจกจ่ายต่อหรือขายต่อได้หรือไม่
ถ้าฉันใช้ผลิตภัณฑ์ของคุณเป็นส่วนหนึ่งของแอปพลิเคชันอื่นที่ฉันเขียนฉันต้องเป็นโอเพ่นซอร์สหรือไม่
คุณรับประกันสินค้าอย่างไร? คุณรับผิดชอบทางกฎหมายหรือไม่ถ้าฉันมีปัญหา?
ข้อกำหนดการแจกจ่ายซ้ำของคุณคืออะไร ฉันสามารถแจกจ่ายผลิตภัณฑ์ของคุณเป็นส่วนหนึ่งของผลิตภัณฑ์ที่ฉันเขียนได้หรือไม่ หากคุณระบุแหล่งที่มาฉันสามารถแก้ไขไลบรารีของคุณและแจกจ่ายการแก้ไขอีกครั้งและหากเป็นเช่นนั้นฉันต้องปฏิบัติตามเงื่อนไขใดบ้าง
ศึกษาใบอนุญาตอื่น ๆ และดูว่าพวกเขาตอบคำถามเหล่านี้อย่างไร
จริงๆแล้วมันคล้ายกับที่นักพัฒนาทำ:
คุณให้ทนายความ (หรือแผนกกฎหมายในองค์กรขนาดใหญ่) รายการข้อกำหนดสำหรับสิ่งที่ใบอนุญาตอนุญาตและสิ่งที่ไม่อนุญาต (เช่นใบอนุญาตสำหรับผู้ใช้คนเดียวเท่านั้นมันเป็นการชั่วคราวคุณไม่สามารถใช้ซอฟต์แวร์เพื่อวัตถุประสงค์บางอย่าง ฯลฯ ) และพวกเขา "แปล" สิ่งนี้เป็นทนายพูดได้เหมือนที่เราแปลความต้องการเป็นรหัส
ตัวอย่างเช่น "สิทธิ์ใช้งานสำหรับผู้ใช้หนึ่งรายเท่านั้น" มักจะถูกแปลเป็นสิ่งที่คล้ายกับสิ่งนี้: "FooCorp Inc. ให้สิทธิ์ใช้งานแบบเดี่ยวไม่ผูกขาดไม่สามารถถ่ายโอนได้เพื่อติดตั้งและใช้ FooSoftware for ... "
คุณอาจคิดว่านี้ไม่ได้นำไปใช้กับใบอนุญาต F / OSS แต่มันมากหรือน้อยเดียวกันยกเว้นความต้องการที่แตกต่างกัน: คุณสามารถหารุ่นที่ง่ายที่สุดของความต้องการเหล่านี้ที่http://opensource.org/docs/OSD
แต่ส่วนนักกฎหมายมีความสำคัญและไม่มีประโยชน์ในการพยายามเขียนใบอนุญาตด้วยตัวเอง (เว้นแต่คุณจะเป็นนักกฎหมายที่มีประสบการณ์ด้านกฎหมายทรัพย์สินทางปัญญาและกฎหมายระหว่างประเทศ) บางคนจะพบช่องโหว่ที่สะดวกซึ่งจะอนุญาตให้เขาใช้ผลิตภัณฑ์ของคุณในแบบที่เขาพอใจ (ฉันจะไปเปรียบเทียบสิ่งนี้กับการหาประโยชน์)
แน่นอนฉันไม่ได้อ้างคำอธิบายนี้ให้เสร็จสมบูรณ์หรือถูกต้อง แต่เป็นภาพร่างคร่าวๆของกระบวนการเท่าที่นักพัฒนาซอฟต์แวร์เข้ามาเกี่ยวข้อง (ดังนั้นฉันจึงเปรียบเทียบกับงานของโปรแกรมเมอร์)
เพื่อตอบคำถามของคุณทุกคนสามารถเขียนใบอนุญาต - และมันจะแสดง!
พวกเราที่ใช้ซอฟต์แวร์เพื่อสร้างสิ่งต่าง ๆ และพยายามที่จะเคารพใบอนุญาตแต่ละใบพร้อมที่จะควักลูกตาของเราด้วยโป๊กเกอร์ร้อนทุกครั้งที่มีคนพูดถึงการสร้างใหม่ มีใบอนุญาตซอฟต์แวร์จำนวนมากมายในโลก 99% ของพวกเขาเป็นสำเนาที่ใกล้เคียงกับสัญญาอนุญาตที่มีอยู่เดิมและเป็นที่นิยมมากกว่า
เว็บไซต์หนึ่งที่ฉันมีส่วนร่วมมีใบอนุญาตประเภทที่มาโฆษณาที่ไม่ใช่เชิงพาณิชย์ที่ปลูกเองในบ้านยกเว้นว่าไม่มีอะไรเกี่ยวข้องกับงานดัดแปลง พวกเขาได้รับอนุญาตหรือไม่ พวกเขาสามารถกระจายภายใต้ใบอนุญาตเดียวกันได้หรือไม่ เอาชนะฉัน!
หากคนอื่นมีส่วนร่วมในโครงการและคุณต้องการหรือต้องการเปลี่ยนใบอนุญาตคุณต้องให้พวกเขาทั้งหมดตกลงที่จะเปลี่ยนใบอนุญาตหรือคุณติดอยู่กับมันตลอดไป บางคนอาจเข้าไม่ถึงหรือตาย ฉันไม่ใช่นักกฎหมาย แต่ถ้าคุณไม่มีข้อตกลงร่วมสนับสนุนจากทุกคนที่ให้คุณตัดสินใจเกี่ยวกับสิทธิ์ใช้งานของคุณฉันคิดว่าคุณคือ SOL
มันยากมากที่จะเขียนใบอนุญาตที่ดี แม้แต่ซอฟต์แวร์ลิขสิทธิ์ที่ดีที่สุดก็ยังมีช่องโหว่ มีใบอนุญาต Apache และ GPL เวอร์ชันใหม่เป็นระยะ ๆ โปรดดูว่าคุณสามารถค้นหาใบอนุญาตที่ตรงกับความต้องการของคุณ 90% และใช้งานได้หรือไม่ ยกเว้น GPL เชื่อมโยงหรือ "Classpath ข้อยกเว้น" เป็นตัวอย่างที่ดีในเรื่องนี้ ฉันกังวลเล็กน้อยเกี่ยวกับคำแถลงที่คนไฮเบอร์เนตมีในไซต์ของพวกเขาเมื่อไม่กี่ปีที่ผ่านมาโดยทั่วไปตีความ GPLv2 เพื่อให้ฟังดูเหมือนว่ามันรวม Classpath Exception นั่นคือข้อยกเว้น classpath หรือไม่ เราจะไม่รู้ถ้าไม่มีใครฟ้องพวกเขา
สำหรับฉันแล้วดูเหมือนว่าการฟ้องร้องเป็นวิธีที่เจ็บปวดที่สุดในการตรวจแก้จุดบกพร่องใบอนุญาตของคุณ หากคุณใช้ใบอนุญาตที่ผู้คนเคยฟ้องร้องมาแล้วมีความมั่นใจว่ามันใช้งานได้และมีความรู้สึกว่ามันทำงานอย่างไร ยังดีกว่าเลือกใบอนุญาตที่เคยขึ้นศาลในประเทศต่างๆ คุณคิดว่าใบอนุญาตของคุณจะถูกตีความในส่วนอื่น ๆ ของโลกอย่างไร?
หากคุณยึดใบอนุญาตของคุณกับคนที่มีอยู่แล้วคนที่สนใจเกี่ยวกับการปฏิบัติตามข้อกำหนดในใบอนุญาตของคุณอาจไม่ต้องศึกษามันเป็นเวลาหลายปีเพื่อที่จะเข้าใจว่ามันหมายถึงอะไร
ถ้าเป็นไปได้ฉันจะสนับสนุนให้คุณอุทิศพลังงานและความสามารถของคุณเพื่อปรับปรุงใบอนุญาตที่มีอยู่แทนที่จะเขียนใบอนุญาตใหม่
ขออภัยที่เป็นเช่นความสุข ถ้าฉันรู้สึกขมมันเป็นเพราะฉันอ่านและพยายามเคารพใบอนุญาตของผู้คนก่อนที่ฉันจะใช้ผลงานของพวกเขา
เขียนข้อกำหนดและเผยแพร่ด้วยซอฟต์แวร์ของคุณ แค่นั้นแหละ.
อย่างไรก็ตามคำถามหนึ่งคือทำไมคุณต้องการที่จะ? ไม่น่าเป็นไปได้ว่าเงื่อนไขใด ๆ ที่คุณต้องการเพิ่มนั้นมีอยู่แล้วในใบอนุญาตที่ใช้กันทั่วไปอื่น
นี่เป็นการเพิ่มขั้นตอนเบื้องต้น - ตรวจสอบว่าคุณต้องสร้างใบอนุญาตจริงหรือไม่
อาจเป็นไปได้ว่าเงื่อนไขบางอย่างที่คุณต้องการบังคับใช้นั้นมีข้อบกพร่อง เพิ่มอีกขั้นตอนเบื้องต้น - อ่านเกี่ยวกับคำว่า "ไม่เหมือนใคร" ที่คุณต้องการใช้ มีคนอื่นน่าจะลองใช้คำเหล่านี้และพบว่าไม่สามารถบังคับใช้ได้หรือต่อต้านในทางใดทางหนึ่ง