Về cơ bản phần mềm mã nguồn mở (Open source) là những phần mềm được phát hành dưới cả dạng thực thi và dạng mã nguồn. Miễn phí về giá mua, và cả miễn phí về quyền: [sửa đổi, cải tiến, phát triển, nâng cấp] theo nguyên tắc chung quy định trong từng loại giấy phép phần mềm nguồn mở, mà không cần xin phép, xin xỏ ai. 😏
1) Apache license 2.0
Nội dung: http://www.apache.org/licenses/LICENSE-2.0
Các điều khoản:
Giấy phép Apache cho phép người dùng tự do sử dụng phần mềm bất kì mục đích nào, thoải mái phân phối bản gốc, tự do sửa đổi, tự do phân phối bản sửa đổi mình làm .
Giấy phép Apache không yêu cầu bản sửa đổi của phần mềm phải được phân phối dưới cùng giấy phép với bản gốc, cũng không yêu cầu bản sửa đổi phải được phân phối dưới dạng mã nguồn mở. Nó chỉ yêu cầu có một thông báo nhắc nhở người nhận rằng giấy phép Apache đã được sử dụng trong sản phẩm họ nhận được .
Người sử dụng phần mềm được quyền sử dụng chương trình và mã nguồn theo cách họ muốn, kể cả việc giữ lại mã nguồn cho riêng mình.
Giấy phép Apache không yêu cầu trích dẫn toàn bộ giấy phép vào sản phẩm hay tệp tin đính kèm bản phân phối, mà chỉ cần thêm vào phần thông báo có chứa đường link tới website chứa giấy phép với nội dung như sau:
Copyright [yyyy] [tên của chủ sở hữu bản quyền]
Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.
2) BSD 3-Clause “New” or “Revised” license
Nội dung: https://opensource.org/licenses/BSD-3-Clause
Điều khoản: phân phối lại và sử dụng ở dạng mã nguồn và nhị phân, có hoặc không có sửa đổi mã nguồn, đều hợp lệ miễn là các điều khoản sau được đáp ứng :
Giữ lại thông báo bản quyền , danh sách các điều kiện và tuyên bố từ chối trách nhiệm .
Việc phân phối lại dưới dạng nhị phân (file thực thi) phải sao chép thông báo bản quyền , danh sách các điều kiện và tuyên bố từ chối trách nhiệm trong tài liệu và/hoặc các tài liệu khác được cung cấp bởi bản phân phối .
Tên của người giữ bản quyền cũng như tên của những người đóng góp của nó cho các phiên bản phần mềm có thể được sử dụng để xác nhận hoặc quảng cáo các sản phẩm có nguồn gốc từ phần mềm này mà không cần sự cho phép của người sử dụng.
3) BSD 2-Clause “Simplified” or “FreeBSD” license
Nội dung: https://opensource.org/licenses/BSD-2-Clause
Điều khoản: về cơ bản hầu như giống BSD 3-Clause. Nhưng BSD 2-Clause yêu cầu: "Tên của chủ sở hữu, và những người đóng góp trước đó không được sử dụng để quảng cáo cho bất kỳ phiên bản phái sinh nào mà không có được sự cho phép bằng văn bản của người dùng hiện tại".
4) GNU General Public License ( GPL )
Nội dung: https://www.gnu.org/licenses/gpl.html
- Được phân phối bản đã được thay đổi đó .
- Được thay đổi chương trình để sử dụng cho mục đích cá nhân .
- Được sao chép và phân phối chương trình, được yêu cầu trả phí cho việc phân phối đó .
- Khi sao chép và phân phối chương trình, phải đính kèm các thông báo về bản quyền gốc và không bảo hành( trừ trường hợp có văn bản thêm về quy định bảo hành)
- Khi phân phối bản đã được thay đổi bởi bản thân , phải chú thích rõ đó là bản đã được thay đổi, các thành phần được thay đổi, và áp dụng giấy phép GNU cho bản đã được thay đổi đó .
- Khi phát hành chương trình phải công khai mã nguồn của chương trình, đồng thời phải công bố mã nguồn của chương trình trong tối thiểu 3 năm mà không được đòi một khoản phí nào từ những người yêu cầu mã nguồn trừ chi phí vận chuyển hay tương đương .
5) GNU Library or “Lesser” General Public License ( LGPL )
Nội dung: https://www.gnu.org/copyleft/lesser.html
Điều khoản:
- LGPL là phiên bản sửa đổi của giấy phép GPL .
- Giấy phép này thường bị hạn chế đối với các thư viện phần mềm.
- Cung cấp sự bảo vệ ít hơn so với GPL.
- Nó cho phép các chương trình không phải là Open source có thể truy cập hoặc sử dụng các thư viện nguồn mở mà không phải công khai mã nguồn như giấy phép GPL .
6) MIT License
Nội dung: https://opensource.org/licenses/MIT
Điều khoản:
- Giấy phép MIT là loại giấy phép cho phép sử dụng mã nguồn tự do nhất , nó có thể kết hợp với các mã nguồn khác và đảm bảo tương thích theo điều kiện của mọi loại giấy phép khác .
- Có thể sử dụng, sao chép, sửa đổi, hợp nhất, xuất bản, phân phối và/hoặc bán các bản sao của phần mềm mà không vi phạm bản quyền.
Bạn chỉ cần tuân thủ điều kiện duy nhất sau:
- Thông báo bản quyền và thông báo cho phép của phần mềm gốc sử dụng giấy phép MIT sẽ phải bao gồm trong tất cả các bản sao hoặc phần quan trọng của phần mềm .
7) Mozilla Public License 2.0 ( MPL )
Nội dung: https://www.mozilla.org/en-US/MPL/2.0/
Điều khoản:
- MPL là sự kết hợp giữa giấy phép BSD có chỉnh sửa và giấy phép GNU .
- Một số lập trình viên đóng góp cho cộng đồng phần mềm mã nguồn mở nhưng không muốn từ bỏ hoàn toàn quyền sở hữu đối với những sửa đổi của họ và MPL là một ví dụ điển hình nhất đáp ứng nhu cầu này của họ .
- Nó ra đời để giúp phân phối trình duyệt web Mozilla ( nền tảng nguồn mở của Netscape ).
- MPL yêu cầu việc công bố mã nguồn của mọi thay đổi được đưa ra công chúng .
- Thời gian yêu cầu để công bố được giới hạn trong vòng khoảng 6 tháng – 1 năm tuỳ theo từng trường hợp .
8) Sun Industry Standards Source License 1.2 ( SISSL )
Nội dung: https://opensource.org/licenses/sisslpl
Điều khoản:
- Đối với phần mềm có áp dụng giấy phép này, mã nguồn gốc được công bố theo một phiên bản nào đó của giấy phép , người sử dụng sẽ luôn phải sử dụng mã gốc đó theo các điều khoản của phiên bản đó .
- Không ai có quyền chỉnh sửa các điều khoản áp dụng cho mã nguồn gốc ngoài Sun .
Tóm tắt
GPL: Một khi sử dụng và phân phối , bắt buộc phải sử dụng giấy phép GPL , không được phép đóng mã nguồn và thay đổi giấy phép .
LGPL: là giấy phép tự do “ít ràng buộc” hơn, là giấy phép sửa đổi của GPL , được sử dụng cho một số thư viện phần mềm.
MPL: MPL dung hoà giữa BSD và GPL . MPL cho phép dùng MPL software để tạo ra một sản phẩm khác ( thương mại hoặc không ) , tuy nhiên nếu thay đổi MPL software thì phải được đưa miễn phí lên Internet .
Apache: được phép đóng mã nguồn, thương mại hoá và giữ bản quyền sản phẩm.
BSD: là giấy phép tự do “ít ràng buộc” hơn , các giấy phép kiểu BSD để những sản phẩm phái sinh được tái phân phối như phần mềm thương mại .
Khi sửa đổi phải đưa mã nguồn ra thành mã nguồn mở?
- BSD : Không cần
- GPL , LGPL , MPL : Yêu cầu
Khi sử dụng có phải đưa mã nguồn ra thành mã nguồn mở?
- BSD , LGPL , MPL : Không
- GPL : Có