Welche SPDX-Lizenz entspricht "Alle Rechte vorbehalten"?

122

Ich habe eine package.json, die ein von SPDX genehmigtes Lizenzakronym erwartet, aber ich kann keine finden, die "proprietäre kommerzielle Lizenz, alle Rechte vorbehalten" bedeutet.

Gibt es eine für Nicht-FOSS, bei der ich angeben möchte, dass ich keine Wiederverwendung zulassen möchte ?

Bryce
quelle
1
Es gibt einige Probleme mit Ihrer Frage, wie sie gerade geschrieben wird. 1. Alle Urheberrechte bleiben stets vorbehalten. 2. "Proprietary Commercial" ist ein Merkmal vieler Lizenzen. 3. Möglicherweise gibt es kein Akronym für das, was Sie anfordern.
Robert Harvey
2
@RobertHarvey 1. Für viele Softwaresysteme (z. B. npm) muss eine Lizenz explizit festgelegt werden. 2 und 3. Ja, die Antwort behandelt das 3.
mikemaccana
1
Da dies geschlossen ist, kann ich keine andere Antwort geben. Aber laut [1] solltest du einstellen license: "UNLICENSED",. [1] github.com/npm/npm/issues/8918
Jason Axelson
1
might not actually [have] an acronym for what you are requestingist immer noch eine vollkommen gültige Antwort auf eine vollkommen gültige Frage.
Qix
1
Das Äquivalent für composer.json ist "license": "proprietary"gemäß der Dokumentation .
Quinn Comendant vor

Antworten:

123

Ab npm 3.10 müssen Sie UNLICENSED verwenden :

{ "license": "UNLICENSED"}

oder

{ "license": "SEE LICENSE IN <filename>"}

Der Wert der Lizenz muss entweder eine der oben genannten Optionen oder die Kennung für die Lizenz aus dieser Liste der SPDX-Lizenzen sein . Jeder andere Wert ist ungültig.

Das Folgende gilt nicht mehr für aktuelle Versionen von npm

Für npm-Versionen vor 3.10 können Sie Folgendes verwenden:

{ "license" : "LicenseRef-LICENSE" }

Fügen Sie dann eine LICENSEDatei auf der obersten Ebene des Pakets ein. Es könnte so kurz sein wie:

(c) Copyright 2015 person or company, all rights reserved.

Möglicherweise möchten Sie jedoch genauer erläutern, was nicht zulässig ist.

Craig
quelle
16
"Alle Rechte vorbehalten" bedeutet in diesem Zusammenhang genau das, was es sagt. Es wurden keine Berechtigungen erteilt. Es ist ein juristischer Begriff der Kunst. Stellen Sie sich das als magische Beschwörung vor, die genau in dieser Form ausgesprochen werden muss, um die Gesetzesdämonen zu beschwören.
John R. Strohm,
5
npm empfiehlt die Einstellung { "license": "UNLICENSED"}"Wenn Sie anderen unter keinen Umständen das Recht einräumen möchten, ein privates oder unveröffentlichtes Paket zu verwenden". Dies ist eine noch einfachere Option als eine explizite Lizenzdatei.
Jörn Zaefferer
2
Das Setzen der Lizenz auf UNLICENSED wird license should be a valid SPDX license expressionfür mich immer noch
ausgelöst
16
Sie können auch nur festlegen, "private": trueund es wird Sie nicht stören, eine Lizenz einzuschließen.
Spex
8
Verwechseln Sie auch das npmempfohlene "UNLICENSED" nicht mit dem SPDX-kompatiblen Bezeichner "Unlicense" , der das genaue Gegenteil von "All rights reserved" ist.
Levente Huszko
8

Dies beantwortet nicht genau Ihre Frage, aber was ist mit:

{
  "license": "Proprietary",
  "private": true,
}
WooYek
quelle
1
Diese Antwort liest sich eher wie ein Kommentar.
Mael
2
Diese Antwort macht auch das, was gebraucht wird: hört auf, sich über Lizenzen zu beschweren, also ist es eine gute in meinem Buch.
Upayavira
1
Die Verwendung von "Proprietary" als Lizenztyp ist kein unterstützter SPDX-Typ und generiert einen Fehler, es sei denn, Sie geben zusätzlich "private" an: true. Dies wiederum hindert Sie daran, NPM als Vertriebskanal für Ihr proprietäres Paket zu verwenden. Wählen Sie also die Antwort oben von @craig
abd3721
1
Für mich beantwortet das Folgende die Frage und gibt ein vollständiges Beispiel, wie es gemacht wird. Ich schlage vor, @WooYek, Ihre Antwort zu aktualisieren. `{" name ":" mein-beschreibender-name "," beschreibung ":" ja, was steht "," repository ":" npm / npm "," lizenz ":" Copyright Your Company 2019, alle Rechte vorbehalten. "," private ": true," dependencies ": {" request ":" ^ 2.88.0 "," request-promise-native ":" ^ 1.0.5 "}}`
Kevin Buchs
Der Kürze halber wollte ich nicht das übliche Copyright-Zeug verwenden. Nur das Nötigste, damit ein Paket als proprietäre Software behandelt wird.
WooYek