Việc sử dụng đá quý LGPL ảnh hưởng đến ứng dụng được cấp phép MIT của tôi như thế nào?


21

Tôi đang phát triển một ứng dụng ruby ​​mã nguồn mở theo giấy phép MIT. Tôi đang sử dụng giấy phép này vì tôi không muốn đặt bất kỳ hạn chế nào đối với người dùng ứng dụng. Ngoài ra tôi thực sự có thể đọc và hiểu giấy phép này.

Gần đây tôi đã bắt đầu sử dụng một viên đá quý ruby ​​khác trong dự án của mình (yêu cầu "somegem"). Viên ngọc ruby ​​này thuộc giấy phép LGPL.

Tôi có phải thay đổi bất cứ điều gì về dự án của mình không vì tôi đang sử dụng loại đá quý ruby ​​khác được cấp phép với LGPL? Dự án của tôi không chứa mã nguồn cho đá quý khác và nó không được vận chuyển cùng với dự án của tôi. Nó được liệt kê đơn giản là một phụ thuộc để đá quý ruby ​​sẽ cài đặt nó và dự án của tôi sẽ gọi nó từ mã của tôi.

Ngoài ra, sẽ rất hữu ích nếu biết nếu có bất kỳ giấy phép nào tôi cần "coi chừng" vì sử dụng chúng sẽ ảnh hưởng đến giấy phép của dự án của tôi.

Có một số bài viết khác về chủ đề này nhưng diễn đạt theo nhiều cách khác nhau. Vì tôi thấy công cụ cấp phép này rất khó, tôi hy vọng sẽ nhận được câu trả lời hướng vào tình huống của mình.

Cảm ơn bạn,
Corsen


1
Đây dường như là một câu hỏi cho luật sư, không phải lập trình viên. (Điều đó có nghĩa là: đây là một câu hỏi hay, được hỏi nhiều, rằng một số lập trình viên có thể có kinh nghiệm với L nhưng điều đó không phù hợp với Stack Overflow, vì nó rất ít liên quan đến lập trình.)
Phrogz

7
Phrogz: bạn đang phóng đại. Đó là một câu hỏi cấp phép đơn giản, được trả lời rõ ràng bằng văn bản của giấy phép và bởi nhiều Câu hỏi thường gặp. Bạn thực sự không cần một luật sư để đọc.
vartec

Câu trả lời:


26

Nó không ảnh hưởng

LGPL - là viết tắt của GPL nhỏ hơn (được dùng để chỉ GPL thư viện). Sự khác biệt đáng kể với GPL là, nó không áp dụng giấy phép cho phần mềm sử dụng thư viện. Chỉ khi bạn sửa đổi thư viện hoặc trực tiếp bao gồm các phần của mã trong phần mềm của bạn, thì mã của bạn sẽ phải là LGPL. Mặt khác, nếu bạn chỉ sử dụng đá quý trong ứng dụng của mình, bạn hoàn toàn có thể giữ ứng dụng của mình với bất kỳ giấy phép nào bạn muốn.

Phần được đề cập của LGPL:

Một chương trình không chứa dẫn xuất của bất kỳ phần nào của Thư viện, nhưng được thiết kế để hoạt động với Thư viện bằng cách được biên dịch hoặc liên kết với nó, được gọi là "công việc sử dụng Thư viện". Một tác phẩm như vậy, trong sự cô lập, không phải là một tác phẩm phái sinh của Thư viện, và do đó nằm ngoài phạm vi của Giấy phép này.


1
Có một số yêu cầu khác đối với thư viện LGPL mà bạn cần phải đáp ứng, đặc biệt là nếu bạn cứng hóa việc nhập nó trong một chương trình đóng. Nói điều đó không có nghĩa là bạn cần đặt mã của mình theo LGPL, nhưng có những yêu cầu phải được đáp ứng. Tôi không chắc chắn với cơ chế liên kết rubygen, có lẽ nó có thể so sánh với java nhập: LGPL và Java .
hakre

0

Tôi có phải thay đổi bất cứ điều gì về dự án của mình không vì tôi đang sử dụng loại đá quý ruby ​​khác được cấp phép với LGPL? Dự án của tôi không chứa mã nguồn cho đá quý khác và nó không được vận chuyển cùng với dự án của tôi. Nó được liệt kê đơn giản là một phụ thuộc để đá quý ruby ​​sẽ cài đặt nó và dự án của tôi sẽ gọi nó từ mã của tôi.

Phần mềm của LGPL'ed là phần phụ thuộc của phần mềm của bạn. Vì vậy, nó thực sự là một phần của phần mềm của bạn. LGPL cho phép được sử dụng từ phần mềm không miễn phí (trong khi MIT thậm chí là phần mềm miễn phí), do đó, việc phụ thuộc không phải là một công cụ chặn.

Tuy nhiên, vì đó là một sự phụ thuộc mà bạn cần cung cấp mã nguồn của nó nếu bạn phân phối phần mềm của mình. Tôi không có đầu mối nếu cơ chế yêu cầu trong ruby ​​luôn cung cấp nguồn. Nếu vậy tôi muốn nói rằng bạn đã phân phối với các nguồn. Nếu không, bạn cần lưu ý rằng đối với mọi phiên bản đá quý mà bạn yêu cầu với phần mềm của bạn, bạn cung cấp nguồn cho.

Dù sao thì bạn cũng nên quan tâm đến các nguồn vì có thể dự án của bên thứ ba (viên ngọc) sẽ ngoại tuyến và dự án của bạn sẽ bị phá vỡ sau đó vì nó yêu cầu một viên ngọc không tồn tại nữa.

Đây không phải là lời khuyên pháp lý, chỉ từ góc độ lập trình viên. Hãy xem xét rằng người dùng phần mềm của bạn yêu cầu các nguồn từ bạn vì phần mềm của bạn sử dụng thư viện và nó thực sự có thể được xem là bản phân phối vì bạn đã viết require "somegem"trong đó. Định nghĩa pháp lý về phân phối có thể không phù hợp với mong muốn của các lập trình viên hàng ngày về việc ghi các tệp vào đĩa cd-rom. Vì vậy, thật khôn ngoan khi có một quan niệm rộng hơn ở đây để luôn chủ động trong trường hợp mọi thứ không diễn ra như mong đợi.


1
"bạn cần cung cấp mã nguồn của nó nếu bạn phân phối phần mềm của mình." không bạn không nếu nó có sẵn công khai.
vartec

1
@vartec: nếu bạn phân phối bạn cần cung cấp nguồn. Chỉ trong trường hợp là phi thương mại và mã không bị thay đổi, bạn có thể ủy thác yêu cầu đó cho dự án ngược dòng (xem GPL). Nếu thư viện không được phân phối bởi bạn (tuy nhiên, trong trường hợp này có hướng dẫn thiết lập được mã hóa cứng, người dùng không thể thay đổi và thực tế có những yêu cầu trong LGPL có thể thay thế để điều này thậm chí có thể phá vỡ khả năng tương thích LGPL), tôi nghĩ rằng nó an toàn nhất để cung cấp các nguồn vì vậy các yêu cầu kỹ thuật đảo ngược và thay thế rất dễ được đáp ứng.
hakre

@vartec: Có sẵn công khai nghĩa là bạn không phân phối. Nếu nhà phân phối đá quý không thể cung cấp nguồn, bản sao của đá quý có thể không hợp pháp.
hakre

LGPL, phần 4.e "Cung cấp thông tin cài đặt, nhưng chỉ khi bạn được yêu cầu cung cấp thông tin đó theo mục 6 của GNU GPL, và chỉ trong phạm vi thông tin đó là cần thiết để cài đặt và thực thi phiên bản sửa đổi của Công việc được kết hợp được tạo bằng cách kết hợp lại hoặc phát lại Ứng dụng với phiên bản sửa đổi của Phiên bản được liên kết. "
vartec

1
@vartec: Chính xác. 4.e tiếp tục: "(Nếu bạn sử dụng tùy chọn 4d0, Thông tin cài đặt phải đi kèm với Nguồn tương ứng tối thiểu và Mã ứng dụng tương ứng. Nếu bạn sử dụng tùy chọn 4d1, bạn phải cung cấp Thông tin cài đặt theo cách được chỉ định trong phần 6 của GNU GPL để chuyển tải Nguồn tương ứng.) "
hakre
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.