Base64-Scripts zusammenfassen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
BlackJack

@kyou: Ja klar steht da auch etwas von optionalen Argumenten aber Du hast im Text geschrieben das „über "Optional Arguments" Folgendes angezeigt“ wird und dann aber den Abschnitt „positional arguments“ gezeigt. Ich hatte das „über“ nicht ”räumlich” verstanden und darum einen Widerspruch darin gesehen.

Diesen Abschnitt bekommst Du weg in dem Du dieses Argument einfach komplett weg lässt und nicht einfach nur die Metavariable ”unsichtbar” machst. Wie gesagt sind diese zusätzlichen Argumente eine sehr komische API und widersprechen zudem dem Hilfetext von ``-i`` der fälschlicherweise behauptet es würde von der Standardeingabe gelesen falls kein ``-i`` angegeben wird.

Optionen sind die Dinger mit einem oder zwei '-' am Anfang die eigentlich optional sein sollten. Argumente, oder positionale Argumente, sind die Sachen die man ohne einen Namen davor angeben muss. Da bestimmt deren Position die Bedeutung. Wenn man beispielsweise ein Programm zum kopieren von Dateien hat, könnte ein Aufruf beispielsweise so aussehen ``copy source destination``. Quell- und Zieldateiname sind hier keine Optionen sondern Argumente die man zwingend angeben muss. Und die Reihenfolge, also die Position, bestimmt was was ist. Das erste ist die Quelle, das zweite ist das Ziel. Und dann könnte so ein Programm noch Optionen haben. Beispielsweise ``-i`` oder ``--interactive`` was bewirken könnte, dass das Programm interaktiv nachfragt ob eine bereits bestehende Zieldatei überschrieben werden soll oder nicht.
kyou
User
Beiträge: 50
Registriert: Sonntag 7. November 2010, 08:38

@ Sirius3

Read Roberts, einer der Haupt-Entwickler des AFDKO schreibt:
I have no problem with adding the code itself, but it would need to use a non-viral open source license, like Apache 2.0. Parts of the AFDKO are included in proprietary products, like FontLab, and the GNU license would prevent that.
Da von dem ursprünglichen Script kaum noch was übrig geblieben und es jetzt eigentlich deine Arbeit ist: Kannst du es unter die Apache 2.0 Lizenz stellen?

Keine Ahnung, was er mit "non-viral" meint. Damit kennst du dich wahrscheinlich auch besser aus als ich …
kyou
User
Beiträge: 50
Registriert: Sonntag 7. November 2010, 08:38

@ Sirius3

Viral scheint sich in dem Zusammenhang auf ein übermäßiges Copyleft zu beziehen. Die Gnu Public License wurde auch schon als viral bezeichnet. Laut Wikipedia bestätigen die Apache Software Foundation und die Free Software Foundation (FSF) aber, dass die Apache License 2.0 mit der Version 3 der GNU General Public License (GPL) kompatibel ist.

Der Appendix "How to apply the Apache License to your work" der Apache 2.0 Lizenz besagt u. a., dass der Name des Urhebers erwähnt werden muss. Wollte ich auf einem Forum wie diesem hier anonym bleiben, wäre das für mich z. B. ein Problem, wenn mich jemand um diese Lizenz bäte. Ich vermute aber, das der Name des Urheberhebers auch bei anderen Lizenzen genant werden muss. Würde ja sonst irgendwie keinen Sinn machen.

Jedenfalls -- falls du die Lizenz aus irgend einem Grund nicht ändern möchtest, könnt ich das verstehen.
BlackJack

@kyou: Die Kompatibilität geht nur in eine Richtung: Du kannst Code der unter der Apache 2 Lizenz steht, in einem GPL 3 Projekt verwenden und alles unter GPL 3 weitergeben. Umgekehrt geht es aber nicht, eben wegen der ”Viralität” der GPL-Lizenzen.
kyou
User
Beiträge: 50
Registriert: Sonntag 7. November 2010, 08:38

Danke, BlackJack. In dem Fall sollte es also die Apache 2.0 Lizenz oder eine andere Lizenz sein, die richtung Apache 2.0 kompatibel ist.

@ Sirius3

Falls dir das Arbeit machen würde, dich jetzt mit den Lizenzen zu befassen, lass es bleiben. :wink:

Edit:

Übrigens gab es am 24. Mai ein Public Release des AFDKO. Bis zum nächsten Public Release dauert es eh mindestens ein halbes Jahr, wahrscheinlich länger. Und ich glaube, dass es nur sehr wenige User gibt, die sich das AFDKO selbst aus der GitHub-Repository schnüren.
Antworten