Uma licença de código aberto que não permitem que os usuários compilar a aplicação, a menos que você comprou isso? [fechadas]

StackOverflow https://stackoverflow.com/questions/179764

  •  05-07-2019
  •  | 
  •  

Pergunta

Eu tenho vindo a desenvolver software GPL durante anos, mas agora eu preciso de uma licença mais restritiva.

Isto é para uma aplicação comercial, e eu quero compartilhar minha código-fonte com o mundo inteiro, independentemente de terem comprado a aplicação de mim ou não. Eu também quero permitir que as pessoas a produzir trabalhos derivados, mas eu quero de proibir a distribuição binária de tanto o meu trabalho original, e que de qualquer trabalho derivado.

Basicamente, se alguém já comprou a obra original, ele / ela pode compilar e usar o código-fonte original, ou qualquer trabalho derivado. Caso contrário, eles só podem estudar meu código-fonte, ou de um trabalho derivado.

Alguém sabe uma licença que se adapta às minhas necessidades, ou eu preciso escrever meu próprio?

Obrigado,

UPDATE:

Antes de tudo, obrigado a todos pelas respostas.

Deixe-me esclarecer algumas coisas:

  1. Esta aplicação ainda não foi liberado. Então eu não estou adotando uma nova licença como XFree86, eu estou tentando pegar uma licença para uma nova aplicação.

  2. Eu costumo usar o termo "software livre" em vez de código aberto, então é por isso que eu usei o termo open source aqui. A fonte será "aberta", na verdade, não apenas a maneira como o OSI define.

  3. Eu sou tudo para GPL, e quase todos os softwares que eu escrevi antes foi liberado sob a licença GNU GPL v2. Mas este tem de ser uma exceção.

  4. Eu realmente não me importo se as pessoas violam a licença. Eu não sonharia de processar ninguém por isso, a menos que eles estão vendendo o meu software.

Agora eu não estou sugerindo que eu escrevi uma peça muito especial de software, mas eu só não quero que as pessoas a ganhar dinheiro roubando o meu código. Mas eu também quero os usuários conhecedores de tecnologia para ser capaz de modificar o software de qualquer maneira que entenderem.

Oh, e, finalmente, o aplicativo é escrito em uma linguagem compilada (Objective-C, para ser mais preciso * tosse * iPhone * tosse *).

Foi útil?

Solução

OS , soa como fonte compartilhada. Especificamente, ele é muito parecido com Ms-RSL.

A partir WikiPedia :

Microsoft Reference Source License (Ms-RSL)

Esta é a mais restritiva das licenças Microsoft Shared Source. O código de fonte é colocado à vista apenas para fins de referência [14]. Desenvolvedores não poderá distribuir ou modificar o código para fins comerciais ou não comerciais.

Outras dicas

A propósito, será totalmente impossível impedir as pessoas de manter a última versão GPL você lançou. Se não houver número suficiente de pessoas que querem usar o seu software, você deve ir para este empreendimento com a expectativa de que uma comunidade irá construir por trás da versão GPL, seus novos mantenedores você fique apresentam-for-metragem, e você será considerado um pária nesses círculos.

Eu não quero dizer isso como uma ameaça, mas como o padrão que eu vi desenvolver em torno dessas ações no passado. XFree86 adotou uma licença mais restritiva, um monte de contribuintes bifurcada lo em X.org, e XFree86 agora é pouco mais do que uma sombra de seu antigo eu. cdrecord gerou cdrtools. SSH gerou OpenSSH. Basicamente, o registro de trilha para livre comutação software a uma licença restritiva está repleta de projetos comerciais mortas. Tem certeza que isso é o que você quer?

Alternativas: permitir aos utilizadores comprar recursos solicitados e liberá-los sob a GPL. Fornecer instalação e serviço de configuração. contratos de suporte vender. formação Sell. Qualquer um destes são muito mais propensos a ter sucesso do que o que você está propondo.

Isso não seria uma licença de código aberto. No entanto, você pode certamente ter uma licença proprietária que diz exatamente o que você pretende. Muitas roupas que vendem componentes fazem exatamente o que você está falando, com a ressalva de que eles não costumam fornecer fonte até que você tenha pago.

Não há nada que você parar de fazer isso, mas eu acho que a realidade da situação é que uma vez que sua fonte está disponível, alguém vai compilá-lo (provavelmente muitas pessoas). Quão fácil será para evitar a redistribuição de binários ... ???

Você não pode enviar código com uma licença e, em seguida, dizer às pessoas que você não vai valer a licença. Isso é pedir-lhes para tomar um risco jurídica inaceitável. O que há para impedi-lo de mudar sua mente? Você deve estar na frente com os termos em que está a licenciar o código.

O problema é que uma vez que você deixe o código-fonte para fora da porta, é muito difícil manter o controle de onde ele cair. Não importa como você licenciá-lo pessoas sem escrúpulos pode não fazer com ele o que você preferir.

Uma abordagem é fornecer mais , mas não todo o código sob uma licença OSI-compatível adequado (ver opensource.org para uma lista de atual OSI licenças aprovado). Alguns biblioteca de baixo nível ou kernel que você entregar em forma de código objeto e vendê-lo ou qualquer coisa. Sem o kernel compilado o código não será executado. Os usuários ainda podem visualizar as partes interessantes do código, eles podem modificá-lo se quiserem. Eles poderiam até mesmo redistribuí-lo, mas ele não iria funcionar sem o compilado, do kernel de baixo nível. O risco é que alguém poderia fazer engenharia reversa de seu kernel, mas com um pouco de esperteza você pode fazer tão difícil. Você também pode entregar o kernel com um EULA que proíbe a engenharia reversa. Assim, você pode tomar medidas legais contra alguém que faz isso. Eu acho que isso fornece-lhe o que você está procurando -. A capacidade de compartilhar código, mas outros Desautorizar de transformá-lo em um produto para venda

FYI: IANAL, estes são apenas meus pensamentos pessoais sobre o assunto

.

Eu não acho que isso se possa qualificar como uma licença "open-source" sob a Abrir fonte Definição .

No entanto geral, você deve ser capaz de mostrar a sua fonte para as pessoas sem que eles sejam automaticamente autorizados a compilá-lo. Assim, enquanto você deixar claro que você ainda reservamos todos os direitos, a versão compilada provavelmente seria considerado um "trabalho derivado".

Se é um ótimo programa, as pessoas vão provavelmente roubá-lo. Há pouco você pode fazer sobre isso exceto processá-los mais tarde (se você pegá-lo). Em geral, mostrando sua fonte off sem liberá-lo como código aberto não soa como uma boa idéia.

Outros já lhe disse que o que você está descrevendo não é "open source", como é geralmente entendida. Não há nada que proíbe a distribuição da fonte com uma licença comercial.

Na verdade (e como outro exemplo), atlassian , fabricantes de jira, confluência e outras pedras preciosas, fornecem seu código fonte, uma vez que você comprou uma licença de seus produtos comerciais. Você está autorizado a mudança, patch e usar isso, mas não para redistribuição.

(Eu não sou associado com outro atlassian do que ser um usuário de alguns de seus produtos)

IANAL, mas gostaria de sugerir escrever sua própria licença para este tipo de coisa. Eu nunca encontrou um específico licença para compilação, como você menciona. Dê uma olhada em algumas licenças como ponto de partida que você pode usar como um modelo. Se você for realmente sério sobre ter algo que pudesse levantar-se em tribunal, você vai precisar de algum aconselhamento jurídico antes da publicação.

A opensource-licença (por definição) não atender às suas necessidades.

Mas você pode ter um olhar para a licença do Microsoft Fonte de Referência - que permite visualizar o código fonte, mas proibir a distribuição: http://www.microsoft.com/resources/sharedsource/referencesourcelicensing.mspx

É de hackish, mas eu já vi isso feito:. Distribuir seu código como uma série de screenshots

É 'publicada', mas não compilable.

Mas para chegar ao coração de sua pergunta, distribuição fonte, sem permitir que as pessoas a compilá-lo é distintamente não FLOSS-y.

Por favor, note que uma versão executável do seu código fonte pode ser visto como trabalho derivado .

As diferenças entre código fonte e versão executável desaparecer mesmo, se você escrever seu aplicativo em uma linguagem como Perl, Ruby, Python, etc.

No entanto, a licença que você está procurando não é uma licença de código aberto e parece-me que você quer algoritmos de ações e dicas de implementação em vez do código fonte completo de um produto. Nesse caso, apenas fazê-lo e publicar algoritmos junto com um exemplo de código-fonte.

Desta forma, ninguém pode recompilar seu produto sem sua permissão (ou seja: uma cópia da fonte completa). E desenvolvedores interessados ??ainda pode usar seus algoritmos e construir sobre ele

Você poderia implementar algum processo decoro construção, portanto, mesmo se tiverem a fonte, que não pode ser compilado sem a propriedade 'construtor'.

Agora eu não estou sugerindo que eu escrevi uma peça muito especial de software, mas Eu só não quero que as pessoas a ganhar dinheiro roubando meu código. Mas eu também quero os usuários conhecedores de tecnologia para ser capaz de modificar o software de qualquer maneira que eles vêem fit.

Assim que você quer para permitir alterações, mas você não quer permitir o uso comercial?

Talvez você está procurando algo como um Commons NonCommercial criativa, e talvez licença NoDerivs?

Em uma edição posterior, você escreveu:

Eu não me importo se as pessoas violam a licença. Eu não sonharia de processar ninguém por isso, a menos que eles estão vendendo o meu software.

Se você não se importa se as pessoas violar as restrições de licença, evidentemente, isso significa que sua nova restrição não é relevante. A não modificada GNU GPL deve ser tão bom para os seus fins como era anteriormente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top