The
Mozilla Public Licence version 2 - An Overview
By Rowan Wilson,
Published: 06 March 2012, Reviewed: 06 March 2012
Bài được đưa lên
Internet ngày: 06/03/2012
Hôm 03/01/2012, Giấy
phép Công cộng Mozilla – MPL (Mozilla Public License) đã được
OSI phê chuẩn. Nó cũng được xem như là một giấy phép
của Phần mềm Tự do (PMTD) của Quỹ Phần mềm Tự do –
FSF (Free Software Foundation). Giống như giấy phép trước đó
của nó, Mozilla
Public License v 1.1, nó tìm cách áp đặt một mức giới
hạn 'copyleft' vừa phải lên những tùy biến mã mà nó
bao trùm. Giấy phép có thể đọc tại:
http://www.opensource.org/licenses/MPL-2.0.
Lịch sử của
MPLv2
12 năm sau khi tạo ra
MPL gốc ban đầu, Quỹ Mozilla đã quyết định rằng những
vấn đề nhất định có thể được giải quyết hữu
dụng với giấy phép đó. Vào đầu năm 2010 họ đã đặt
ra một qui trình tư vấn mà - theo cách y hệt như khi họ
đã phát triển và phát hành phần mềm - có thể mời sự
đóng góp từ các thành viên có quan tâm từ các tổ chức
nhà nước và khác.
Trong số các vấn đề
mà Quỹ Mozilla đã muốn giải quyết từng là sự tương
thích của mã MPL với mã theo các giấy phép PMTDNM phổ
biến khác và sự làm rõ và nét riêng biệt của Mỹ đối
với nội dung của MPL v1.1. Trong quá trình gần 2 năm, 3
phiên bản alpha, 2 phiên bản beta và 2 phiên bản ứng viên
đã được đưa ra, một cộng đồng rộng lớn các bên
có quan tâm đã làm việc để cải thiện và hiện đại
hóa giấy phép này.
Các tính năng chính
của MPLv2
Điều khoản copyleft
của MPLv2 là ‘yếu’
- nghĩa là nó bao trùm một tập con các tác phẩm sẽ 'dựa
vào' mã được bao trùm của nó. Giống như phiên bản
trước, qui tắc điều hành liệu một tùy biến đặc thù
có buộc phải mang giấy phép MPLv2 hay không được dựa
vào các phần phân chia của tệp trong phần mềm. Các tệp
được tùy biến phải là MPLv2, nhưng toàn bộ các tệp
mới có thể mang một giấy phép mà người tùy biến lựa
chọn. MPLv2 cũng cho phép mã được bao trùm của nó sẽ
được tích hợp vào các dự án theo một tập hợp đặc
biệt của các giấy phép PMTDNM 'thứ cấp' ( GNU GPLv2, GNU
LGPL v2.1, GNU Affero GPL v3 và tất cả các phiên bản tiếp
sau của các giấy phép đó), vì thế mở rộng tính tương
thích của phần mềm mà nó bao trùm.
Vì phần mềm từng
được phân phối theo MPLv1.1 có thể tự động được
phân phối theo MPLv2 (nhờ phần 6.2 của giấy phép trước)
nên các tính năng tương thích mới đã nêu ra một câu
hỏi thú vị: điều gì sẽ xảy ra nếu người chủ gốc
ban đầu không muốn tính tương thích này được mở
rộng, với ngụ ý tham dự của nó rằng mã của họ có
thể kết thúc trong một dự án theo một giấy phép khác?
MPLv2 làm việc với điều này bằng cách cung cấp một
lưu ý bổ sung có thể được đưa vào phần mềm mà nó
bao trùm, nói rằng tác giả không muốn các tính năng
tương thích của giấy phép sẽ được sử dụng với mã
của chúng. Khi 'việc nâng cấp' một mẩu phần mềm có
giấy phép MPLv1.1 sang MPLv2, chỉ người chủ gốc ban đầu
của mã đó có thể quyết định cho một lưu ý như vậy
cần phải được áp dụng. Nếu bất kỳ ai khác người
chủ gốc ban đầu đang nâng cấp giấy phép đó, thì lưu
ý phải được đưa vào.
Cũng theo lối này,
MPLv2 đã sửa đổi bổ sung các điều kiện xung quanh sự
kết thúc cấp phép các bằng sáng chế. Chúng mang giấy
phép vào trong sự tương thích với Giấy phép Apache v2, và
vì thế cho phép mã có giấy phép Apache v2 kết hợp được
trực tiếp vào các tệp được MPLv2 bao trùm. Đối với
cả 2 giấy phép thì tính tương thích đó đo đếm nó là
quan trọng để nhận thức được những giới hạn của
chúng. Chúng cho phép mã có giấy phép Apache v2 sử dụng
được trong các chương trình có giấy phép MPLv2, và mã
có giấy phép MPLv2 sự dụng được theo các điều kiện
nhất đeịnh trong các chương trình theo các phiên bản
khác nhau của GNU GPL. Chúng không cho phép kết hợp mã
theo chiều ngược lại; ví dụ, đưa mã GNU GPLv3 vào trong
chương trình được cấp phép MPLv2, hoặc mã được cấp
phép MPLv2 vào một chương trình có giấy phép Apache v2 có
thể vẫn không thể nếu không có sự cho phép bổ sung từ
các người chủ của phần mềm.
Cũng như tính tương
thích được mở rộng, MPLv2 đưa ra nội dung pháp lý được
sửa đổi bổ sung để làm cho nó phù hợp tốt hơn với
những sử dụng và ép tuân thủ bên ngoài nước Mỹ.
Bằng văn bản, giấy phép đó cũng được làm ngắn hơn
và rõ ràng hơn.
Điều gì làm cho
MPLv2 khác với MPLv1.1?
Những lưu ý dưới
đây có ý định tóm tắt những gì là khác biệt về
MPLv2. Chúng không có ý định như là một bản mô tả đầy
đủ các tính năng của nó. So với Mozilla
Public License v1.1, thì Mozilla Public License v2:
- các điều kiện được sửa đổi bổ sung xung quan giới hạn cấp phép bằng sáng chế, làm cho nó tương thích với giấy phép Apache v2.
- giới thiệu tính tương thích với GNU GPLv2, GNU LGPL v2.1, GNU Affero GPL v3 và tất cả các phiên bản sau của những giấy phép đó.
- là đơn giản hơn và ngắn gọn hơn.
OSS Watch đã có một
tài liệu nhấn mạnh các vấn đề pháp lý chính để xem
xét 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).
On
3rd January 2012, version 2 of the Mozilla Public License (MPL) was
approved by the Open Source Initiative. It is also considered to be a
Free Software licence by the Free Software Foundation. Like its
predecessor, the Mozilla
Public License v 1.1, it seeks to impose a moderate level of
‘copyleft’ restriction on adaptations of code that it covers. The
licence can be read at http://www.opensource.org/licenses/MPL-2.0.
Twelve
years after the creation of the original Mozilla Public License, the
Mozilla Foundation decided that certain issues could be usefully
addressed with that licence. In early 2010 they put in place a
consultation process that - much in the same manner that they
developed and released software - would invite input from interested
members of the public and other organisations.
Among
the issues that the Mozilla Foundation wanted to address were
compatibility of MPL code with code under other popular Free and Open
Source Software (FOSS) licences and the clarity and US-specificity of
the MPL v1.1’s language. Over the course of almost two years, three
alpha releases, two beta releases and two release candidates, a large
community of interested parties worked to improve and modernise the
licence.
The
MPL v2’s copyleft provision is ‘weak’
- meaning that it covers a subset of works that are ‘based upon’
its covered code. Like its predecessor, the rule which governs
whether a specific adaptation must bear the MPL v2 or not is based
upon file divisions within the software. Adapted files must remain
MPL v2, but entirely new files may bear a licence of the adaptor’s
choice. The MPL v2 also allows its covered code to be incorporated
into projects under a specific set of other ‘secondary’ FOSS
licences (GNU GPLv2, GNU LGPL v2.1, GNU Affero GPL v3 and all
subsequent versions of those licences), thereby expanding
compatibility of software it covers.
As
software which was distributed under the MPL v1.1 can automatically
be distributed under the MPL v2 (thanks to section 6.2 of the former
licence) the new compatibility features raised an interesting
question: what if the original owner does not want this expanded
compatibility, with its attendant implication that their code could
end up within a project under a different licence? The MPL v2 deals
with this by providing an additional notice that can be added to
software it covers, stating that the author does not wish the
compatibility features of the licence to be used with their code.
When ‘upgrading’ a piece of MPL v1.1 software to MPL v2, only the
original owner of the code can decide that such a notice need not be
applied. If anyone other than the original owner is upgrading the
licence, the notice must be included.
Also
to this end, the MPL v2 has amended conditions around patent licence
termination. These bring the licence into compatibility with the
Apache License v2, and therefore allow Apache License v2 code to be
incorporated directly into MPL v2 covered files. For both these
compatibility measures it is important to realise their limitations.
They allow Apache License v2 code to be used in MPL v2 programs, and
MPL v2 code to be used under certain conditions in programs under
various versions of the GNU GPL. They do not allow code combination
in the opposite direction; for example, including GNU GPLv3 code in
an MPL v2-licensed program, or MPL v2-licensed code in an Apache
License v2 program would still be impossible without additional
permissions from the software’s owners.
As
well as expanded compatibility, the MPL v2 provides amended legal
language to make it accord better with uses and enforcement outside
the US. In rewriting, the licence has also been made shorter and
clearer.
These
bullet points are intended to summarise what is distinct about the
MPL v2. They are not intended as a full description of its features.
In comparison with the Mozilla
Public License v1.1, the Mozilla Public License v2:
- amended conditions around patent licence termination, making it compatible with the Apache Software License v2
- introduces compatibility with the GNU GPLv2, GNU LGPL v2.1, GNU Affero GPL v3 and all subsequent versions of those licences
- is simpler and shorter
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
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.