Kendi yazılım lisansımı nasıl oluşturabilirim? [kapalı]


17

GNU GPL, BSD Lisansı, MIT Lisansı ve LGPL gibi her türlü yazılım için çok sayıda lisans gördüm. "John Doe'in genel lisansı" gibi yeni bir yazılım lisansı oluşturma süreci nedir?


8
@Nick. Kendiniz yazabilirsiniz. Ancak, lisansta gerçekte istediğinizi elde etme olasılığınız, ince olup olmadığına (avukat değilseniz). Yasal dil önemsiz ve karmaşık değildir ve avukatlar daha önce mahkemede tutulan / başarısız olan boşluklarda (üzgünüm belirli koşullar) deneyime sahiptir. Bahsettiğiniz tüm lisanslar, deneyimli avukatların ekipleri tarafından özenle hazırlanmıştır (ilk sürümler olmasa bile).
Martin York

4
Ben verebilir sadece tavsiye yasal tavsiye almayın programcılar .....
mattnz

2
Bu harika bir soru. Yazık konu dışı sayılır.
Jeroen

1
@MartinYork Hukuk dili bir tür özel dil değildir. İngilizcede sözleşmeler için İngilizce kullanıyorlar. Sözleşmelerde görünen starbucks'a gittiğinizde sık kullanılmayan kelimeler var mı? Tabii, ama bu benzin istasyonu "jargon" için geçerlidir. Yine de, starbucks'a gidebilir ve onlardan büyük bir el rezervuarını 3,5 $ 'a kadar basit siyah enerji yakıtı ile doldurmalarını isteyebilirsiniz (büyük bir kahve için fiyat olduğunu varsayarak) ve "kahve jargonu" kullanmadan mükemmel bir şekilde anlaşılacaksınız.
Andrei

1
@Andrei katılmıyorum. Hukuk dili İngilizce Dilinin bir alt kümesidir. İngilizce çok kesin olmayabilir. Dolayısıyla sözleşmelerde yasal dil, belirsizlik olmadığından emin olmak için çok özel bir anlam taşıyan kelimeler kullanma eğilimindedir. Bu nedenle, doğru bir tarzda yazma konusunda uzman olmak iyi bir fikirdir.
Martin York

Yanıtlar:


29
  1. Bir düzenleyici açın.
  2. Lisans şartlarını yazın.
  3. Dosyayı kaydet.
  4. Projeye dahil et.

Genel olarak konuşursak, hepsi bu kadar. Ciddi anlamda.

Bana inanmıyor musunuz? Çıkış yapmakPhil Sturgeon'un Sakın Olma lisansına (yanı sıra ilham ne halt edersen et kamu lisansı).

Bununla birlikte, bir avukat bunları yazmış olsa bile, yazılım lisanslarının yasal olarak uygulanıp uygulanamayacağını vurur ya da kaçırır (en azından ABD'de ve neredeyse tamamen hakim veya iktidardaki telif hakkı otoritesinin hevesine bağlıdır). Daha genel olarak, yazılım yazarı olarak, ülkenizin telif hakkı yasalarına zaten sahipsiniz (çalışmanızın telif hakkı alınması için gerekli adımları attığınızı varsayarsak; ABD'de, bu aslında yapma işi).

Lisansınızla, telif hakkı yasalarının üstünde ve ötesinde (veya yerine) yapmak istediğiniz şeye bağlıdır. Phil'in DBaD lisansı gibi lisanslar söz konusu olduğunda, bu büyük ölçüde onur ilkesi ve birbirlerine karşılıklı saygı ile ilgilidir.

Kapalı kaynaklı bir ürünü piyasaya sürmek gibi yasal olarak uygulanabilir olmasını (veya en azından bunu yapma şansına sahip olmasını) istiyorsanız, muhtemelen bir avukatla konuşmak istersiniz. Bu şekilde, göze çarpan boşluklar olmadığından emin olabilir ve bir hakim / iktidar partisinin birinin ihlal etmesi durumunda lehinize karar verme olasılığı daha yüksek olacak şekilde yazmasını sağlayabilirsiniz.

EllisLab (CodeIgniter'ın arkasındaki şirket) yazılım lisanslamasının harika bir açıklamasına sahiptir ), hem yasal açıdan hem de yukarıda bahsettiğim onur ilkesi açısından (ve konuyla ilgili blogların tüm haftasının .

(Feragatname: Ben bir avukat değilim, bu yasal olarak bağlayıcı bir tavsiye değil, falan, falan, falan. Ben sadece yazılım geliştirme ve lisanslama olan yasal mayın tarlasının etrafında bahşiş vermek zorunda olan bir geliştiriciyim. , gerçekte bir avukat olan biriyle, ideal olarak bir telif hakkı, patent ve / veya lisanslama odağıyla konuşun.)


1
Asıl soruyu cevaplamak için + 1 sonra doğru hareket
tarzını

1
"Dick olma" lisansını seviyorum. WTFPL'den bile daha iyi.
Robert Harvey

1
Bu fazlalaştı olabilir “Dick Lisansı olmayın” hiçbir şekilde bir serbest / libre / 'açık kaynak' biridir.
Dmitry Alexandrov

16

Yazılımınızın kullanıcısı için aşağıdaki soruları cevaplayın:

  1. Ürününüz açık kaynaklı mı, yani kaynak kodunun bir kopyasını alabilir miyim?

    • Kaynak kodunuzu nasıl kullanabilirim? Kendi uygulamalarıma özgürce kopyalayabilir miyim veya ikili dosyaya bağlamak zorunda mıyım? Kodumu kendi uygulamamda kullanırsam, kodunuzun ne kadarını kullanabileceğimin bir sınırı var mı? Lisansınızı veya ilişkilendirme başlığınızı, kodunuzu içeren yeniden dağıttığım kaynak dosyaların üstüne veya ikili dosyamın Yardım / Hakkında kutusuna eklemem gerekir mi?
  2. Ürününüzle ne yapabilirim? Tek bir bilgisayar kullanabilir miyim? Birden fazla bilgisayarda kullanabilir miyim? Yeniden dağıtabilir miyim veya satabilir miyim?

  3. Ürününüzü yazdığım başka bir uygulamanın parçası olarak kullanırsam, açık kaynak olmam da gerekir mi?

  4. Ürününüzü nasıl garanti ediyorsunuz? Sorunlarım olursa yasal olarak yükümlü müsünüz?

  5. Yeniden dağıtım koşullarınız nelerdir? Yazdığım bir ürünün parçası olarak ürününüzü yeniden dağıtabilir miyim? Kaynak sağlarsanız, kitaplığınızı değiştirebilir ve değişiklikleri yeniden dağıtabilir miyim, eğer öyleyse, hangi koşulları karşılamam gerekir?

Diğer lisansları inceleyin ve bu soruları nasıl yanıtladıklarını görün.


6

Aslında geliştiricilerin yaptıklarıyla şaşırtıcı derecede benzer:

Bir avukata (veya büyük bir kuruluştaki hukuk departmanına) lisansın neye izin verdiği ve neye izin vermediğine ilişkin gereksinimlerin bir listesini verirsiniz (örneğin, lisans yalnızca bir kullanıcı içindir, geçicidir, yazılımı bazı amaçlar için kullanamazsınız ve benzerleri) ve bunu avukat-konuşmaya "çevirirler", tıpkı gereksinimleri koda çevirir gibi.

Örneğin, "lisans yalnızca bir kullanıcı içindir" genellikle buna benzer bir şeye çevrilir: "FooCorp Inc., FooSoftware'yi yüklemek ve kullanmak için size tek, münhasır olmayan, devredilemez bir lisans verir.".

Bunun F / OSS lisansları için geçerli olmadığını düşünebilirsiniz, ancak gereksinimler farklı olduğu sürece aşağı yukarı aynıdır: bu gereksinimlerin en basit sürümünü http://opensource.org/docs/OSD adresinde bulabilirsiniz .

Ancak avukat kısmı önemlidir ve kendiniz lisans yazmaya çalışmanın bir anlamı yoktur (IP ile ilgili ve uluslararası hukukta çok fazla deneyime sahip bir avukat değilseniz). Birisi sadece ürününüzü memnun ettiği bir şekilde kullanmasına izin verecek uygun bir boşluk bulacak (bunu istismarlarla karşılaştırmak için çok uzağa gideceğim).

Tabii ki bu açıklamanın tam veya hatta doğru olduğunu iddia etmiyorum, ancak yazılım geliştiricilerinin dahil olduğu sürece sürecin kaba bir taslağıdır (bu nedenle bunu bir programcının çalışmalarıyla karşılaştırırım).


Yani bu avukat odaklı bir iş mi?
Rrjrjtlokrthjji

1
@Nick Kesinlikle, programcılar genellikle orada yürümemelidir.
K.Steff

4

Sorunuzu cevaplamak için, herkes lisans yazabilir - ve gösterir!

Bir şeyler inşa etmek için yazılım kullanan ve aslında her bir lisansa saygı duymaya çalışanlarımız, her biri yeni bir tane yapmaktan bahsettiğinde sıcak bir poker ile kendi göz toplarımızı oymaya hazırız. Dünyada halihazırda sayılamayan sayıda yazılım lisansı var. Bunların% 99'u, iyi düşünülmediği sürece mevcut, daha popüler lisansların neredeyse bir kopyasıdır.

Katkıda bulunduğum bir sitenin, türetilmiş eserler hakkında hiçbir şey söylememesi dışında, kendi oluşturduğu reklam öğesi ortakları ticari olmayan ilişkilendirme türü lisansı vardır. İzin veriliyor mu? Aynı lisans altında dağıtılabilir mi? Beni aşar!

Başkaları bir projeye katkıda bulunursa ve lisansı değiştirmek istediğinizde veya değiştirmeniz gerektiğinde, lisansı değiştirmeyi kabul etmeleri için hepsine sahip olmanız gerekir, ya da sonsuza kadar onunla sonsuza kadar takılı kalırsınız. Bazılarına ulaşılamaz, hatta ölebilir. Ben bir avukat değilim, ancak ehliyetiniz hakkında karar vermenize izin veren herkesten imzalı bir katılımcı sözleşmeniz yoksa, SOL olduğunuzu düşünüyorum.

İyi bir lisans yazmak gerçekten zor. En iyi yazılım lisansları bile deliklerle doludur. Apache ve GPL lisanslarının periyodik olarak yeni sürümleri vardır. Lütfen, gereksinimlerinizin% 90'ını karşılayan bir lisans bulup bulamayacağınıza bakın ve kullanın. GPL Bağlama İstisna veya "Sınıf yolu İstisna" Bu büyük bir örnektir. Hibernate halkının birkaç yıl sitelerinde yaptıkları açıklamadan biraz endişeliyim, temel olarak GPLv2'yi Sınıf Yolu İstisnası'nı içerdiği gibi ses çıkarmak için alenen yanlış yorumluyor. Bu sınıf yolu istisnası mı? Birisi onlara dava açmadığı sürece bilemeyiz.

Bana öyle geliyor ki dava açılmanız lisansınızı ayıklamanın en acı verici yoludur. İnsanların daha önce vermiş oldukları bir lisansı kullanırsanız, çalıştığına dair belirli bir güvence ve ayrıca nasıl çalıştığına dair bir his vardır. Daha da iyisi, farklı ülkelerde mahkemeye verilen bir lisans seçin. Lisansınızın dünyanın diğer bölgelerinde nasıl yorumlanacağını düşündünüz mü?

Lisansınızı mevcut bir lisansa dayandırırsanız, lisansınızın şartlarını yerine getirmeyi önemseyen kişilerin bunun ne anlama geldiğini tam olarak anlamak için yıllarca çalışması gerekmeyebilir.

Mümkünse, enerjilerinizi ve yeteneklerinizi yeni bir lisans yazmak yerine mevcut bir lisansı geliştirmeye adamanızı öneririm.

Öldürme sevinci olduğum için üzgünüm. Acı çekersem, işlerini kullanmadan önce insanların lisanslarını gerçekten okuyup saygı duymaya çalıştığım için.


3

Şartları yazın, yazılımınızla yayınlayın. Bu kadar.

Ancak bir soru neden istiyorsun? Eklemek istediğiniz koşulların yaygın olarak kullanılan başka bir lisansta zaten mevcut olması olası değildir.

Bu bir ön adım ekler - gerçekten bir lisans oluşturmanız gerekip gerekmediğini kontrol edin.

Ayrıca, zorlamak istediğiniz bazı koşulların bir şekilde kusurlu olması da muhtemeldir; başka bir ön adım ekleyerek - uygulamak istediğiniz "benzersiz" terimler hakkında bilgi edinin. Başka biri muhtemelen bu tür şartları denemiş ve bunları uygulanamaz veya bir şekilde verimsiz bulmuştur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.