open source software licensing
DESCRIPTION
About Open Source Software licenses: GPL, BSD, MIT, LGPLTRANSCRIPT
![Page 1: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/1.jpg)
Software LicensingIsriya Paireepairit
Thailand Open Source Festival #7 - http://www.ossfestival.in.th3 August 2007
![Page 2: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/2.jpg)
License
สัญญา “อนุญาต” ให้
• ใช้งาน• พัฒนา/ปรับปรุง/แก้ไข• แจกจ่าย/หาผลประโยชน์ซอฟต์แวร์
![Page 3: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/3.jpg)
License to “Use”EULA - End-User License Agreement
![Page 4: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/4.jpg)
License to Modify/Distribute
• สัญญาจ้างระหว่างหน่วยงานกับ Software House
• สัญญาประมูลงานของหน่วยงานภาครัฐ• สัญญาใช้ component ระหว่าง Software House
• สัญญาจัดจำหน่ายซอฟต์แวร์/เกม• Etc.
![Page 5: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/5.jpg)
Open Source License
• เป็น สัญญา เช่นเดียวกับสัญญาชนิดอื่นๆ
• เพียงแต่อนุญาตให้• ใช้• พัฒนาแก้ไข• แจกจ่าย/หาผลประโยชน์• ได้อย่างอิสระ
![Page 6: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/6.jpg)
Misconception
ผิด: Open Source ไม่มีลิขสิทธิ์
ถูก: Open Source มีลิขสิทธิ์เช่นเดียวกับซอฟต์แวร์ทั่วไป
แต่ อนุญาต ให้คนอื่นนำไปใช้/พัฒนา/แจกจ่ายได้
ผู้เขียนซอฟต์แวร์ยังเป็นเจ้าของลิขสิทธิ์ของซอฟต์แวร์อยู่เสมอ
![Page 7: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/7.jpg)
How to Apply Open Source License
1. เขียนเอง
2. ใช้สัญญาที่มีคนเขียนไว้แล้ว
![Page 8: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/8.jpg)
Common Open Source Licenses
• GPL/LGPL
• BSD
• MIT X11
• Apache
• Mozilla Public License
• Sun CDDL
• Eclipse Public License
• PHP License
• Python License
• etc.
![Page 9: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/9.jpg)
GPL
• GNU General Public License
• Version 1: 1985
• Version 2: 1991
• Version 3: 2007
• Free Software Foundation (www.fsf.org)
![Page 10: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/10.jpg)
GPL Key Concept
•สามารถพัฒนาและแจกจ่ายต่อได้อย่างอิสระ
•ตราบเท่าที่คนอื่นๆ ได้สิทธิ์นั้นแบบเดียวกัน
![Page 11: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/11.jpg)
Right to Get Source
Company A
User B
ขาย/แจก
สร้าง
ใช้
compile
![Page 12: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/12.jpg)
GPL Misconception
ผิด: โปรแกรมที่เป็น GPL ขายไม่ได้
ถูก: โปรแกรมที่เป็น GPL ขายได้
แต่ผู้ซื้อ ต้องได้ ซอร์สโค้ดเมื่อร้องขอ
(ในทางปฏิบัติ ตัวโปรแกรมจึงไม่มีราคา เพราะคนอื่นนอกจากเจ้าของสามารถแจกจ่ายได้เช่นกัน)
![Page 13: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/13.jpg)
How to Get Money from Open Source
ซอร์สโค้ดสามารถแจกจ่ายได้ แต่อย่างอื่นแจกจ่ายไม่ได้
• support/training
• ความเชี่ยวชาญในการแก้ไขโปรแกรม (Ubuntu)
• วิธีการ compile/build โปรแกรม (Red Hat/RHEL)
• เพิ่มความสามารถลงในโปรแกรม (Mozilla/Google)
![Page 14: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/14.jpg)
RHEL/CentOS Case
• Red Hat Enterprise Linux (RHEL)
• บริษัท Red Hat แจกซอร์สโค้ดของ RHEL แต่ไม่แจก Binary
• บริษัท Red Hat ขาย Binary ของ RHEL
• ลูกค้าซื้อความสะดวกในการ build ซอร์สของ RHEL
• โครงการ CentOS นำซอร์สของ RHEL มา build แล้วแจก binary
![Page 15: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/15.jpg)
RHEL/CentOS Case (2)
• Red Hat ได้เงินจากการขาย RHEL binary
• ลูกค้ามี 3 ทางเลือก
• ซื้อ RHEL binary จาก Red Hat
• ดาวน์โหลด CentOS binary จากอินเทอร์เน็ต
• ดาวน์โหลด RHEL Source มา build เอง
![Page 16: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/16.jpg)
RHEL/CentOS Case (3)
• Source Code ของ RHEL แจกจ่ายได้อิสระ
• Trademark ของ RHEL เป็นของ Red Hat
• CentOS จึงต้องใช้ชื่ออื่น
• กรณีเดียวกับ Firefox/IceWeasel
![Page 17: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/17.jpg)
Derivatives
• งานที่พัฒนาต่อ (derivative) จากซอร์สที่เป็น GPL ต้องเป็น GPL ด้วย
![Page 18: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/18.jpg)
Recursive Distribution
A Bcompile Cdevelop modify modify
![Page 19: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/19.jpg)
GPL Virus
• โค้ดที่เป็น GPL เมื่อผสมกับโค้ดอื่น โค้ดทั้งหมดต้องเป็น GPL ด้วย
• เป้าหมายเพื่อส่งเสริมให้เกิดโปรแกรม GPL มากๆ
• (ไม่รวมกรณี library linking)
![Page 20: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/20.jpg)
+
Strong Linking
A Bcompile Cdevelop modify modify
+
D
![Page 21: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/21.jpg)
LGPL
GNU Lesser General Public License
LGPL = GPL - GPL Virus
![Page 22: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/22.jpg)
LGPL
• ผสมรวมกับซอฟต์แวร์อื่นที่ไม่ใช่ LGPL/GPL ได้
• Derivative ต้องเป็น LGPL หรืออัพขึ้นเป็น GPL
![Page 23: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/23.jpg)
+
Weak Linking
A Bcompile Cdevelop modify modify
+
D
![Page 24: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/24.jpg)
Other License
• MIT License
• BSD License
• Mozilla Public License
![Page 25: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/25.jpg)
MIT License
• เดิมใช้กับ X11
• นำซอร์สโค้ดไปทำอะไรก็ได้ ตราบเท่าที่ไม่ฟ้องผู้พัฒนา
![Page 26: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/26.jpg)
BSD License
• เดิมใช้กับ Unix ของ Berkley
![Page 27: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/27.jpg)
Mozilla Public License
• คล้ายกับ LGPL
• มีเงื่อนไขเพิ่มขึ้นสำหรับ Mozilla
![Page 28: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/28.jpg)
License Comparison
source - http://www.dwheeler.com/essays/floss-license-slide.html
![Page 29: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/29.jpg)
License Comparison
http://en.wikipedia.org/wiki/Comparison_of_free_software_licences
![Page 30: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/30.jpg)
License Comparison
• More comparison matrix
http://developer.kde.org/documentation/licensing/licenses_summary.html
![Page 31: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/31.jpg)
GPLv3
• เวอร์ชันอัพเดตของ GPLv2
• ใจความหลักเหมือนเดิม• แก้ปัญหาบางอย่างของ GPLv2
![Page 32: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/32.jpg)
Tivoization
• แจกซอร์สโค้ด แต่ไม่ยอมให้แก้ไขโปรแกรมที่รันอยู่
• อุปกรณ์ต่างๆ เช่น• เครื่อง set-top box ของ TiVo
• Wireless Router
• DRM
![Page 33: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/33.jpg)
Patent
• แจกซอร์สโค้ด (ลิขสิทธิ์) แต่ไปฟ้องสิทธิบัตร
• กรณีสัญญา Microsoft-Novell
• คุ้มครองเฉพาะลูกค้าของ Novell
• แก้ให้: คุ้มครองสิทธิบัตรแก่ผู้ใช้ทุกคน
![Page 34: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/34.jpg)
Other Changes
• กรณีแจกจ่ายผ่าน P2P
• การปรับใช้ในประเทศอื่นๆ นอกจากสหรัฐ (Internationalization)
• เข้ากันได้กับ Apache 2.0 License
• ปรับคำศัพท์ เช่น• เปลี่ยน distribute เป็น propagate/convey
![Page 35: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/35.jpg)
GPLv2 vs GPLv3
• GPLv2 ไม่ compat กับ GPLv3
• เพราะแต่ละ license ระบุว่าต้องแจกจ่ายผลงานที่แก้ไข ใต้ License เดิม
• แก้ปัญหา: ใช้ประโยค GPLv2 or later
![Page 36: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/36.jpg)
Upgrade Path
source - GPLv3 FAQ
before
later
![Page 37: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/37.jpg)
GPLv3 Adoption
source - http://gpl3.palamida.com
GPLv2 370,000
GPLv3 550
Number of Projects using GPLv2 and v3
![Page 38: Open Source Software Licensing](https://reader033.vdocuments.site/reader033/viewer/2022052522/554de304b4c905cc0e8b5625/html5/thumbnails/38.jpg)
Major Open Source Projects and GPLv3
Yes Considering (Probably) No
SambaSugarCRM
Sun Solaris/JDK Linux Kernel
Anyway, we still can use GPLv2 and GPLv3 programs together e.g. Running Samba on Linux