Blog FOSS by Lê Trung Nghĩa

https://letrungnghia.mangvn.org

Giấy phép Apache (v2) - Tổng quan

P { margin-bottom: 0.21cm; }A:link { }

The Apache License (v2) - An Overview

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

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

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

Lời người dịch: Giấy phép Apache phiên bản 2 (v2) được Sáng kiến Nguồn Mở - OSI (Open Source Initiative) thừa nhận như một giấy phép phổ biến và được phát triển rộng rãi với một cộng đồng mạnh. “Hệ quả là giấy phép được triển khai rộng rãi thậm chí dù nó chỉ được sử dụng khoảng 2% các dự án được cấp phép nguồn mở trên kho phần mềm Sourceforge”. “Giấy phép Apache v2: (1) trao rõ ràng các quyền bằng sáng chế ở những nơi cần thiết để vận hành, sửa đổi và phân phối phần mềm; (2) cho phép mã mà nó bao trùm được gộp vào được trong các dự án nguồn đóng”.

Giấy phép Apache được Sáng kiến Nguồn Mở - OSI (Open Source Initiative) thừa nhận như một giấy phép phổ biến và được phát triển rộng rãi với một cộng đồng mạnh. Tất cả các dự án của Quỹ Phần mềm Apache - ASF (Apache Software Foundation), bao gồm cả dự án máy chủ Apache HTTP (Apache HTTP Server) mà phần mềm đó trang bị cho hơn một nửa các máy chủ web trên Internet, sử dụng giấy phép này. Hệ quả là giấy phép được triển khai rộng rãi thậm chí dù nó chỉ được sử dụng khoảng 2% các dự án được cấp phép nguồn mở trên kho phần mềm Sourceforge. Đây là một giấy phép thú vị để so sánh với giấy phép Phân phối Phần mềm Berkeley - BSD (Berkeley Software Distribution), mà nó giống theo một vài cách thức. Tài liệu này có ý định đưa ra các tính năng chính của giấy phép Apache trong một tóm tắt toàn diện và thân thiện, và bổ sung thêm để lưu ý tới một số chi tiết về lịch sử và sự sử dụng của nó. Bản thân giấy phép có thể được đọc tại http://www.opensource.org/licenses/apache2.0.php.

Lịch sử của giấy phép Apache

Bắt đầu trong năm 1995, Nhóm Apache (sau này là Quỹ Phần mềm Apache) đã phát hành các phiên bản thành công của máy chủ HTTPD nổi tiếng của họ. Giấy phép ban đầu của họ về cơ bản là y hệt như giấy phép BSD cũ, chỉ có cá tên của các tổ chức được thay đổi. Khi Berkeley đã chấp nhận lý lẽ được đặt vào nó từ Quỹ Phần mềm Tự do – FSF (Free Software Foundation) và bỏ đi mệnh đề quảng cáo của họ khỏi giấy phép BSD, thì Apache cũng làm như vậy và đã tạo ra giấy phép Apache v1.1 - một biến thể một chút trong giấy phép BSD được sửa đổi. Vào năm 2004 Apache đã quyết định rời khỏi mô hình BSD một chút cơ bản hơn, và đã đưa ra giấy phép Apache v2 (Apache License v2).

Các tính năng chính của giấy phép Apache v2

Giống như tất cả các giấy phép, giấy phép Apache v2 trao các quyền nhất định theo các điều kiện nhất định. Ngắn gọn thì người nhận giấy phép của một phần mềm được cấp phép Apache v2 có thể:

  • sao chép, sửa đổi và phân phối phần mềm được bao trùm ở dạng mã nguồn và/hoặc nhị phân

  • thi hành các quyền của bằng sáng chế mà có thể thường chỉ mở rộng cho người cấp phép miễn là:

  • tất cả các bản sao, được sửa đổi hoặc không được sửa đổi, đi kèm với một bản sao giấy phép

  • tất cả các sửa đổi được đánh dấu rõ ràng như đang là tác phẩm của người sửa đổi

  • tất cả các lưu ý bản quyền, thương hiệu và các quyền bằng sáng chế được tái thể hiện một cách chính xác trong các bản sao được phân phối

  • người nhận giấy phép không sử dụng bất kỳ thương hiệu nào thuộc về người trao giấy phép. Hơn nữa, sự trao các quyền bằng sáng chế được rút bỏ một cách đặc biệt nếu:

  • người nhận giấy phép bắt đầu hành động pháp lý chống lại (những) người cấp phép đối với những vi phạm bằng sáng chế trong phần mềm được bao trùm. Việc viết lại này của giấy phép BSD cố gắng đạt được một ít điều. Trước hết, nó bổ sung một sự trao các quyền bằng sáng chế một cách rõ ràng ở những nơi ddieuf dó là cần thiết để vận hành, sửa đổi và phân phối phần mềm. Một số người viện lý rằng một sự trao như vậy là ẩn theo các giấy phép nguồn mở khác, nhưng giấy phép Apache v2 nói nó ra, cũng như rút bỏ rõ ràng sự trao đó trong hoàn cảnh được nêu ở trên. Nó cũng bao gồm những định nghĩa cứng cáp của những khái niệm nó sử dụng, đưa ra sự chắc chắn hơn như đối với ý nghĩa có ý định của nó. Trong số đó là một định nghĩa của Người đóng góp mà bao gồm tính năng thú vị khác của giấy phép. Một Người đóng góp, như để phân biệt với ai đó mà chỉ sửa đổi phần mềm, cũng trao một giấy phép cho sự sửa đổi của họ ngược về cho các tác giả gốc ban đầu. Cơ chế này, nếu được thực thi, làm đơn giản hóa sự kiểm soát của mã. Cuối cùng giấy phép v2 là sử dụng được cho các dự án khác mà không cần thay thế từ ngữ trong bản thân tài liệu của giấy phép.

Các tính năng khác của giấy phép Apache v2

Một kết quả không mong đợi của sự tạo ra giấy phép Apache v2 là nó đã trở nên không tương thích với giấy phép GPLv2. Các phiên bản trước, dựa nhiều vào giấy phép BSD, từng là tương thích. Tuy nhiên hạn chế trong v2 mà kết thúc sự trao các quyền bằng sáng chế nếu người nhận giấy phép kiện về vi phạm bằng sáng chế được Quỹ Phần mềm Tự do xem như một hạn chế mà không hiện diện trong GPLv2. Điều này đúng là vấn đề, mã mà được cấp phép theo giấy phép Apache v2 không thể kết hợp được với mã được cấp phép theo GPLv2 và không thể phân phối được. Bản thân Quỹ Phần mềm Apache viện lý rằng phần 7 của GPLv2 (nó kết thúc quyền phân phối nếu một bên ở bên ngoài đặt những hạn chế bổ sung lên người phân phối) là tương tự đủ cho mệnh đề bằng sáng chế của chúng làm cho chúng có hiệu lực đối với hạn chế y hệt. Không may, như các giấy phép đang tồn tại, quan điểm được chấp nhận một cách phổ biến vẫn là chúng không tương thích với nhau.

Tuy nhiên, với phiên bản GPLv3, tính không tương thích này không còn không vượt qua được nữa. GPLv3 cho phép bổ sung đối với một mệnh đề trả đũa bằng sáng chế mà hiệu quả của nó là cho phép mã từ một dự án được cấp phép GPLv3 kết hợp được với mã từ một dự án được cấp phép Apache v2. Vì thế, một cột mốc đã đạt được và 2 giấy phép không còn không tương thích với nhau nữa.

Giống như giấy phép BSD, giấy phép Apache v2 cho phép mã mà nó bao trùm sẽ gộp vào được trong các dự án nguồn đóng.

Giấy phép Apache v2 làm được gì?

Những điểm liệt kê dưới đây có ý định tóm tắt các điểm nổi bật của giấy phép Apache v2. Chúng không có ý định như một mô tả đầy đủ các tính năng của nó. Giấy phép Apache v2:

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

  • cho phép mã mà nó bao trùm được gộp vào được trong các dự án nguồn đóng

OSS Watch đã đưa ra một tài liệu nhấn mạnh các vấn đề pháp lý chính để xem xét khi phát hành mã của bạn theo một giấy phép nguồn mở.

The Apache License is recognised by the Open Source Initiative as a popular and widely deployed licence with a strong community. All of The Apache Software Foundation’s projects, including the Apache HTTP Server project whose software powers more than half of the Internet’s web servers, use this licence. Consequently the licence is widely deployed even though it is used by only about two percent of the open source-licensed projects on the software repository Sourceforge. It is an interesting licence to compare with the Berkeley Software Distribution (BSD) licence, which it resembles in some ways. This document attempts to draw together the main features of the Apache 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/apache2.0.php.

History of the Apache License

Beginning in 1995, the Apache Group (later the Apache Software Foundation) released successive versions of their well-known httpd server. Their initial licence was essentially the same as the old BSD licence, with only the names of the organisations changed. When Berkeley accepted the argument put to it by the Free Software Foundation and retired their advertising clause f-rom the BSD licence, Apache did likewise and cre-ated the Apache License v1.1 - a slight variation on the modified BSD licence. In 2004 Apache decided to depart f-rom the BSD model a little more radically, and produced the Apache License v2.

Main Features of the Apache License v2

Like all licences the Apache License v2 grants certain rights under certain conditions. In brief a licensee of Apache Licensed V2 software can:

  • copy, modify and distribute the covered software in source and/or binary forms

  • exercise patent rights that would normally only extend to the licensor provided that:

  • all copies, modified or unmodified, are accompanied by a copy of the licence

  • all modifications are clearly marked as being the work of the modifier

  • all notices of copyright, trademark and patent rights are reproduced accurately in distributed copies

  • the licensee does not use any trademarks that belong to the licensor Furthermore, the grant of patent rights specifically is withdrawn if:

  • the licensee starts legal action against the licensor(s) over patent infringements within the covered software This rewriting of the BSD licence tries to achieve a few things. Firstly it adds an explicit grant of patent rights whe-re that is needed to operate, modify and distribute the software. Some argue that such a grant is implicit in other open source licences, but the Apache License v2 spells it out, as well as explicitly withdrawing that grant in the circumstance mentioned above. It also contains solid definitions of the concepts it uses, providing more certainty as to its intended meaning. Among these is a definition of Contributor that contains another interesting feature of the licence. A Contributor, as distinct f-rom someone who just modifies the software, also grants a licence to their modification back to the original authors. This mechanism, if taken up, simplifies control of the code. Finally the v2 licence is usable by other projects without the need to replace wording in the licence document itself.

Other Features of the Apache License v2

One unintended upshot of the creation of the Apache License v2 is that it became incompatible with the GPL v2. Previous versions, being heavily based on the BSD licence, were compatible. However the restriction in v2 that terminates the grant of patent rights if the licensee sues over patent infringement is seen by the Free Software Foundation as a restriction that is not present in the GPL v2. This being the case, code that is licensed under the Apache License v2 cannot be combined with GPL v2-licensed code and distributed. The Apache Software Foundation itself argues that the GPL v2’s section 7 (which terminates the right to distribute if an external body places additional restrictions on the distributor) is similar enough to their patent clause to make them effectively the same restriction. Unfortunately, as the licences stand, the commonly accepted view remains that they are incompatible.

However, with the release of the GPL v3, this incompatibility is no longer insurmountable. The GPL v3 allows for the addition of a patent retaliation clause whose effect is to allow code f-rom a GPL v3-licensed project to be combined with code f-rom an Apache 2-licensed project. So, a major milestone has been acheived and the two licences are no longer incompatible.

Like the BSD licence, the Apache License v2 permits code that it covers to be subsumed into closed source projects.

What Does The Apache License v2 Do?

These bullets are intended to summarise the salient points of the Apache License v2. They are not intended as a full description of its features. The Apache License v2

  • explicitly grants patent rights whe-re necessary to operate, modify and distribute the software

  • permits code that it covers to be subsumed into closed source projects

OSS Watch has produced a document that highlights the main legal issues to consider when releasing your code 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