Варианты лицензирования с открытым исходным кодом для приложения ASP.NET MVC?

Я работаю над личным проектом в ASP.NET MVC, который планирую сделать с открытым исходным кодом. В прошлом я использовал открытый исходный код для довольно большого количества PHP-скриптов и вещей на основе UNIX. Для них я обычно использовал лицензию в стиле BSD / Apache, если только я не включал библиотеку, которая этому препятствовала. Что касается Linux / PHP, это обычно означало что-то, что было под GPL, что по-прежнему приводило к довольно четкой договоренности.

Однако для этого проекта я пытаюсь выяснить, какие лицензии можно применить к этому проекту, и не нахожу подходящего ресурса, чтобы ответить на этот вопрос. Я знаю, что единственный «настоящий» ответ на этот вопрос связан с адвокатом. Однако, так как это не то, что будет приносить доход, если я собираюсь вложить 1000 долларов в проект, я лучше найму графического дизайнера или эксперта по юзабилити, чтобы проверить приложение, чем платить юристу. .

В этом конкретном проекте также используется Subsonic для доступа к базе данных и Argotic для анализа RSS, что еще больше усложняет проблему.

Я знаю, что мне разрешено использовать все эти части и что я могу распространять свой проект, который использует их все. Однако то, что у меня осталось, - это путаница по поводу того, на что можно / нужно лицензировать получившийся проект.

Я, вероятно, смогу пройти через лабиринт для битов Subsonic и Argotic, потому что они уже находятся под лицензиями с открытым исходным кодом, но я не могу быть единственным, кто пытается выяснить, какую лицензию я могу применить к проекту, который я пишу поверх из ASP.NET MVC.

В ответ на комментарии:

Я ничего не боюсь. Я просто пытаюсь уделить такое же внимание лицензированию и распространению этого возможного приложения, как и его архитектуре и разработке. Кроме того, я наблюдал, как жизни разрушаются из-за того, что сегодня не обращают внимания на, возможно, византийские законы об интеллектуальной собственности.

И, честно говоря, в прошлом я действительно получал неприятное письмо от юриста компонента с открытым исходным кодом, который я включил в свой собственный проект с открытым исходным кодом , но использовал лицензию, которая им не понравилась.

К сожалению, «лицензия с открытым исходным кодом» не более конкретна с юридической точки зрения, чем выражение «просто используйте язык веб-программирования, и все будет в порядке». GPL, несомненно, является одной из самых популярных лицензий с открытым исходным кодом, а также одной из немногих, которые, на первый взгляд, не могут быть применены к приложениям ASP.NET MVC. Мне интересно , если это существующая лицензия , которая на самом деле может быть «составлен» с другими лицензиями компонентов , которые я использую , не бросать правовую ошибку «компилятора».

Я не говорю, что ответ прост (это не так). Я задал этот вопрос, потому что искренне заинтересован в ответе, который исходит с точки зрения тщательного изучения вопроса. Когда я изначально разместил его, я ожидал, что он будет долго оставаться без ответа, потому что это непростой вопрос.

Ответов (7)

Решение

Окончательный ответ RTM заключался в том, что сам ASP.NET MVC был выпущен под лицензией Microsoft Permissive License, которая является лицензией, сертифицированной OSI. Эта лицензия очень похожа на Apache, BSD и остальные лицензии этого семейства. Суть в том, что в соответствии с этой лицензией вы можете свободно лицензировать свой код, как считаете нужным, даже если ваш проект включает в себя библиотеку DLL System.Web.Mvc, чтобы сделать его развертываемым с помощью bin.

На самом деле я не знаком со всем этим, но на днях я был на CodePlex, и кто-то разместил проект под лицензией Microsoft Public License:

http://en.wikipedia.org/wiki/Microsoft_Public_License#Microsoft_Public_License_.28Ms-PL.29

ASP.Net MVC в конечном итоге должен стать частью ядра .NET Framework. Как только это произойдет, вам не нужно будет его распространять.

А пока вы можете применить любую лицензию к своему собственному коду, но не перераспределять вместе с ней сборки MVC. Пользователи могут сами загрузить текущий предварительный просмотр MVC.

Если этого не произойдет, они почти наверняка предоставят некоторую лицензию на запуск RTM.

Я действительно не понимаю того, чего ты боишься. Насколько я понимаю, Subsonic и ASP.NET MVC можно распространять как по лицензии с открытым исходным кодом, так и по коммерческой лицензии, и все будет в порядке, пока вы не используете какую-то вирусную лицензию GPL, которая требует GPL всего .

Вы можете попробовать прочитать справочник Free Software Foundation по лицензиям, которые вы можете использовать для проектов с открытым исходным кодом, чтобы попробовать и почувствовать, какие типы лицензий вы можете использовать.

Довольно часто вещи лицензируются по GPL плюс исключение для чего-то, что в противном случае было бы несовместимо с GPL. Например, лицензия на exim:

Эта программа - бесплатное программное обеспечение; вы можете распространять и / или изменять его в соответствии с условиями Стандартной общественной лицензии GNU, опубликованной Free Software Foundation; либо версии 2 Лицензии, либо (по вашему выбору) любой более поздней версии.

Кроме того, во избежание каких-либо сомнений предоставляется разрешение связать эту программу с OpenSSL или любым другим пакетом библиотеки и (повторно) распространять двоичные файлы, созданные в результате такого связывания.

Если вы хотите использовать GPL, вы можете сделать что-то подобное.

Однако похоже, что вы не особо хотите использовать GPL, вам нужна лицензия в стиле BSD, и в этом случае вам не нужно специальное исключение. Просто разместите свой код под той лицензией, которую вы хотите. Пока ясно, что ваша лицензия применима только к вашему коду, а не к другому программному обеспечению, с которым вы его распространяете, с этим не должно возникнуть юридических проблем - вы можете поместить любую лицензию, которая вам нравится, на свой собственный код.

Вы должны иметь возможность распространять его так же, как распространяется DotNetNuke. Я считаю, что это проект с открытым исходным кодом.