Blog FOSS by Lê Trung Nghĩa

https://letrungnghia.mangvn.org


Giấy phép Công cộng Mozilla v1.1 - Tổng quan

The Mozilla Public License v 1.1 - An Overview

By Rowan Wilson, Published: 10 November 2005, Reviewed: 14 May 2012

Theo: http://www.oss-watch.ac.uk/resources/mpl

Bài được đưa lên Internet ngày: 14/05/2012

Giấy phép Công cộng Mozilla – MPL (Mozilla Public License) thường được miêu tả như là nằm giữa sự khắc khe của Giấy phép Công cộng Chung – GPL (General Public License) và sự dễ dãi của Giấy phép Phân phối Phần mềm Berkeley - BSD (Berkeley Software Distribution License). Nó không được sử dụng rộng rãi như GPL hay BSD, nhưng tính mềm dẻo và việc phác thảo thận trọng của nó ngụ ý rằng nó đang trở nên phổ biến hơn. Tài liệu này có ý định nêu các tính năng của MPL trong một tóm tắt thân thiện và toàn diện, và bổ sung thêm để lưu ý một số chi tiết về lịch sử và sử dụng của nó. Bản thân giấy phép có thể đọc tại http://www.opensource.org/licenses/mozilla1.1.php.

Lịch sử của MPL

Đầu năm 1998 Netscape Communications đã quyết định dừng lấy tiền cho sản phẩm trình duyệt web của họ là Netscape Communicator. Từng là người dẫn đầu thị trường, lợi nhuận của Netscape Communications từng bị xói mòn đáng kể vì Microsoft đưa trình duyệt web của riêng hãng (Internet Explorer) vào như một phần của hệ điều hành Windows. Sau quyết định trao tặng sản phẩm trình duyệt của họ ở dạng nhị phân, Netscape Communications cũng sớm quyết định phát hành mã nguồn trình duyệt đó theo một giấy phép nguồn mở.

Làm cho Communicator thành nguồn mở từng không phải là một nhiệm vụ dễ dàng. Nó từng có các thành phần được cấp phép từ các bên thứ 3 mà đã không trao cho Netscape quyền để phát hành nguồn của tác phẩm của họ. Nó cũng có chứa các mã mật mã mà, khi đó, có thể không được xuất khẩu tự do từ Mỹ.

Mã đó đã phải làm việc một cách rộng rãi để tạo ra một phiên bản mà nguồn của nó có thể phát hành được.

Còn có cả những sự phức tạp khác nữa. Netscape đã muốn có khả năng thực hiện những sửa đổi cho mã được các lập trình viên nguồn mở thực hiện và cấp phép lại cho họ để sử dụng trong các sản phẩm thương mại. Họ cũng muốn các công ty thương mại khác xây dựng các trình duyệt của riêng họ trên đỉnh kho mã của Netscape. Cả 2 yêu cầu đó làm cho việc sử dụng giấy phép nguồn mở phổ biến nhất, GPL (GNU General Public License) là không thể. Thay vào đó, Netscape Communications đã phác thảo giấy phép của riêng họ, gọi nó là Giấy phép Công cộng Netscape – NPL (Netscape Public License).

NPL, giống như GPL, đòi hỏi tất cả những sửa đổi mã mà nó bao trùm phải được phát hành theo NPL, nếu chúng đúng là được phát hành. Tuy nhiên, điều thú vị là (và không giống như GPL) nó đã không khăng khăng rằng mã mới mà tương tác được với mã được bao trùm sẽ được cấp phép theo NPL, thậm chí nếu mã được bao trùm đã được sửa đổi để làm việc sát hơn với mã mới.

Phản ứng của cộng đồng nguồn mở từng là thù địch. Điều khoản đã cho phép Netscape Communications cấp phép lại cho mã được đóng góp từng được xem như một cơ chế đánh đống tri thức nguồn mở vì lợi nhuận trong khi trao ngược lại rất ít. May thay, Netscape Communications cũng đã tạo ra một giấy phép đã không đưa vào tính năng vuốt lại này, mà nếu khác là tương tự đáng kể vói NPL. Được đặt tên là Giấy phép Công cộng Mozilla – MPL (Mozilla Public License), sau danh nghĩa làm việc của Netscape cho mã của mình, giấy phép này đã được thiết kế để bao trùm mã mới từng được viết để tương tác với mã được NPL bao trùm. Giấy phép này đã chứng minh được sự phổ biến trong các lập trình viên nguồn mở, và sau đó được OSI phê chuẩn.

Các tính năng chính của MPL

MPL, giống như bất kỳ giấy phép nào, trao các quyền theo các điều khoản nhất định. Tuy nhiên, không giống như các giấy phép nguồn mở khác, MPL chia việc trao các quyền thành 2 phần - một phần có liên quan tới trao các quyền của tác giả ban đầu của mã, và phần kia liên quan tới sự trao các quyền của những người khác mà đã bổ sung thêm mã vào tác phẩm của tác giả ban đầu đó.

Tác giả ban đầu trao các quyền sau:

  • để sử dụng, tái sinh, sửa đổi, hiển thị, thực thi, cấp phép phụ và phân phối nguồn, và các phiên bản phái sinh của nguồn;

  • các quyền bằng sáng chế để sử dụng và làm cho sẵn sàng cho mã gốc ban đầu (ở những nơi phù hợp);

  • để phân phối các tác phẩm có chứa mã kết hợp với mã mới, và cấp phép cho mã mới theo bất kỳ cách gì mà người phân phối mong muốn. Người đóng góp trao các quyền khác một cách tinh tế:

  • để sử dụng, tái sinh, sửa đổi, hiển thị, thực thi, cấp phép phụ và phân phối nguồn của những sửa đổi;

  • các quyền bằng sáng chế để sử dụng và làm cho sẵn sàng cả những sửa đổi và toàn bộ tác phẩm đó (mã gốc ban đầu cộng với những sửa đổi);

  • để phân phối các tác phẩm có chứa mã kết hợp với mã mới, và để cấp phép cho mã mới theo bất kỳ cách gì mà người phân phối muốn. Cả 2 sự trao đó đều tuân thủ các điều kiện sau:

  • tất cả các bản sao được phân phối (bản gốc hoặc bản phái sinh) phải bao gồm mã nguồn hoặc tư vấn cách để có được mã nguồn;

  • tất cả các sửa đổi được mô tả trong tài liệu đi kèm;

  • bất kỳ các quyền bằng sáng chế nào cần thiết để vận hành phần mềm sẽ được mô tả rõ ràng trong tài liệu đi kèm;

  • tất cả các bản sao mã, gốc hoặc phái sinh, có một tuyên bố về bản quyền và một loại trừ các đảm bảo được đính kèm;

  • tất cả các tệp sửa đổi phải được phân phối theo MPL. Các tệp mới gồm toàn bộ mã mới không nhất thiết phải được phân phối theo MPL. Như được thấy từ những sự trao tặng và các nhà cung cấp, MPL khác đáng kể với GPL theo cách mà nó điều hành cách mà các tác phẩm có chứa mã được cấp phép MPL có thể được phân phối và cấp phép. Đơn giản nói, ai đó có thể lấy một tác phẩm được cấp phép MPL và xây dựng trên nó với các thành phần mới. Tác phẩm kết quả có thể được phân phối với MPL bao trùm cả sự sử dụng tác phẩm gốc và bất kỳ giấy phép nào bao trùm phần còn lại. Rõ ràng theo cách này một công ty có thể bổ sung thêm các thành phần nguồn đóng vào một tác phẩm được cấp phép MPL và vì thế xây dựng một sản phẩm sở hữu độc quyền được.

MPL làm được gì?

Những lưu ý bên dưới có ý định tóm tắt các phần nổi bật của MPL. Chúng không có ý định như là một mô tả đầy đủ các tính năng của MPL. MPL:

  • rõ ràng trao các quyền bằng sáng chế ở những nơi cần thiết để vận hành phần mềm;

  • giữ bản thân mã được bao trùm là nguồn mở;

  • cho phép các mở rộng mã sẽ được cấp phép theo các cách thức không mở.

Trong năm 2010 Quỹ Mozilla đã khởi tạo một tư vấn để cập nhật MPL. Vào tháng 01/2012, MPL v2 đã được OSI phê chuẩn.

OSS Watch đã có một tài liệu nhấn mạnh các vấn đề pháp lý chính để cân nhắc khi Làm cho mã của bạn sẵn sàng theo một giấy phép nguồn mở (bản dịch tiếng Việt).

The Mozilla Public License (MPL for short) is often portrayed as being the middle-ground between the strictness of the GNU General Public License (GPL) and the tolerance of the Berkeley Software Distribution License (BSD). It is not used anywere near as widely as either the GPL or the BSD licences, but its flexibility and thoughtful drafting mean that it is becoming more popular. This document attempts to draw together the main features of the Mozilla Public License into a friendly and comprehensible digest, and in addition to note some details about its history and usage. The licence itself can be read at http://www.opensource.org/licenses/mozilla1.1.php.

History of the MPL

In early 1998 Netscape Communications decided to stop c-harging for their web browser product Netscape Communicator. Having once been the market leader, Netscape Communications’ profitability had been eroded significantly by Microsoft’s bundling of their own web browser (Internet Explorer) as part of the Windows operating system. Following the decision to give their browser product away in binary form, Netscape Communications also soon decided to release the source code for the browser under an open source licence.

Making Communicator open source was not an easy task. It contained components licensed f-rom third parties who had not given Netscape permission to release the source of their work. It also contained cryptography code that, at the time, could not be freely exported f-rom the United States. The code had to be worked on extensively to produce a version whose source could be released.

There were other complications too. Netscape wanted to be able to take modifications to the code made by open source developers and relicense them for use in commercial products. They also wanted other commercial companies to build their own browsers on top of the Netscape codebase. Both these requirements made the use of the most common open source licence, the GNU General Public License, impossible. Instead, Netscape Communications drafted their own licence, calling it the Netscape Public License (NPL).

The NPL, like the GPL, demands that all modifications to code that it covers be released under the NPL, if they are released at all. Interestingly, however, (and unlike the GPL) it did not insist that new code which interacted with the covered code be licensed under the NPL, even if the covered code was modified to work more closely with the new code.

The reaction of the open source community was hostile. The provision that allowed Netscape Communications to relicense contributed code was seen as a mechanism for farming open source expertise for profit while giving little back. Fortunately, Netscape Communications had also produced a licence which did not include this clawback feature, but was otherwise substantially similar to the Netscape Public License. Named the Mozilla Public License, after Netscape’s working title for its code, this licence was designed to cover new code that was written to interact with NPL-covered code. This licence proved popular among open source developers, and was subsequently accredited by the Open Source Initiative.

Main Features of the MPL

The MPL, like any licence, grants rights under certain provisos. Unlike other open source licences, however, the MPL divides the granting of rights into two sections - one concerning the grant of rights by the code’s initial author, and another concerning the grant of rights by other people who have added code to the initial author’s work.

The initial author grants these rights:

  • to use, reproduce, modify, display, perform, sublicense and distribute the source, and modified versions of the source;

  • patent rights to use and make available the original code (whe-re relevant);

  • to distribute works which contain the code in combination with new code, and to license the new code in any way the distributor wishes. The contributor grants these subtly different rights:

  • to use, reproduce, modify, display, perform, sublicense and distribute the source of their modifications;

  • patent rights to use and make available both the modifications and the entire work (original code plus modifications);

  • to distribute works which contain the code in combination with new code, and to license the new code in any way the distributor wishes. Both these grants are subject to the following conditions:

  • all distributed copies (original or modified) must include the source code or advice on how to obtain the source code;

  • all modifications are described in accompanying documentation;

  • any patent rights necessary to operate the software are clearly described in accompanying documentation;

  • all copies of the code, original or modified, have a statement of copyright and an exclusion of warranties attached;

  • all modified files must be distributed under the MPL. New files containing entirely new code need not be distributed under the MPL. As can be seen f-rom these grants and provisos, the MPL differs most significantly f-rom the GPL in the way that it governs how works containing the MPL-licensed code can be distributed and licensed. Put simply, someone can take an MPL-licensed work and build upon it with new components. The resulting work can be distributed with the MPL covering the use of the original work and any licence covering the rest. Clearly in this way a company could add closed source components to an MPL-licensed work and thus build a proprietary product.

What Does The MPL Do?

These bullets are intended to summarise the salient parts of the MPL. They are not intended as a full description of its features. The Mozilla Public License

  • explicitly grants patent rights whe-re necessary to operate the software;

  • keeps the covered code itself open source;

  • allows extensions of the code to be licensed in non-open ways.

In 2010 the Mozilla Foundation initiated a consultation to up-date the MPL. In January 2012, version 2 of the Mozilla Public License was approved by the Open Source Initiative.

OSS Watch has produced a document that highlights the main legal issues to consider when Making your code available under an open source licence.

Dịch: Lê Trung Nghĩa

letrungnghia.foss@gmail.com

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây