Solide Python Bib für GUI für ggf. komm. Entwicklung?

3 Antworten

Bei kommerzieller Verwendung und, wenn du absolut keinen Code veröffentlichen willst, wirst du mehr oder weniger zwangsweise dir eine Lizenz kaufen müssen.

Nehmen wir Qt: Das wird unter der LGPL veröffentlicht, du kannst also Qt für proprietäre Programme verwenden, musst aber Änderungen an Qt bzw. Qt selbst im Quellcode verfügbar machen (den restlichen Programmcode nicht). Wie das mit kommerziellen Angeboten ist, weiß ich gerade nicht genau, denke aber, das geht. Du bekommst halt 0 Support. Ansonsten siehe https://www.qt.io/pricing , wenn du Support (und bspw. eine LTS-Version von Qt) haben willst.

Wenn du auch Änderungen an Qt bzw. Qt selbst nicht herausgeben willst, dann musst du dir eine Lizenz für Qt besorgen. Das wird teuer, da gibt es zwischen 0€ und mehreren tausend € pro Jahr alles...

Mit GTK hast du in etwa die selben Bedingungen, das ist auch unter LGPL veröffentlicht. Dynamisches Linken ist erlaubt, darüber hinaus muss man das genauer prüfen. Mit Geld geht allerdings alles. 😅

Dann gibt es noch die wxWidgets, die wohl etwas "flexibler" sind, aber die sehen halt aus wie 1995.

Man möchte Urheberrechte (...) behalten

Die behältst du so oder so, denn das Programm ist ja von dir geschrieben. Auf ein Urheberrecht kannst du (in D) nicht verzichten!

Man möchte (...) den Quellcode nicht offen legen

Verstehe ich nicht. Ich stelle meine Programme - soweit für die Allgemeinheit brauchbar, also sehr sehr wenige 🫣 - immer unter GPL, EUPL oder anderen zur Verfügung, und sehe auch keinen Grund, das anders zu tun. 🤷‍♂️ Das FOSS-Umfeld ist so lebendig, man hat viele Vorteile wie Mitarbeit, Fehlerkontrolle, Verbreitung,... und auch hier verdienen die Leute gut Geld. Aber da unterscheiden wir uns vermutlich in grundlegender Weise. Ich finde es sinnvoll, etwas an die Gesellschaft zurückzugeben. 👍 Dazu ist eine Erfüllung bspw. der DSGVO, des DSA,... einfacher.


HagbardCeline88 
Beitragsersteller
 27.08.2024, 10:01

Hey julihan danke für die Antwort. Die Weitergabe des Quellcodes hat schon andere Gründe und auch ist der Datenschutz hier sicher nicht ganz unwichtig. Wie dem auch sei meinte ein Kollege noch ich könne mir mal Kivy anschauen. Danke jedenfalls, ich guck mir das mal an :)

0
julihan41  27.08.2024, 11:36
@HagbardCeline88

Kenne ich jetzt nicht. Ich würde von Dingen, die nicht quelloffen sind, immer die Finger lassen. Die Chance ist zu groß, dass

  1. das unbekannte Dinge tut wie Telemetrie, Daten auslesen,... (Datenschutz und Privatsphäre)
  2. das vorzeitig eingestellt wird ohne Chance auf Weiterbenutzung
  3. du erst zahlen musst, um dann festzustellen, dass es doch nicht passt

und mehr.

0

Du hast das doch schon mehrfach gefragt.

 Man möchte Urheberrechte und Vertriebsrechte behalten

Das Urheberrecht behältst du immer, wie auch das "Vertriebsrecht".

Du kannst natürlich PyQT verwenden, du musst halt die kommerziellen Lizenzen erwerben. Dann musst du dich nicht den Bedingungen der (L)GPL unterwerfen. Das ist die ganze Idee von Dual Licensing.

Generell kann man auch die Frage stellen, ob Python die richtige Wahl für so eine Anwendung ist.


HagbardCeline88 
Beitragsersteller
 27.08.2024, 10:05

Mehrmals fragen erhöht die Wahrscheinlichkeit differenzierter ANtworten, gerade bei dieser Webseite. Was Python angeht, das ist halt leidert das einzige "was ich kann". Also ich bin quasi ein Noob :(

0
julihan41  27.08.2024, 09:52
Generell kann man auch die Frage stellen, ob Python die richtige Wahl für so eine Anwendung ist.

Stimmt. Da muss man schon vorkompilierte Python-Binaries ausliefern, sonst ist der Quellcode ziemlich einfach lesbar...

0
Welche Bibliothek käme hierfür in Frage?

Du meinst eher welche Programmiersprache? :)

Python lebt von unserer Open-Source-Community. Der Code ist immer offen, da er nicht kompiliert wird und den __pycache__-Ordner wirst du wohl kaum ausliefern.

Ebenso Qt (oder PyQt) bzw. PySide oder tkinter - alles Open-Source.

Dein Programm müsste so komplex sein, dass du dafür Support anbieten müsstest. So ist es z. B. bei einem ERP-System (Namen vergessen), das mit Python entwickelt wurde.