Copyleft คืออะไร?
Copyleft คือวิธีการทั่วไปสำหรับการสร้างโปรแกรมหรือซอฟต์แวร์ฟรี ๆ ที่ต้องการการปรับแต่ง ขยายรุ่นของโปรแกรมหรือซอฟท์แวร์นั้นให้เป็นแบบฟรี
วิธีที่ง่ายที่สุดที่จะทำโปรแกรมฟรีคือการจับมันลงไปไว้ที่โดเมนสาธารณะ และไม่สงวนลิขสิทธิ์ การกระทำนี้เป็นการอนุญาตให้ผู้อื่นแบ่งปันโปรแกรมและการพัฒนาของพวกเขาได้หากว่าพวกเขาใส่ใจที่จะให้ แต่การกระทำดังกล่าวนี้ก็ยังอนุญาตให้กลุ่มคนที่ไม่มีส่วนเกี่ยวข้องเปลี่ยนแปลงโปรแกรมให้กลายเป็นกรรมสิทธิ์ของตัวเองได้ พวกเขาสามารถทำการเปลี่ยนแปลงต่าง ๆ ได้ ไม่มากก็น้อย และเผยแพร่ออกไปเหมือนกับเป็นสินค้าของตัวเอง คนที่ได้รับโปรแกรมที่ถูกปรับแต่งแล้วจะไม่ได้รับอิสรภาพว่าความตั้งใจแรกเริ่มของผู้สร้างสรรนั้นต้องการจะสื่ออะไรถึงพวกเขา คนกลางทางได้ตัดมันออกไปเสียแล้ว
โครงการ GNU เป้าหมายของเราคือการมอบอิสรภาพที่จะเผยแพร่และการปรับเปลี่ยนซอฟท์แวร์ GNU ให้กับผู้ใช้งานทุกคน หากมีคนกลางสามารถมาตัดอิสรภาพ เราอาจมีผู้ใช้เป็นจำนวนมาก แต่ผู้ใช้เหล่านั้นไม่มีสิทธิ์ได้รับอิสรภาพ ด้วยเหตุนี้แทนที่จะวางซอฟท์แวร์ GNU ลงไปในโดเมนสาธารณะ เราทำการ copyleft ตัวซอฟท์แวร์ Copyleft จะบอกว่าใครก็ตามที่ทำการเผยแพร่ซอฟท์แวร์ ทั้งแก้ไขหรือไม่แก้ไข ต้องเปิดช่องให้มีความเป็นอิสระที่จะทำการสำเนาและเปลี่ยนแปลงในภายภาคหน้าด้วย Copyleft การันตีได้ว่าผู้ใช้ทุกคนย่อมมีอิสระ
Copyleft ยังให้แรงจูงใจแก่บรรดาโปรแกรมเมอร์ในการเพิ่มซอฟท์แวร์ฟรี ที่สำคัญโปรแกรมฟรีอย่างเช่น GNU C++ ก็ได้อนิสงศ์จากเหตุผลนี้เช่นเดียวกัน
Copyleft ยังช่วยโปรแกรมเมอร์ผู้ซึ่งต้องการการสนับสนุนการพัฒนาซอฟท์แวร์ฟรี โปรแกรมเมอร์เหล่านั้นมักจะทำงานให้กับบริษัทต่าง ๆ หรือไม่ก็มหาวิทยาลัยซึ่งมักจะทำอะไรก็ได้ขอให้ได้เงินเพิ่มขึ้น โปรแกรมเมอร์บางคนอาจต้องการให้คนมาสนับสนุนการแก้ไขโปรแกรมของเธอเพื่อสร้างมูลนิธิแต่เจ้านายของเธอกลับต้องการให้เปลี่ยนมันให้กลายเป็นกรรมสิทธิ์ของบริษัท
เมื่อเราอธิบายให้กับนายจ้างฟังว่ามันผิดกฎหมายในการที่จะพัฒนารุ่นของซอฟท์แวร์ฟรี เจ้านายก็มักจะตัดสินใจที่จะปล่อยซอฟท์แวร์นั้นออกมาในฐานะซอฟท์แวร์ฟรีแทนที่จะทิ้งซอฟท์แวร์นั้นไป
การ copyleft โปรแกรม เราขอบัญญัติมันว่าเป็นการสงวนลิขสิทธิ์ก่อน หลังจากนั้นเราเพิ่มเทอมของการนำไปเผยแพร่เข้าไปซึ่งจะเป็นเครื่องมือทางกฎหมายที่สามารถทำให้ทุกคนมีสิทธิ์ที่จะใช้ แก้ไขและนำไปเผยแพร่โค้ดโปรแกรมหรือส่วนต่าง ๆ ของโปรแกรมที่ได้รับมาโดยที่เทอมของการนำไปเผยแพร่ยังต้องไม่ถูกเปลี่ยนแปลง ดังนั้น ตัวโค้ดกับอิสระภาพกลายเป็นสิ่งที่ถูกกฏหมายแบบแยกออกจากกัน
นักพัฒนาผู้ถือกรรมสิทธิ์ซอฟท์แวร์ใช้การสงวนลิขสิทธิ์เพื่อปิดกั้นอิสระของผู้ใช้ เราใช้การสงวนลิขสิทธิ์เพื่อที่จะการันตีอิสระของพวกเขา นั่นคือเหตุผลที่เรากลับชื่อจาก copyright เป็น copyleft
Copyleft เป็นแนวคิดทั่วไปที่สามารถมีวิธีการต่าง ๆ มากมายที่สามารถนำมาใส่ในเนื้อหาได้ ในโครงการ GNU เทอมของการเผยแพร่แบบเจาะจงที่เราใช้จะประกอบไปด้วยใบอนุญาตสาธารณะทั่วไป GNU ใบอนุญาตสาธารณะทั่วไป GNU แบบย่อ และใบอนุญาตเอกสารฟรี GNU
ความเหมาะสมของใบอนุญาตได้ถูกรวมไว้ในคู่มือการใช้งานต่าง ๆ และอยู่ในซอร์สโค้ดของ GNU แต่ละอันด้วย
GNU GPL ได้ถูกออกแบบอย่างดีเพราะฉะนั้นคุณจึงสามารถที่จะนำไปประยุกต์ใช้กับโปรแกรมของคุณได้ง่ายหากคุณเป็นผู้ถือสิทธิ์ที่ถูกต้อง คุณไม่จำเป็นต้องปรับแต่ง GNU GPL ใด ๆ แค่ทำการอ้างอิงจากโปรแกรมของคุณไปยัง GNU GPL ต้องจำว่าคุณต้องใช้ข้อความทั้งหมดขอ GPL เพราะมันมีส่วนสำคัญทั้งหมดและการสำเนาเอกสารไปบางส่วนถือเป็นเรื่องที่ผิด (เช่นเดียวกันกับ LFPL, AGPL และ FDL)
การใช้เทอมการเผยแพร่เดียวกันสำหรับโปรแกรมต่าง ๆ มันทำให้ง่ายต่อการสำเนาโค้ดระหว่างโปรแกรมอื่น ๆ ตราบเท่าที่โปรแกรมเหล่านั้นใช้เทอมการเผยแพร่เดียวกัน ก็ไม่จำเป็นต้องคิดเกี่ยวกับเทอมที่เข้ากับโปรแกรมอีก GPL แบบย่อได้รวมบทบัญญัติต่าง ๆ ที่คุณสามารถปรับแต่งเทอมการเผยแพร่ให้เป็น GPL ดั้งเดิมได้ เพราะฉะนั้นคุณสามารถสำเนาโค้ดลงไปในโปรแกรมอื่น ๆ โดยยังได้รับความคุ้มครองภายใต้ GPL
ตัวอย่างซอฟต์แวร์ที่ใช้ Copyleft
ซอฟต์แวร์ Omnet++