052.3 Bài 1
Chứng chỉ: |
Open Source Essentials |
---|---|
Phiên bản: |
1.0 |
Chủ đề: |
052 Giấy phép dành cho Phần mềm Mã nguồn Mở |
Mục tiêu: |
052.3 Giấy phép Phần mềm Linh hoạt |
Bài học: |
1 trên 1 |
Giới thiệu
Giấy phép linh hoạt (permissive) hiện là giấy phép mã nguồn mở được sử dụng rộng rãi nhất, trái ngược với các giấy phép hạn chế như Giấy phép Công cộng Chung GNU (GPL). Giấy phép phần mềm linh hoạt có xu hướng đơn giản và linh hoạt, đồng thời cung cấp nhiều quyền tự do cho tác giả của chúng — có lẽ đây là giấy phép có quyền tự do rộng rãi nhất trong số các giấy phép mã nguồn mở.
Loại giấy phép này trao các quyền tự do rộng rãi cho các nhà phát triển phần mềm liên quan đến việc sử dụng, sửa đổi và tái phân phối phần mềm, miễn là họ có công nhận tác giả gốc. Ví dụ: một người thường có thể phân phối một sản phẩm phái sinh theo giấy phép mã nguồn đóng, miễn là sản phẩm đó có bao gồm phần công nhận về tác giả của sản phẩm gốc.
Nguyên tắc đằng sau logic này là mục đích phổ biến phần mềm ở mức tối đa nhất. Giấy phép linh hoạt khẳng định sẽ mang lại lợi ích cho các cá nhân và cộng đồng bằng cách tạo điều kiện thuận lợi cho việc sử dụng phần mềm vì mục đích thương mại, đồng thời bảo vệ các quyền đo cho tác giả gốc thông qua việc ghi nhận và công nhận họ.
Không phải ngẫu nhiên mà các giấy phép phần mềm linh hoạt đầu tiên và quan trọng nhất lại được phát triển trong lĩnh vực học thuật (chẳng hạn như các giấy phép giống BSD của Đại học Berkeley ở California hay Giấy phép MIT/X11 của Viện Công nghệ Massachusetts). Chúng được gọi là giấy phép mã nguồn mở học thuật. Ảnh hưởng của các giấy phép này ở trong ngành lớn đến mức chúng đã đặt nền móng cho các giấy phép phần mềm linh hoạt tương tự vượt ra ngoài bối cảnh học thuật như Giấy phép Apache từ Tổ chức Phần mềm Apache.
Quyền và Nghĩa vụ của Giấy phép Phần mềm Linh hoạt
Nhìn chung, các giấy phép phần mềm linh hoạt phổ biến nhất sẽ cung cấp cho người được cấp phép quyền không giới hạn để:
- Sử dụng phần mềm
-
Bất kỳ ai cũng có thể sử dụng phần mềm được cấp giấy phép phần mềm linh hoạt (từ người dùng cá nhân, công ty thương mại đến cơ quan công quyền) và cho bất kỳ mục đích nào, dù là cá nhân hay chuyên nghiệp.
- Sửa đổi phần mềm
-
Phần mềm có thể được cải tiến, điều chỉnh hoặc thậm chí tích hợp dưới dạng một thành phần (ví dụ: thư viện) vào các phần mềm khác.
- Tái phân phối phần mềm
-
Nếu phần mềm được sửa đổi dưới dạng một sản phẩm phái sinh, nó có thể được tái phân phối theo các giấy phép khác nhau, bao gồm cả các giấy phép độc quyền.
Nghĩa vụ duy nhất giấy phép phần mềm linh hoạt yêu cầu thường là nghĩa vụ ghi công: Người được cấp phép được yêu cầu chỉ ra tên của tác giả gốc của phần mềm trong các sản phẩm phái sinh và kèm theo bản sao văn bản giấy phép trong mọi lần tái phân phối phần mềm.
Các tính năng của Giấy phép Phần mềm Linh hoạt quan trọng nhất
Phần này sẽ giải thích sự khác biệt giữa giấy phép MIT/X11, các giấy phép BSD phổ biến nhất và giấy phép Apache 2.0; tất cả những giấy phép này hiện nay đều đang được sử dụng rộng rãi.
Giấy phép MIT/X11
Giấy phép MIT/X11 (text: https://opensource.org/license/mit) còn được gọi là giấy phép X11; đây là một trong những giấy phép học thuật đã được đề cập ở trên. Giấy phép này được lấy tên từ phần mềm Hệ thống X Window do Viện Công nghệ Massachusetts phát triển vào năm 1987. Giấy phép này là một trong những giấy phép phần mềm linh hoạt lâu đời và phổ biến nhất, một phần vì ngôn ngữ đơn giản và rõ ràng của nó.
Giấy phép này cấp cho người được cấp phép các quyền để:
-
Sử dụng, sửa đổi và phân phối phần mềm
-
Thương mại hóa phần mềm (có hoặc không có sửa đổi)
-
Phát hành các sản phẩm phái sinh theo một giấy phép khác (ngay cả dưới dạng phần mềm mã nguồn đóng)
Nghĩa vụ duy nhất của người được cấp phép là đưa thông báo bản quyền và văn bản giấy phép vào mã nguồn của phần mềm hoặc các sản phẩm phái sinh từ nó.
Giấy phép MIT/X11 được coi là tương thích với tất cả các giấy phép copyleft quan trọng nhất, cả yếu và mạnh. Đặc biệt, giấy phép MIT/X11 còn tương thích với
-
Giấy phép Công cộng Chung GNU (GPL), phiên bản 2.0 và 3.0
-
Giấy phép Công cộng Chung GNU Thu hẹp (LGPL), phiên bản 2.0 và 3.0
-
Giấy phép Công cộng Mozilla (MPL)
Điều đó có nghĩa là các sản phẩm phái sinh của phần mềm được cấp phép ban đầu theo giấy phép MIT/X11 có thể được tái phân phối theo một trong các giấy phép nêu trên hoặc được đưa vào các dự án được phát hành theo một trong các giấy phép nêu trên.
Giấy phép BSD 2 Điều khoản
Giấy phép BSD 2 Điều khoản (text: https://opensource.org/license/bsd-2-clause) bắt nguồn từ giấy phép BSD nguyên bản được tạo ra vào năm 1980 bởi Đại học Berkeley ở California dưới dạng giấy phép cho BSD - hệ điều hành giống Unix của họ.
Giấy phép này nổi tiếng vì tính đơn giản và, đúng như tên gọi của nó, chỉ bao gồm hai điều khoản ngắn. Về cơ bản, nó cũng giống với giấy phép MIT/X11 ở điểm yêu cầu có phần ghi công tác giả trong phần mềm. Ngoài ra, Giấy phép BSD 2 ĐIều khoản còn yêu cầu người được cấp phép đưa văn bản giấy phép vào tài liệu và các tư liệu khác được cung cấp khi tái phân phối mã.
Tóm lại, giấy phép BSD 2 Điều khoản cấp các quyền để:
-
Sử dụng, sửa đổi và phân phối phần mềm
-
Thương mại hóa phần mềm (có hoặc không có sửa đổi)
-
Phát hành các sản phẩm phái sinh theo một giấy phép khác (ngay cả dưới dạng phần mềm mã nguồn đóng)
Người được cấp phép có nghĩa vụ:
-
Đính kèm thông báo bản quyền và văn bản giấy phép trong mã nguồn và mã nhị phân của phần mềm hoặc các sản phẩm phái sinh của nó
-
Đính kèm thông báo bản quyền và văn bản giấy phép trong tài liệu hoặc các tài liệu liên quan được cung cấp cùng với phần mềm
Giấy phép BSD 2 Điều khoản được coi là tương thích với tất cả các giấy phép copyleft phổ biến, cả yếu và mạnh. Đặc biệt, Giấy phép BSD 2 Điều khoản tương thích với:
-
Giấy phép Công cộng Chung GNU (GPL), phiên bản 2.0 và 3.0
-
Giấy phép Công cộng Chung GNU Thu hẹp (LGPL), phiên bản 2.0 và 3.0
-
Giấy phép Công cộng Mozilla (MPL)
Do đó, các sản phẩm phái sinh của phần mềm được cấp phép ban đầu theo giấy phép BSD 2 Điều khoản có thể được tái phân phối theo một trong các giấy phép nêu trên hoặc được đưa vào các dự án được phát hành theo một trong các giấy phép nêu trên.
Giấy phép BSD 3 Điều khoản
Giấy phép BSD 3 Điều khoản (text: https://opensource.org/license/bsd-3-clause) là một biến thể khác của giấy phép BSD ban đầu và chỉ bao gồm ba điều khoản. Đặc điểm chính để phân biệt giấy phép này với giấy phép BSD 2 Điều khoản họ hàng là “điều khoản không chứng thực” nhằm ngăn chặn việc tên của tác giả gốc bị lợi dụng để phân phối hoặc bán các sản phẩm phái sinh.
Giấy phép BSD 3 Điều khoản cấp cho người được cấp phép các quyền để:
-
Sử dụng, sửa đổi và phân phối phần mềm
-
Thương mại hóa phần mềm (có hoặc không có sửa đổi)
-
Phát hành các sản phẩm phái sinh theo một giấy phép khác (ngay cả dưới dạng phần mềm mã nguồn đóng)
Người được cấp phép có nghĩa vụ:
-
Đính kèm thông báo bản quyền và văn bản giấy phép trong mã nguồn và mã nhị phân của phần mềm hoặc các sản phẩm phái sinh của nó
-
Đính kèm thông báo bản quyền và văn bản giấy phép trong tài liệu hoặc các tài liệu liên quan khác được cung cấp cùng với phần mềm
-
Không trích dẫn tên của người giữ bản quyền hoặc những nhà phát triển đóng góp để xác nhận hoặc quảng bá các sản phẩm có nguồn gốc từ phần mềm này mà không có sự cho phép cụ thể trước bằng văn bản
Để giải thích nghĩa vụ thứ hai — “điều khoản không chứng thực” — hãy tưởng tượng một tình huống mà trong đó một công ty hoặc cá nhân tạo ra một sản phẩm phái sinh bắt nguồn từ phần mềm được cấp phép theo giấy phép phần mềm linh hoạt. Trong trường hợp không có điều khoản không chứng thực này, người được cấp phép có thể quảng bá sản phẩm mới bằng cách chỉ ra rằng nó là một sản phẩm phái sinh từ phần mềm của một nhà phát triển nổi tiếng nhằm hưởng lợi từ uy tín của họ.
Giống như người anh em của mình, giấy phép BSD 3 Điều khoản được coi là tương thích với tất cả các giấy phép copyleft quan trọng nhất, cả yếu và mạnh. Đặc biệt, giấy phép BSD 3 Điều khoản còn tương thích với:
-
Giấy phép Công cộng Chung GNU (GPL), phiên bản 2.0 và 3.0
-
Giấy phép Công cộng Chung GNU Thu hẹp (LGPL), phiên bản 2 và 3
-
Giấy phép Công cộng Mozilla (MPL)
Do đó, các sản phẩm phái sinh của phần mềm được cấp phép ban đầu theo giấy phép BSD 3 Điều khoản có thể được tái phân phối theo một trong các giấy phép nêu trên hoặc được đưa vào các dự án được phát hành theo một trong các giấy phép nêu trên.
Giấy phép Apache 2.0
Giấy phép Apache đầu tiên được phát triển bởi Tổ chức Phần mềm Apache - một tổ chức phi lợi nhuận được thành lập vào năm 1999 - để phân phối phần mềm của họ và giúp dễ dàng đưa nó vào các dự án khác. Sứ mệnh của giấy phép này là đảm bảo sự hợp tác trong phát triển phần mềm và áp dụng triết lý mã nguồn mở trên tinh thần thân thiện với doanh nghiệp.
Giấy phép Apache 2.0 (text: https://www.apache.org/licenses/LICENSE-2.0) có lẽ là giấy phép phổ biến nhất trong số các giấy phép phần mềm linh hoạt; nó có các điểm khác biệt so với các giấy phép đã được nhắc đến trước đó ở một số khía cạnh liên quan. Khía cạnh chính liên quan đến việc phân bổ quyền sáng chế cho từng người được cấp phép (bao gồm điều khoản liên quan đến việc chấm dứt giấy phép sáng chế) nhằm hạn chế và ngăn chặn mọi yêu cầu bồi thường thiệt hại do vi phạm bằng sáng chế.
Ngoài ra, có hai nghĩa vụ khác rất quan trọng. Người được cấp phép phải phát hành bất kỳ một bộ phận hoặc thành phần nào của phần mềm (tuân theo cùng một giấy phép Apache 2.0) mà không qua sửa đổi. Hơn nữa, người được cấp phép phải đặt một thông báo được làm nổi trong bất kỳ tệp đã sửa đổi nào để cho biết rằng người được cấp phép đã thay đổi những tệp đó.
Tổ chức Phần mềm Tự do — đơn vị khuyến khích và thúc đẩy việc sử dụng các giấy phép hạn chế — khuyến nghị rằng Apache 2.0 là giấy phép phần mềm linh hoạt tốt nhất để phân phối một số lượng nhỏ phần mềm và thư viện.
Giấy phép Apache 2.0 cấp cho người được cấp phép:
-
Quyền sử dụng, sửa đổi và phân phối phần mềm
-
Quyền thương mại hóa phần mềm (có hoặc không có sửa đổi)
-
Quyền phát hành các sản phẩm phái sinh theo giấy phép khác (kể cả dưới dạng phần mềm mã nguồn đóng)
-
Một giấy phép bằng sáng chế để sử dụng, bán, nhập khẩu hoặc chuyển giao phần mềm được cấp bằng sáng chế
-
Một giấy phép bằng sáng chế để sử dụng, bán, nhập khẩu hoặc chuyển giao phần mềm có thể vi phạm quyền sáng chế của một nhà phát triển đóng góp
Người được cấp phép có nghĩa vụ:
-
Đặt các thông báo được làm nổi trong bất kỳ tệp sửa đổi nào để cho biết rằng các tệp đã bị sửa đổi
-
Công bố tất cả các phần chưa qua sửa đổi của phần mềm gốc theo giấy phép Apache 2.0
-
Đính kèm thông báo bản quyền và văn bản giấy phép trong mã nguồn của phần mềm và các sản phẩm phái sinh của nó
-
Bao gồm thông báo bản quyền và văn bản giấy phép trong tài liệu và các tư liệu liên quan khác được cung cấp cùng với phần mềm
Giấy phép Apache 2.0 được coi là chỉ tương thích với một số giấy phép copyleft quan trọng nhất. Đặc biệt, giấy phép Apache 2.0 tương thích với:
-
Giấy phép Công cộng Chung GNU (GPL), phiên bản 3.0 (không bao gồm phiên bản 2.0)
-
Giấy phép Công cộng Chung GNU Thu hẹp (LGPL), phiên bản 3.0 (không bao gồm phiên bản 2.0)
-
Giấy phép Công cộng Mozilla (MPL), phiên bản 2.0 (không bao gồm phiên bản 1.1)
Điều đó có nghĩa là các sản phẩm phái sinh của phần mềm được cấp phép ban đầu theo giấy phép Apache 2.0 có thể được tái phân phối theo một trong các giấy phép tương thích nêu trên hoặc được đưa vào các dự án được phát hành theo một trong các giấy phép tương thích nêu trên.
Khả năng tương thích hạn chế giữa giấy phép Apache 2.0 và các giấy phép mã nguồn mở khác chủ yếu là do sự hiện diện của các điều khoản liên quan đến việc cấp giấy phép bằng sáng chế cho người được cấp phép.
Giấy phép Phần mềm Linh hoạt liên quan đến các Giấy phép Mã nguồn Mở khác
Hiện tại, chúng ta đã có một cái nhìn tổng quan về các tính năng phổ biến và thiết yếu của các giấy phép phần mềm linh hoạt; chúng ta có thể tiếp tục tìm hiểu xem chúng khác với phần mềm công cộng và giấy phép copyleft như thế nào.
So sánh với Phần mềm Công cộng
Sự khác biệt đầu tiên giữa giấy phép phần mềm linh hoạt và việc phát hành phần mềm thuộc phạm vi công cộng nằm ở chính sự tồn tại của chúng. Phạm vi công cộng không phải là một giấy phép thực tế mà chỉ là một cách để phát hành phần mềm. Nói cách khác, theo định nghĩa, các sản phẩm thuộc phạm vi công cộng sẽ không có giấy phép.
Sự khác biệt tiếp theo nằm ở các nghĩa vụ mà giấy phép linh hoạt áp đặt lên người được cấp phép. Trên thực tế, người dùng các sản phẩm thuộc phạm vi công cộng không có bất kỳ một nghĩa vụ nào. Tuy nhiên, bất kỳ ai sử dụng, sửa đổi hoặc tái phân phối phần mềm theo giấy phép phần mềm linh hoạt đều phải tuân thủ nghĩa vụ ghi công tác giả đã được giải thích từ trước: họ được yêu cầu phải đính kèm tên của tác giả gốc và bản sao văn bản giấy phép trong phần mềm.
Hậu quả của nghĩa vụ ghi công tác giả là không có sản phẩm phái sinh nào có nguồn gốc từ phần mềm tuân theo giấy phép phần mềm linh hoạt có thể được phát hành dưới phạm vi công cộng vì điều này sẽ vi phạm (hoặc phá vỡ) quyền được ghi công của tác giả ban đầu.
So sánh với Copyleft
Sự khác biệt giữa giấy phép phần mềm linh hoạt và giấy phép copyleft hạn chế sẽ phức tạp hơn, đặc biệt là khi chúng ta xem xét sự khác biệt giữa các giấy phép copyleft khác nhau. Như đã thấy trong các bài học trước, một điểm khác biệt chính phân biệt các giấy phép copyleft mạnh (bao gồm Giấy phép Công cộng Chung GNU phiên bản 2.0 và 3.0) với các giấy phép copyleft yếu (bao gồm Giấy phép Công cộng Chung GNU Thu hẹp phiên bản 2.0 và 3.0 và Giấy phép Công cộng Mozilla).
Sự khác biệt chính giữa giấy phép hạn chế và giấy phép linh hoạt nằm ở nguyên tắc copyleft vốn là cốt lõi của giấy phép hạn chế. Để phù hợp với nguyên tắc này, người được cấp phép sửa đổi phần mềm theo giấy phép copyleft và sau đó phân phối nó sẽ nhất thiết phải phát hành — toàn bộ hoặc một phần — sản phẩm phái sinh dưới cùng một giấy phép với phần mềm gốc. Việc không tuân thủ nghĩa vụ này sẽ dẫn đến vi phạm bản quyền và đi kèm theo hậu quả pháp lý.
Ngược lại, giấy phép phần mềm linh hoạt không áp đặt nghĩa vụ như vậy. Những người sử dụng hoặc dự định phát hành phần mềm theo loại giấy phép này có thể tự do quyết định giấy phép cho sản phẩm phái sinh của mình (bao gồm cả giấy phép độc quyền).
Giấy phép Copyleft mạnh
Sự khác biệt giữa giấy phép phần mềm linh hoạt và giấy phép copyleft mạnh rõ rệt hơn so với giấy phép copyleft yếu.
Sự khác biệt cơ bản là các giấy phép copyleft mạnh yêu cầu các sản phẩm phái sinh phải được phát hành theo cùng một giấy phép với phần mềm gốc. Điều này cũng sẽ được áp dụng nếu phần mềm được cấp phép copyleft được tích hợp vào một dự án khác: Toàn bộ sản phẩm phái sinh phải được phát hành theo cùng một giấy phép copyleft mạnh.
Giấy phép Copyleft yếu
Không giống như các giấy phép copyleft mạnh, các giấy phép Copyleft yếu chỉ yêu cầu một phần về việc phát hành sản phẩm phái sinh theo cùng một giấy phép. Cụ thể hơn, người được cấp phép tái phân phối phần mềm được phát hành theo giấy phép copyleft yếu phải áp dụng giấy phép tương tự cho phần sản phẩm được bắt nguồn từ phần mềm gốc của họ. Ví dụ: một thư viện dựa trên thư viện được cấp phép theo LGPL cũng phải được cấp phép theo LGPL.
Các giấy phép copyleft yếu chính xác là được sinh ra để mang các tính năng của chúng đến gần hơn với các tính năng của giấy phép phần mềm linh hoạt. Tuy nhiên, chúng được phân biệt với các giấy phép phần mềm linh hoạt ở chỗ giấy phép phần mềm linh hoạt không áp đặt nghĩa vụ duy trì cùng một giấy phép đối với sản phẩm phái sinh hoặc tích hợp trong bất kỳ trường hợp nào.
Bài tập Hướng dẫn
-
Hai nghĩa vụ thường được áp đặt bởi giấy phép phần mềm linh hoạt là gì?
-
Giấy phép nào sau đây không phải là giấy phép phần mềm linh hoạt?
Giấy phép Apache 2.0
Giấy phép LGPL
Giấy phép MIT/X11
Giấy phép BSD 3 Điều khoản
-
Điều gì phân biệt giấy phép phần mềm linh hoạt với giấy phép copyleft?
Phần mềm được phát hành theo giấy phép copyleft không thể được phân phối, trong khi phần mềm tuân theo giấy phép phần mềm linh hoạt thì có thể.
Các sản phẩm bắt nguồn từ phần mềm tuân theo giấy phép copyleft không thể được phát hành theo giấy phép độc quyền, trong khi phần mềm tuân theo giấy phép phần mềm linh hoạt thì có thể.
Giấy phép Copyleft chỉ được công nhận về mặt pháp lý ở Hoa Kỳ, trong khi giấy phép phần mềm linh hoạt được công nhận trên toàn cầu.
-
Giấy phép phần mềm linh hoạt nào sẽ cấp giấy phép bằng sáng chế để sử dụng, bán, nhập khẩu và chuyển giao phần mềm được cấp bằng sáng chế?
Giấy phép Apache 2.0
Giấy phép BSD 2 Điều khoản
Giấy phép MIT/X11
Giấy phép BSD 3 Điều khoản
-
Khi phần mềm được phát hành theo giấy phép MIT/X11, bạn có thể phân phối phần mềm đó theo giấy phép độc quyền và bán sản phẩm phái sinh dựa trên phần mềm đó không?
Bài tập Mở rộng
-
Bạn đang sửa đổi phần mềm được phân phối theo giấy phép Apache 2.0 và muốn tái phân phối sản phẩm phái sinh theo giấy phép độc quyền. Bạn nên làm theo những bước nào để tuân thủ các nghĩa vụ cấp phép Apache 2.0?
-
Hãy kể tên ít nhất ba ví dụ về các dự án phổ biến được phát hành theo giấy phép phần mềm linh hoạt.
-
Tại sao bạn không thể phân phối theo giấy phép LGPL 2.0 các phần mềm có bao gồm các thành phần ban đầu được phát hành theo giấy phép MIT/X11, giấy phép Apache 2.0 và giấy phép BSD 2 Điều khoản? Giấy phép copyleft yếu nào khác có thể được sử dụng để phát hành phần mềm?
Tóm tắt
Trong bài học này, chúng ta đã học về: * Giấy phép phần mềm linh hoạt là gì, các quyền và nghĩa vụ mà chúng cung cấp * Sự khác biệt giữa giấy phép phần mềm linh hoạt và các giấy phép mã nguồn mở khác * Các tính năng phổ biến nhất của giấy phép phần mềm linh hoạt * Khả năng tương thích của giấy phép phần mềm linh hoạt với các giấy phép mã nguồn mở khác
Đáp án Bài tập Hướng dẫn
-
Hai nghĩa vụ thường được áp đặt bởi giấy phép phần mềm linh hoạt là gì?
Nghĩa vụ nêu rõ tên tác giả gốc của phần mềm và nghĩa vụ đính kèm một bản sao văn bản giấy phép trong sản phẩm phái sinh.
-
Giấy phép nào sau đây không phải là giấy phép phần mềm linh hoạt?
Giấy phép Apache 2.0
Giấy phép LGPL
X
Giấy phép MIT/X11
Giấy phép BSD 3 Điều khoản
-
Điều gì phân biệt giấy phép phần mềm linh hoạt với giấy phép copyleft?
Phần mềm được phát hành theo giấy phép copyleft không thể được phân phối, trong khi phần mềm tuân theo giấy phép phần mềm linh hoạt thì có thể.
Các sản phẩm bắt nguồn từ phần mềm tuân theo giấy phép copyleft không thể được phát hành theo giấy phép độc quyền, trong khi phần mềm tuân theo giấy phép phần mềm linh hoạt thì có thể.
X
Giấy phép Copyleft chỉ được công nhận về mặt pháp lý ở Hoa Kỳ, trong khi giấy phép phần mềm linh hoạt được công nhận trên toàn cầu.
-
Giấy phép phần mềm linh hoạt nào sẽ cấp giấy phép bằng sáng chế để sử dụng, bán, nhập khẩu và chuyển giao phần mềm được cấp bằng sáng chế?
Giấy phép Apache 2.0
X
Giấy phép BSD 2 Điều khoản
Giấy phép MIT/X11
Giấy phép BSD 3 Điều khoản
-
Khi phần mềm được phát hành theo giấy phép MIT/X11, bạn có thể phân phối phần mềm đó theo giấy phép độc quyền và bán sản phẩm phái sinh dựa trên phần mềm đó không?
Có thể.
Đáp án Bài tập Mở rộng
-
Bạn đang sửa đổi phần mềm được phân phối theo giấy phép Apache 2.0 và muốn tái phân phối sản phẩm phái sinh theo giấy phép độc quyền. Bạn nên làm theo những bước nào để tuân thủ các nghĩa vụ cấp phép Apache 2.0?
Bạn nên:
-
Chèn vào mỗi tệp đã qua sửa đổi một thông báo xác nhận rằng các tệp đã được sửa đổi.
-
Phát hành tất cả các phần chưa sửa đổi của phần mềm gốc theo giấy phép Apache 2.0.
-
Đính kèm thông báo bản quyền và văn bản giấy phép trong mã nguồn của phần mềm hoặc các sản phẩm phái sinh của nó.
-
Đính kèm thông báo bản quyền và nội dung giấy phép trong tài liệu và các tư liệu liên quan khác được cung cấp cùng với việc phân phối phần mềm.
-
-
Hãy kể tên ít nhất ba ví dụ về các dự án phổ biến được phát hành theo giấy phép phần mềm linh hoạt.
-
Angular web framework — Giấy phép MIT/X11
-
Ruby on Rails — Giấy phép MIT/X11
-
Apache HTTP Server — Giấy phép Apache 2.0
-
Kubernetes — Giấy phép Apache 2.0
-
-
Tại sao bạn không thể phân phối theo giấy phép LGPL 2.0 các phần mềm có bao gồm các thành phần ban đầu được phát hành theo giấy phép MIT/X11, giấy phép Apache 2.0 và giấy phép BSD 2 Điều khoản? Giấy phép copyleft yếu nào khác có thể được sử dụng để phát hành phần mềm?
Mặc dù giấy phép MIT/X11 và giấy phép BSD 2 Điều khoản tương thích với giấy phép LGPL 2.0 nhưng giấy phép Apache 2.0 thì không. Phần mềm có bao gồm các thành phần được phát hành theo giấy phép MIT/X11, giấy phép Apache 2.0 và giấy phép BSD 2 Điều khoản có thể được phát hành theo giấy phép LGPL 3.0 vì nó tương thích với tất cả các giấy phép phần mềm linh hoạt đó.