Dự án GPL rẽ nhánh: Tôi có toàn quyền đối với ngã ba mới hay vẫn phụ thuộc với chủ sở hữu ban đầu


34

Tôi đang xem xét việc tạo ra một ngã ba cho một dự án nhỏ được cấp phép theo GPLv2 và tôi có một số câu hỏi rất cụ thể mà tôi không quản lý để trả lời trong nghiên cứu của mình trên các trang web và diễn đàn khác nhau.

Khi tôi phân tách mã, tôi buộc phải phát hành dự án mới theo cùng giấy phép (GPL) như tôi sẽ làm, nhưng tôi cũng có thể quyết định phát hành nó theo giấy phép kép, một trong số đó là thương mại không?

Khi giả mạo dự án, tôi có tự động sở hữu bản quyền của toàn bộ không? Điều này có liên quan khi, ví dụ, khi quyết định thay đổi giấy phép trong tương lai hoặc để có thể thực thi giấy phép GPL cho bên thứ 3


10
nếu điều này là có thể, bất kỳ ai cũng có thể chỉ cần rẽ nhánh một dự án GPL và nhận cùng một phần mềm với giấy phép hoàn toàn mới để loại bỏ hiệu quả mọi giới hạn liên quan đến GPL và vô hiệu hóa giấy phép GPL chỉ bằng một động tác đơn giản.
dùng2485710

GPL không cho phép sử dụng thương mại!
feklee

Câu trả lời:


74

Câu trả lời ngắn gọn: Khi bạn rẽ nhánh một dự án hiện có, bạn thường không có quyền thay đổi giấy phép cũng như không nhận được bản quyền về mã bạn đã sao chép.

Bạn làm có bản quyền trên bất kỳ sửa đổi (không tầm thường) hoặc bổ sung mà bạn thực hiện.


Câu trả lời dài:

Cách duy nhất để có được bản quyền trên một đoạn mã là bằng cách tự viết hoặc bằng cách ký hợp đồng bản quyền được giao cho bạn. Điều này có nghĩa là việc cấm một dự án hiện tại không làm thay đổi bản quyền về mã của dự án ban đầu hoặc ngã ba.

Những người duy nhất có thể thay đổi giấy phép bản quyền là những người nắm giữ bản quyền đó. Nếu có nhiều chủ bản quyền theo mã của dự án, thì tất cả các chủ sở hữu bản quyền phải đồng ý với thay đổi trong giấy phép bản quyền. Điều này có nghĩa là bạn không có quyền thay đổi giấy phép của ngã ba của bạn (thậm chí không phải là giấy phép kép), trừ khi giấy phép bản quyền hiện tại rõ ràng cho bạn quyền cấp phép mã.


2
Giải thích tốt về các vấn đề bản quyền.
Rory Hunter

2
@ArtB, không chắc chắn về GPL -> AGPL, nhưng LGPL đặc biệt cho phép bạn phát hành phiên bản sửa đổi theo GPL ( xem bài viết 2 ). Những gì bạn được phép làm thực sự phụ thuộc vào giấy phép ban đầu là gì.
Bruno

3
@ 2rs2ts không chắc những gì bạn nói là đúng (xem phần 13 của GPLv3 ... tất nhiên điều đó phụ thuộc vào việc chúng ta đang nói GPLv2 hay GPLv3). Ngoài ra, những thay đổi của bạn thường luôn là của bạn. Nếu bạn thêm tiện ích ma thuật vào dự án GPL A, bạn thực sự có thể phải phân phối lại lô theo GPL, nhưng nếu bạn thêm tiện ích ma thuật tương tự vào dự án BSD B, bạn có thể cấp phép lại nội dung của mình (chứ không phải công cụ từ dự án A) bất kỳ cách nào bạn muốn (tương thích với giấy phép của dự án B). (Như mọi khi, hãy nhận tư vấn pháp lý nếu bạn muốn chắc chắn. Đây không phải là nó.)
Bruno

1
Hãy ghi nhớ rằng AFAIK (nhưng IANAL) của bạn đang là của bạn không có vấn đề gì, tức là bạn có thể phát hành một bản vá dưới bất kỳ giấy phép mà bạn thích, không phụ thuộc vào giấy phép của dự án mục tiêu.
o0 '.

4
@Lohoris: Bạn có quyền rằng bạn có thể phát hành các bản vá bạn viết với bất kỳ giấy phép nào bạn muốn. Nhưng nếu lựa chọn bất cẩn của giấy phép đó có thể làm cho mã được vá không thể phân phối được vì không thể đáp ứng tất cả các yêu cầu giấy phép.
Bart van Ingen Schenau

24

Dự án rẽ nhánh của bạn là một dẫn xuất của mã dự án ban đầu. Nói cách khác, dự án của bạn đang sử dụng dự án ban đầu, và do đó bạn bị ràng buộc bởi giấy phép của nó. Nếu điều này không đúng, giấy phép sẽ không có điểm nào cả.

Vì vậy, không, bạn không thể phát hành mã theo giấy phép độc quyền nếu nó có nguồn gốc từ mã không cho phép điều đó.


Câu trả lời của Bart ngụ ý các điều kiện khắt khe hơn so với yêu cầu cấp phép của mã rẽ nhánh - cái nào là chính xác trong trường hợp chung?
Thomas

Câu trả lời của bạn làm cho một công việc có nguồn gốc từ dự án rẽ nhánh, điều này cho phép có thể cấp phép lại nếu mã gốc nằm dưới giấy phép cho phép phát hành lại các tác phẩm có nguồn gốc. Câu trả lời của Bart nói rằng bạn không bao giờ có thể cấp lại mã rẽ nhánh trừ khi bạn có được bản quyền, bất kể giấy phép gốc nói gì. Là những tương đương?
Thomas

4
@Thomas Dan là chính xác, nếu giấy phép ban đầu cho phép cấp lại thì bạn có thể cấp lại dự án mới. Tôi không tin rằng câu trả lời của Bart nói lên những gì bạn diễn giải nó. OP nói về mã được cấp phép theo GPL để hai cái này tương đương trong trường hợp này.
Taemyr

5
@Thomas, tôi không nghĩ có mâu thuẫn ở đó. Điểm của cả hai câu trả lời của chúng tôi là bạn tiếp tục bị ràng buộc bởi giấy phép của mã mà bạn rẽ nhánh . Tuy nhiên, bạn có thể làm bất cứ điều gì mà giấy phép của mã cho phép bạn làm. Bart lưu ý rằng, nếu giấy phép của tác phẩm gốc cho phép bạn, bạn có thể cấp tác phẩm của mình theo giấy phép khác.

@Taemyr Có, tôi đoán rằng tôi đã nhầm lẫn về việc câu trả lời của Bart được áp dụng cho tất cả các giấy phép (như văn bản gợi ý) hay chỉ cho GPL (như câu hỏi này cho thấy).
Thomas

17

Hãy quên GPL một lát và xem bản quyền. Khi bạn rẽ nhánh một dự án, tất cả các mã có trong dự án ban đầu là bản quyền của bất kỳ ai đã viết mã đó trong dự án ban đầu. Tất cả các mã mà bạn viết sau đó là bản quyền của bạn. Vì vậy, trừ khi bạn viết lại tất cả mã từ dự án ban đầu, mã đó không phải là của bạn và bạn không có quyền hợp pháp.

Tiếp theo, bạn nhìn vào giấy phép GPL và kiểm tra những quyền mà nó mang lại cho bạn ngoài các quyền của luật bản quyền. Nó cho phép bạn tạo các tác phẩm phái sinh làm cho toàn bộ hoạt động kinh doanh trở nên hợp pháp ngay từ đầu - với luật bản quyền đơn giản, bạn sẽ không được phép tạo ra một tác phẩm phái sinh. Tiếp theo, nó cho phép bạn sử dụng mã miễn là bạn không phân phối nó. Vì vậy, miễn là không ai khác có thể đặt tay vào mã rẽ nhánh, GPL cho phép bạn làm những gì bạn muốn với nó.

Tuy nhiên, nếu bạn phân phối mã rẽ nhánh, bao gồm mã có bản quyền của người khác, bạn chỉ có sự cho phép của chủ bản quyền nếu bạn tuân theo các quy tắc của họ. Một quy tắc là bạn phải cấp phép cho toàn bộ mã theo GPL (bao gồm cả mã của riêng bạn). Một quy tắc khác là bạn phải cung cấp mã nguồn cho người khác; kiểm tra GPL để biết chi tiết.

Thay đổi giấy phép sẽ khó khăn, miễn là vẫn còn bất kỳ mã gốc nào. Bạn không thể cấp phép mã của mình theo cách ngăn người tiếp theo sử dụng mã theo cách mà GPL cho phép, bạn cũng không thể cho phép họ làm những việc với mã mà GPL không cho phép.


1
Tôi thường đồng ý với câu trả lời của bạn, nhưng tôi nghĩ bạn có thể muốn viết lại câu này: "với luật bản quyền đơn giản, bạn sẽ không được phép tạo ra một tác phẩm phái sinh." Theo nguyên tắc chung, có lẽ đủ để giả vờ là chính xác, nhưng vẫn có ngoại lệ. (Bản quyền đã hết hiệu lực, nhại lại, v.v.) Mặc dù vậy, tôi thừa nhận rằng hầu hết không áp dụng được cho GPL.
Patrick M
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.