[OpenSlides users-de] Neue Portable App

Kai Grünler gruenler at me.com
Mo Mär 21 16:24:56 CET 2016


Hallo Björn,

da sich die .EXE nicht auf Smartphone/Tablet bzw. Mac ausführen lässt, ist eine App nötig, um hier den selben Komfort zu erzielen.
Es gibt Nutzer, die sich nicht extra nur für OpenSlides einen Windows-PC oder Linux-PC zulegen möchten.

Viele Grüße,
Kai

--
Kai Gruenler, Gartenstr. 5, 08523 Plauen, Germany
call:+491707819123
mailto:gruenler at me.com

> Am 21.03.2016 um 16:21 schrieb bjoern-zapp at web.de:
> 
> Moin in die Runde,
> 
> bei der Lösung des Problems kann ich zwar nicht helfen, allerdings ist mir auch nicht klar wieso eine App nötig ist, kann mir das jemand erklären?
> 
> Bisher starte ich die .exe auf meinem Laptop und gebe OS im WLAN frei. Alle Nutzer erhalten von mir ihre Zugangsdaten, samt QR-Code. Der wir gescannt und OS öffnet sich im Browser. Man meldet sich an und schaut zu wie die Nutzer einzeln mehr herausfinden und es sich gegenseitig zeigen. Bisher hat das alles sehr gut geklappt.
> 
> Was soll die App denn dann noch an Mehrwert haben?
> 
> Ich sehe da eher eine Fehlerquelle. Die Nutzer müssen die App runter laden und da beginnt schon das Problem für mich. Auf großen Tagungen hab ich nicht die Zeit allen zu erklären wie die App funktioniert und in meinem Hauptanwendungsbereich gibt es kein Internet, weder Mobiles noch stationär. Der Schützenverein meiner Mutter liegt in einem Luftschutzbunker aus dem 2. WK, da kannst du froh über fließend Wasser sein.  Die Nutzer können sich da keine App runterladen, durch 2 Meter Stahlbeton kommt kein einziges datenpacket.
> 
> Also bleibt bei mir die Frage hängen was bringt die App an Mehrwert?
> 
> Mit freundlichen Grüßen Björn Oberem
> 
>> Am 21.03.2016 um 15:54 schrieb Stefan Frauenknecht <stefan at frauenknecht.net>:
>> 
>> Hallo Andy,
>> 
>> vielen Dank für deine Überlegungen! Es stimmt, meine Idee mit dem PYTHONPATH war Quatsch. Der Grund für das Verhalten war aber ein ganz anderer: Es war der exit() Aufruf in der __main__.py
>> 
>> if __name__ == "__main__":
>>   exit(main())
>> 
>> py2app mochte das nicht. D.h. meine Aussage, das Aufrufe in der Form python -m openslides … nicht gehen, ist falsch.
>> 
>> Allerdings habe ich jetzt den nächsten Fehler:
>> 
>> ImportError: The 'packaging' package is required; normally this is bundled with this package so if you get this warning, consult the packager of your distribution.
>> 
>> Das hat irgendwas mit setuptools zu tun. Laut google haben einige Versionen einen Bug, der zu diesem Fehler führt. Das sollte aber lösbar sein.
>> 
>> 
>> Vielen Dank
>> Stefan
>> 
>> 
>>> Am 20.03.2016 um 21:15 schrieb Andy Kittner <andy.kittner at gmail.com>:
>>> 
>>> Signierter PGP-Teil
>>>> On 19/03/16 22:18, Stefan Frauenknecht wrote:
>>>> Hallo Leute,
>>>> 
>>>> ich kümmere mich gerade um die Portable App, zunächst um die OS X Version. Hehres Ziel ist es ja aus den Code eine App mit py2app (https://pythonhosted.org/py2app/) für den Mac und mit py2exe für Windows zu bauen zu können. Allerdings gibt es mit py2app zwei Probleme:
>>>> 
>>>> 1. py2app kommt (noch) nicht mit wxPython-Phoenix klar.
>>>> Um das zu umschiffen habe ich openslides-gui mit tkinter neu gebaut. Das war einfach. War ja auch nicht viel zu migrieren.
>>>> 
>>>> 2. py2app kommt nicht mit unseren Aufrufen an openslides klar.
>>>> D.h. um z.B. den Server zu starten wird python -u -m openslides start 0.0.0.0:8000 in einem Subprozess ausgeführt. Das ist eigentlich super gelöst, funktioniert aber leider in der gebauten App nicht. py2app kann das einfach nicht (Stichwort runpy). Nun hatte ich eine einfache Idee, die leider auch nicht funktioniert: Ich habe versucht das Skript, also openslides.__main__.py, direkt aufzurufen, dabei den Subprozess mit PYTHONPATH und PYTHONHOME richtig konfiguriert. Ich bin mir noch nicht sicher, ob es so lösbar ist. PYTHONPATH muss ja auf das site-packages enthalten. Nur wo ist das in der gebauten App?
>>> py2exe und cx_Freeze bauen IIRC beide ein library.zip mit allen
>>> "benötigten"[1] Modulen, je noch konfiguration wird das evtl noch als Datenblob an
>>> die .exe dran gehängt. Um den PYTHONPATH davon muss man sich aber nicht
>>> selbst kümmern, die wrapper.exe die diese Tools generieren sollte das
>>> alles schon korrekt einstellen. Ich würde vermuten das py2app das
>>> ähnlich macht.
>>> 
>>> ```import openslides.__main__``` sollte also prinzipiell einfach so gehen.
>>> Falls nicht müsstest du mal den genauen Fehler den du bekommst posten.
>>> Ich könnte mir aber vorstellen das entweder eine Abhängikeit fehlt (siehe [1]), oder
>>> nicht damit klar kommt wenn sie in nem library zip ist[2].
>>> 
>>> 
>>> [1] Sie suchen im prinzip alle import statements zusammen und bauen so
>>> eine Liste von benötigten Modulen, speziell wenn dinge erst zur
>>> Laufzeitimportiert dynamisch importiert werden fehlt aber immer mal was.
>>> Es sollte da aber Optionen geben mit denen du das bundeln erzwingen/
>>> bzw. auch verhindern kannst.
>>> 
>>> 
>>> [2] Das war IIRC auch einer der Gründe warum wir damals kein py2exe/cx_Freeze für die
>>> Windows-portable genommen haben, django mochte das nicht so wirklich (da
>>> wurde ziemlich viel auf Basis von __file__ gesucht, und erwartet das das
>>> ein normaler Dateipfad ist).
>>> Wenn das das Problem ist könntest du versuchen django von der Liste der
>>> benötigten Module auszuschließen und statt dessen so ins Filesystem zu
>>> legen. Anschließend dann in deinem Main-Modul sys.path passend
>>> manipulieren. Oder aber, was noch besser wäre, du findest eine Option
>>> die die ganzen Python-Module gleich plain ins FS legt.
>>> 
>>> 
>>> Gruß,
>>> Andy
>>> 
>>> _______________________________________________
>>> OpenSlides users-de mailing list
>>> users-de at openslides.org
>>> https://mail.openslides.org/listinfo/users-de
>> 
>> _______________________________________________
>> OpenSlides users-de mailing list
>> users-de at openslides.org
>> https://mail.openslides.org/listinfo/users-de
> _______________________________________________
> OpenSlides users-de mailing list
> users-de at openslides.org
> https://mail.openslides.org/listinfo/users-de


More information about the users-de mailing list