Bộ tạo giấy phép

Tiếp theo

Việc gửi một dự án mà không có tệp giấy phép về mặt kỹ thuật đồng nghĩa với việc “tất cả quyền được bảo lưu” – không ai được phép sử dụng lại mã nguồn đó. Công cụ này tạo ra văn bản đầy đủ, chưa chỉnh sửa của các giấy phép mã nguồn mở phổ biến nhất, trong đó tên bạn và năm hiện tại sẽ được thay thế vào phần tiêu đề bản quyền. Hãy dán nội dung này vào tệp giấy phép đặt ở vị trí gốc của kho lưu trữ của bạn rồi gửi lên hệ thống.

Cách chọn và tạo giấy phép

  1. 1

    Chọn giấy phép

    MIT dành cho mô hình cấp phép mở; Apache-2.0 dành cho mô hình cấp phép mở kết hợp với cấp phép bằng sáng chế; GPLv3 dành cho mô hình copyleft.

  2. 2

    Nhập tên và năm của bạn

    Người sở hữu bản quyền là tên pháp nhân hoặc công ty của bạn. Năm là năm đầu tiên sản phẩm được phát hành.

  3. 3

    Xem toàn văn nội dung

    Đoạn văn bản giấy phép giữ nguyên như cách OSI/FSF đã công bố; chỉ dòng bản quyền mới thay đổi.

  4. 4

    Đặt vào tệp LICENSE

    Lưu vào thư mục gốc của kho lưu trữ của bạn. GitHub sẽ phát hiện và hiển thị tệp này trong thanh bên.

Chọn giữa các tùy chọn phổ biến

Không tồn tại một giấy phép mã nguồn mở nào là “tốt nhất” trên toàn cầu. Quyết định lựa chọn phụ thuộc vào những gì bạn muốn người dùng sau này có thể hoặc không thể thực hiện được.

Giấy phép Loại Cấp bằng sáng chế Copyleft? Người dùng nổi bật
MIT Nới lỏng Ngầm định Không Rails, các gói Node, jQuery
Apache-2.0 Nới lỏng Rõ ràng Không Kubernetes, Android AOSP
BSD-3-Clause Nới lỏng Không Không Thư viện chuẩn của Go, Nginx
GPL-3.0 Copyleft mạnh GCC, Bash, GIMP
LGPL-3.0 Copyleft yếu Một phần glibc, Qt (trước đây)
MPL-2.0 Copyleft yếu Một phần Firefox, Thunderbird
AGPL-3.0 Copyleft mạng MongoDB (trước năm 2018), Grafana
Unlicense / CC0 Hiến tặng phạm vi công cộng - Không Các thư viện tiện ích nhỏ

Ba câu hỏi thực tiễn

  1. Bạn có muốn các phiên bản nhánh mã nguồn đóng không? Hình thức giấy phép cho phép (MIT, Apache, BSD) → có; Hình thức giấy phép Copyleft (GPL, AGPL) → không.

  2. Bạn quan tâm đến hành vi trả đũa liên quan đến bằng sáng chế không? Apache-2.0, GPLv3 và MPL-2.0 đều có các thỏa thuận cấp phép bằng sáng chế rõ ràng, và những thỏa thuận này sẽ chấm dứt nếu xảy ra tranh chấp pháp lý; trong khi đó, MIT và BSD-2/3 thì không có điều khoản như vậy.

  3. Liệu mã nguồn của bạn có chạy như một dịch vụ mạng hay không? AGPL-3.0 đã khắc phục “kẽ hở trong mô hình SaaS” – người dùng dịch vụ được tính vào phạm vi phân phối. Nếu điều này quan trọng, hãy chọn AGPL-3.0; nếu không, GPLv3 đơn giản hơn.

Những lỗi phổ biến cần tránh

  • Đừng chỉnh sửa văn bản giấy phép. Giấy phép “MIT với các sửa đổi của tôi” là một loại giấy phép mới và không tương thích; các tòa án sẽ bác bỏ mọi thay đổi được thực hiện một cách tạm thời.
  • Không sử dụng hai giấy phép nếu không hiểu rõ tính tương thích giữa chúng. Apache-2.0 và GPLv2 không tương thích với nhau; trong khi đó, Apache-2.0 và GPLv3 lại tương thích với nhau.
  • Đừng quên ghi mã nhận dạng SPDX trong các tiêu đề nguồn: mã SPDX-License-Identifier: MIT ở dòng 1 sẽ giúp công cụ phát hiện lựa chọn của bạn.
  • Đừng sử dụng “Creative Commons” cho phần mềm. Các giấy phép CC dành cho các tác phẩm sáng tạo; hãy áp dụng chúng cho tài liệu và hình ảnh, chứ không phải cho mã nguồn.

Phê duyệt hai cấp

Một số dự án được phát hành dưới hai loại giấy phép – thường là một giấy phép copyleft và một giấy phép thương mại – nhằm cho phép các doanh nghiệp lựa chọn áp dụng điều khoản phù hợp với nhu cầu của mình. Qt và MySQL là những ví dụ tiêu biểu thực hiện phương pháp này. Việc lựa chọn giấy phép như vậy có tính phức tạp về mặt pháp lý; nếu bạn không muốn thu lợi nhuận từ dự án, hãy duy trì sử dụng chỉ một giấy phép được OSI phê duyệt.

Câu hỏi thường gặp

MIT là lựa chọn mặc định phổ biến nhất cho các dự án mã nguồn mở quy mô nhỏ: ngắn gọn, linh hoạt trong việc áp dụng, được hiểu rộng rãi và tương thích với hầu hết mọi loại giấy phép khác. Apache-2.0 là lựa chọn an toàn hơn một chút nếu dự án của bạn có những đặc điểm mới mẻ đủ điều kiện được cấp bằng sáng chế.

Đúng vậy. Nếu không có tệp này, mã nguồn của bạn sẽ hoàn toàn thuộc quyền sở hữu trí tuệ và không ai có thể sử dụng lại một cách hợp pháp, việc truy cập công khai trên GitHub không được coi là một giấy phép. Hãy thêm tệp Giấy phép vào cùng ngày bạn công bố kho mã nguồn.

Năm đầu tiên kể từ khi sản phẩm được ra mắt (một năm duy nhất) hoặc một khoảng thời gian kết thúc vào năm hiện tại (ví dụ: “2019–2026”). Việc cập nhật năm mỗi tháng Giêng chỉ là một thói quen thông thường, chứ không phải yêu cầu pháp lý ở hầu hết các khu vực pháp lý.

Không – thao tác thay thế được thực hiện trực tiếp trong trình duyệt của bạn, và tên, năm cũng như loại giấy phép bạn chọn sẽ không bao giờ được gửi đến chúng tôi.

Công cụ liên quan

Công cụ này có phiên bản bằng các ngôn ngữ khác