AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Softwareentwicklung im Allgemeinen Projektplanung und -Management Lizenz - Open Source mit Delphi und Fremdkomponenten
Thema durchsuchen
Ansicht
Themen-Optionen

Lizenz - Open Source mit Delphi und Fremdkomponenten

Ein Thema von jr1510 · begonnen am 1. Mär 2024 · letzter Beitrag vom 18. Mär 2024
Antwort Antwort
Seite 1 von 2  1 2      
jr1510

Registriert seit: 1. Sep 2008
Ort: Mecklenburg-Vorpommern
5 Beiträge
 
Delphi 6 Professional
 
#1

Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 1. Mär 2024, 10:49
Liebe Forumsgemeinde,

in unserer Uni-Arbeitsgruppe wird seit vielen Jahren ein Programmsystem mit Delphi 6 entwickelt und gepflegt.

Diese Software kommt bei uns intern und bei drei weiteren externen Anwendern zum Einsatz. Den drei externen Anwendern wird die Software vollständig kostenlos zur Verfügung gestellt. Die von uns erstellten Quelltexte sind für sie frei verfügbar.

Eine Vermarktung der Software findet nicht statt und ist auch nicht vorgesehen.

Bisher gibt es keine Lizenz oder anderweitige textliche Abmachungen mit den Anwendern.

Bei der Programmierung werden natürlich Delphi 6 selbst sowie eine Sammlung aus Fremdkomponenten eingesetzt. Die Fremdkomponenten sind z.T. von uns erworbene kommerzielle Produkte oder Komponenten, die unter verschiedenen Open-Source-Lizenzen (z.B. MIT, MPL, LGPL) veröffentlicht wurden.

Seit einiger Zeit denken wir darüber nach, das Software-System unter einer (gängigen) Open-Source-Lizenz zu lizensieren, um es den bisherigen und weiteren interessierten Nutzern unter definierten Bedingungen zur Verfügung stellen zu können und ggf. auch Mitstreiter bei der Weiterentwicklung und Pflege zu gewinnen.

Hier stellt sich nun die Frage, welche Open-Source-Lizenz wir verwenden könnten, die sich einerseits mit den Open-Source-Lizenzen der Fremdkomponenten aber auch mit dem Einsatz der kommerziellen Komponenten verträgt.

Oder wäre es vielleicht besser, wie bisher ganz auf eine Lizenz zu verzichten? Oder eine eigene Lizenz zu entwerfen, die den bisherigen Zustand abbildet?

Ich bedanke mich ganz herzlich für Eure Expertise und Meinungen und freue mich auf Eure Rückmeldungen!

Vielen Dank und viele Grüße
Jörg
Jörg
  Mit Zitat antworten Zitat
Jens01

Registriert seit: 14. Apr 2009
673 Beiträge
 
#2

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 1. Mär 2024, 17:35
Zitat:
Oder wäre es vielleicht besser, wie bisher ganz auf eine Lizenz zu verzichten? Oder eine eigene Lizenz zu entwerfen, die den bisherigen Zustand abbildet?
Ohne Lizenz dürfte für Deutschland das Urheberrecht gelten, sprich ohne Eure direkte Zustimmung dürfte das keiner nutzen. Ja, eine Verbreitung wäre eine Straftat.

Ansonsten würde ich sowas mit einer MPL Lizenz verbreiten. Die ist relativ frei. Wenn jemand etwas am Quellcode ändert, ist er verpflichtet, das zu veröffentlichen.

Ein Problem sind andere Quelltexte und Komponenten mit anderen Lizenzen. Die Kompatibilität ist manchmal echt schwierig. Man könnte das eventuell mit den Urhebern dieser Quellcode absprechen und die Lizenzen anpassen.
Ich würde den Nutzern trotzdem sagen, besorgt euch die Quellcodes direkt bei den Urhebern.
Achtung: Bin kein Informatiker sondern komme vom Bau.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#3

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 1. Mär 2024, 22:08
Irgendwo gab's mal eine Liste welche Open Source Lizenzen mit welchen kompatibel sind.
Evtl. in Wikipedia...
Alternativ zur MPL die Apache 2.0 Lizenz. Die ist auch recht offen und verpflichtet
anders als die GPL den benutzer eures Quellcodes nicht auch seinen open source zu machen.

Andere Frage: wär's nicht mal an der Zeit auf ein neueres Delphi zu wechseln? Da hat sich
ja doch einiges getan.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#4

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 1. Mär 2024, 22:36
Es gibt hier schon mehrere Threads, bezüglich Lizenzen.
Die SuFu würde sich über Besuch bestimmt freuen.

Ich nutze immernoch eine Multilizenz aus MPL, GPL und LGPL. (gut, ich müsste die Versionen mal upgraden MPL v1.1 , GPL v3.0 or LGPL v3.0 , aber so einfach geht das halt nicht immer)
Da war für Vieles was dabei, da sich jeder Eine der drei raussuchen konnte, welche zu seinem Lizenzmodel am Besten passt.

Es gibt viele "freie" Lizenzen, aber manche sind untereinander einfach vollkommen inkompatibel,
weswegen man auch nicht alles "blind" zu eine Multilizenz verbinden kann,
ebenso wie beim Mischen der eigenen Lizenz, mit Anderen, welche man in sein sein Projekt reinziehen möchte.

Viele OpenSource-Lizenzen verlangen z.B. dass auch damit erstellte Programme ihren Quellcode offenlegen müssen, was aber nicht immer erwünscht ist.


Der Witz ist ja auch, dass selbst Lizenzen unter einer Lizenz stehen, weswegen man sie einmal nicht einfach so ändern darf und für die Verwendung braucht man quasi auch die Erlaubnis usw.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 1. Mär 2024 um 22:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#5

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 3. Mär 2024, 03:41
Ach ja, eine Sammlung an Lizenzen findet man auch im GitHub, z.B. wenn man ein neues Repository erstellen möchte, in der Auswahl dort.
https://docs.github.com/de/repositor...g-a-repository
https://choosealicense.com/licenses/ / https://choosealicense-com.translate..._x_tr_pto=wapp
https://wikijs.opencode.de/de/Hilfes...zenzcompliance


https://de.wikipedia.org/wiki/Mehrfachlizenzierung
https://www.gnu.org/licenses/why-not-lgpl.de.html

Hier noch ein paar Beispiele:

C:\Program Files (x86)\Embarcadero\Studio\23.0\source\xml\Xml.Internal.OBufferedStreams.pas
* MPL 1.1 / GPLv2 / LGPLv2 / FPC modified LGPLv2

C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.50491.5718\build-tools\33.0.2\NOTICE.txt
* MPL 1.1 / GPL 2.0 / LGPL 2.1


(WTFPL) Do What The F*ck You Want To Public License
(Link)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 3. Mär 2024 um 15:16 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.158 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 4. Mär 2024, 08:14
https://ChooseALicense.com/
  Mit Zitat antworten Zitat
jr1510

Registriert seit: 1. Sep 2008
Ort: Mecklenburg-Vorpommern
5 Beiträge
 
Delphi 6 Professional
 
#7

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 4. Mär 2024, 09:33
Vielen Dank für Eure ausführlichen Rückmeldungen und Tipps!

Vor meinem Beitrag und auch schon länger davor hatte ich mich schon intensiv mit der Lizenzfrage beschäftigt. Auch hier im Forum konnte ich schon viel dazu finden. Die SuFu wurde also ausgiebig besucht.

Da aber viele Open-Source-Projekte, über die man so Informationen im Netz findet, vor allem auch mit freien anderen Open-Source-Bibliotheken und Programmierwerkzeugen erstellt werden, drehen sich die bisher gefundenen Lizenz-Diskussionen meist nicht um kommerzielle Programmbausteine, die enthalten sein könnten. Was deshalb bisher für uns immer fraglich blieb, war der Umgang mit den erwähnten Fremdkomponenten, wenn wir offiziell mit einer Open-Source-Lizenz veröffentlichen wollen. Was und in welchem Umfang muss dann wirklich veröffentlicht werden?

Die wichtigste Fremdkomponente, die wir einsetzen, ist eine TeeChart Pro Version (also nicht die mit Delphi 6 mitgelieferte Version), die wir damals bei Projektbeginn erworben haben, und die tief in den Programmen verankert ist und deshalb auch nicht so ohne weiteres durch andere Komponenten ersetzt werden kann. (Das ist u.a. auch ein Grund dafür, dass wir noch mit dem Uralt-Delphi 6 herumwerkeln, mit dem wir aber bisher alle Aufgaben unseres Programmsystems zufriedenstellend lösen können.) Hier dürfen wir natürlich nichts veröffentlichen oder weitergeben. Wäre das eventuell ein Hindernis für eine Open-Source-Veröffentlichung unserer Quelltexte?

Die anderen Komponenten laufen unter der LGPL, der MPL oder haben eigene Lizenztexte, die die Weitergabe zulassen, und wären daher bei der Weitergabe als Open-Source wohl unkritisch. Aber auch hier die Frage: Müssten wir die Komponenten samt Quelltexten mitliefern, wenn wir Open-Source veröffentlichen wollen? Oder reicht ggf. ein Verweis auf die Bezugsmöglichkeit? Was macht man, wenn's da gar keine aktuelle mehr gibt, weil der Urheber gar nicht mehr aktiv ist?

Vielleicht hat ja der ein oder andere hier selbst Erfahrungen mit Open-Source-Projekten unter Delphi und kann noch mal darstellen, wie er damit umgeht. Vielleicht wäre ja für uns auch so eine Multilizenz, wie himitsu beschreibt, eine Lösung.

Nochmals herzlichen Dank an alle!
Jörg
Jörg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#8

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 4. Mär 2024, 10:41
Ja, da muß man bissl in das Kleingedruckte gucken.

Es gibt OpenSource-Lizenzen, da muß dann auch das Programm, wo sie drin verwendet werden, zwingend auch OpenSource sein, teilweise sogar unter der selben Lizenz.
Dann muß oft nur der Lizenztext und ein Absatz/Erwähnung der Fremdkomponente im Info-Dialogs und der eigenen Readme/Lizenz-Datei stehen,
andere Lizenzen halten es gleich, außer der Code wurde verändert, dann muß dieser Quellcode mit veröffentlicht werden.
Manchmal ist es aber auch ganz verboten den Code der Fremdkomponente mit seinem Code auszuliefern.
usw.

Außerdem sind einige Lizenzen inkompatibel und es ist nicht möglich die so lizenzierte Komponente in einem Programm zu nutzen, welches eine andere inkompatible Lizenz verwendet ... hier wird es dann ganz schwer.
Nur bei der GPL v3 aktuell eine Info dazu gefunden, also was mindestens kompatibel ist, laut deren Aussage.

Man denke auch mal an MySQL.
Dort kommt es drauf an, wie die Komponente eingebunden ist, also ob es einkompiliert ist, oder als DLL beiliegt, und ob das Programm auch ohne die Komponente lauffähig ist, schon fällst du in jeweils unterschiedliche Lizenzbedingungen, welche teilweise die Verwendung für kleine Entwickler nahezu unmöglich macht. (weil das kostenfreie Produkt urplötzlich extrem teuer wird)

Es gab auch Extremisten extreme OpenSource- / freie Software-Anhänger, die andere dazu zwingen wollten, ebenfalls OptenSource+Kostenlos zu veröffentliche, weshalb ihre Lizenz es nur erlaubt seinen Code ausschließlich unter der selben Lizenz zu veröffentlichen, sobald man deren Komponente benutzen möchte.


Das ist auch der Grund, warum ich mein Zeugs meist unter eine Multilizenz veröffentliche. So kann sich jeder Eine davon aussuchen, welche in sein Projekt am Besten rein passt.
Zu Mehrfachlizenzen ist aber fast garnichts zu finden, bzw. ich bin zu doof passende Suchbegriffe mir einfallen zu lassen.
Selbst Wiki ist da recht wortkarg dazu. https://de.wikipedia.org/wiki/Mehrfachlizenzierung

In Github kann man nicht nur im Namen/Text/Code nach Repositories suchen, sondern auch nach Lizenzen, aber Github selbst bietet hierfür direkt eigentlich garnichts an.
Bei meiner Lizenz wird im Repo nur angezeigt, dass es eine Lizenz gibt (der Link da rechts im About), aber nicht was es für eine Lizenz ist. Bei Anderen klappt es besser und es wird zumindestens die "Erste" der Mehrfachlizenzen angezeigt.
Siehe da ganz unten, was ich da bisher für Lizenzmodelle fand. https://github.com/geheimniswelten/L.../INFO.xml#L163



Eine passende Lizenz zu finden scheint aber echt nicht so einfach zu sein, drum hatten mehrere größere Projekte eine/mehrere eigene Lizenzen erfunden, welche sie uns nun teilweise zur Verfügung stellen, damit die Qual der Wahl noch größer wird.
Selbst FreePascal hat eine eigene "modifizierte" Version der LGPL v2. (beim Anpassen muß man aber aufpassen, damit die Lizenz nicht unwirksam wird, bzw. ob es überhaupt erlaubt ist, das Original zu verändern)



Was mir persönlich noch fehlt sind Lizenzen für OpenSource-Programme/-Komponenten, wo man aber nicht will, dass sie "komplett" unkontrolliert kopiert/nachgebaut/verbreitet werden dürfen
und für ClosedSource-Freeware,
bzw. wo es den Code nur für den privaten internen Gebauch auf Anfrage gibt, er aber nicht weiter geteilt/veröffentlicht werden sollte.






(Vor)Gestern bissl mehr durch Github geklickt, als ich versuchte eine Komponente zu veröffentlichen, mal ALLES durchgesehn, was Github bezüglich der Lizenz anbietet.
Da gibt es eine kleine Auswahl, wo sie auch die Lizenzdatei bereitstellen.
Dabei fällt auf, dass sie zwar teilweise Variablen (Eingabefelder) für "persönliche Daten" anbieten, aber das nicht bei allen Lizenzen funktioniert. (Einige haben keine persönlichen Infos, aber auch nicht überall dort, wo es gehen sollte)

Dann in den Tiefen werden noch viel mehr Lizenzen genannt, aber da ist es nicht immer möglich sie dann auch im Auswahl-SuchDropdown auszuwählen.
z.B. die MPL (Mozilla Public License) in Version 1.1 kann gewählt werden, aber nicht die 1.0 oder 2.0.

Tipp: in einem eigenen Github-Repo in der "CODE"-Ansicht auf "Add File" (oben rechts, neben dem grünen CODE-Downloadknopf), dann "Create New File", dort "license" als Dateiname eingeben und es erscheint ein Link "Choose a license template". (geht auch, wenn man schon eine Lizenz/Lizenzdatei hat)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 4. Mär 2024 um 12:25 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
880 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 4. Mär 2024, 11:28
Die wichtigste Fremdkomponente, die wir einsetzen, ist eine TeeChart Pro Version (also nicht die mit Delphi 6 mitgelieferte Version), die wir damals bei Projektbeginn erworben haben, und die tief in den Programmen verankert ist und deshalb auch nicht so ohne weiteres durch andere Komponenten ersetzt werden kann. (Das ist u.a. auch ein Grund dafür, dass wir noch mit dem Uralt-Delphi 6 herumwerkeln, mit dem wir aber bisher alle Aufgaben unseres Programmsystems zufriedenstellend lösen können.) Hier dürfen wir natürlich nichts veröffentlichen oder weitergeben. Wäre das eventuell ein Hindernis für eine Open-Source-Veröffentlichung unserer Quelltexte?
Delphi und OpenSource ist in dieser Hinsicht generell schon ein Problemchen, weil Delphi selbst nicht OpenSource ist. Der Basis-Code der verwendeten Sprache wird daher in der Regel von der Lizenz ausgenommen. Es wird aber gerade bei der GPL empfohlen, auch an der Stelle auf freie Software zu setzen.

Bei aktuellen Delphi-Versionen ist das ein kleineres Problem, weil die kostenfreie Community-Edition weitgehend Code-kompatibel mit den aktuellen professionellen Lizenzen ist. Man kann also (kosten)frei den Code compilieren und ggf. modifizieren. Ob es eine kostenfreie Delphi-Version gibt, die zu Delphi 6 kompatibel ist, weiß ich nicht. Hauptproblem dürfte "Unicode" sein.

Die Frage ist, ob man diese Ausnahme für die IDE auf die Verwendung (gängiger) unfreier Zusatzkomponenten erweitern kann. Mit ausliefern darfst du die natürlich nicht. Ihr könnt natürlich in die Voraussetzungen schreiben, dass zusätzlich zu Delphi 6 auch die Komponenten X, Y und Z benötigt werden.

Wenn der Rest des Codes von euch wäre, könntet ihr dann jede beliebige FOSS-Lizenz benutzen, und diese um die Ausnahmen ergänzen, dass euer Code mit diesen unfreien Komponenten kombiniert werden darf. Da ihr aber auch andere FOSS-Bibliotheken nutzt, wäre der sichere Weg, bei den Urhebern nachzufragen, ob diese die Kombination mit diesem nicht-freien Code erlauben. Ebenso müssten streng genommen die Inkompatibiltäten zwischen MPL und LGPL aufgelöst werden. Die darf man nämlich eigentlich auch nicht mischen.

Bei kleineren OS-Komponenten von Einzelentwicklern steht die Chance dazu ganz gut. Die machen sich oft nämlich nur wenig Gedanken über die Lizenz und nutzen einfach "irgendeine". Wenn man die fragt, ob man auch eine andere nutzen kann, ist das denen oft egal.
Bei größeren Projekten, bei denen viele Entwickler mitarbeiten, ist das ggf. nicht so einfach möglich.

Zur Mit-Auslieferung des anderen OS-Codes: Ich mach das meinem Player so, dass ich diese Komponenten mit ausliefere. Damit ist man dann auf der sicheren Seite, wenn es in diesem Fremdcode einen breaking change gibt - beim VirtualStringTree ist das z.B. ab und zu der Fall gewesen. Da haben sich dann die Signaturen der Events geändert u.Ä.
The angels have the phone box.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#10

AW: Lizenz - Open Source mit Delphi und Fremdkomponenten

  Alt 4. Mär 2024, 12:49
OK, die Delphi-IDE selbst nicht, aber Vieles ist im Delphi ja dennoch OpenSource, zumindest ab der Professional liegt für Vieles, welches für das Kompilat genutzt wird, der Source vor.
Zu beachten wäre es da ja nur für Experten und DesignTimeKomponenten, welche z.B. im FormDesigner genutzt werden können.

Dagegen wäre es dann im Lazarus problematischer, wenn Fremdkomponenten direkt in die IDE kompiliert werden müssen. (die haben doch immernoch nicht sowas, wie DesignTime-Packages?)

Pascal Delphi-Language, Delphi-Compiler+RTL/VCL und Delphi-IDE ist im Delphi ja auch noch gefühlt "Eines",
während man immernoch gut zwischen Lazarus, der LCL und FreePascal unterscheiden kann.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 4. Mär 2024 um 12:55 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz