diff options
Diffstat (limited to 'pix.py')
| -rw-r--r-- | pix.py | 41 |
1 files changed, 9 insertions, 32 deletions
@@ -1,38 +1,15 @@ -import sys -import signal -from threading import Thread -from OpenGL.GLUT import glutLeaveMainLoop +import argparse -from lazycachelist import LazyCachingTextureList -from window import PixDisplay -from immich import ImmichConnector from flaskapi import app, socketio - - -def handle_sigint(sig, frame): - try: - glutLeaveMainLoop() - sys.exit(0) - except: - pass - finally: - print("Exiting on Ctrl+C") +from settings import Config +from manager import PixMan if __name__ == "__main__": - immich_connector = ImmichConnector("http://192.168.1.13", "m5nqOoBc4uhAba21gZdCP3z8D3JT4GPxDXL2psd52EA") - album_keys = [ "38617851-6b57-44f1-b5f7-82577606afc4" ] - lazy_texture_list = LazyCachingTextureList(immich_connector, album_keys, 30, lambda d: socketio.emit("seek", d)) - pd = PixDisplay(lazy_texture_list) - - t1 = Thread(target=immich_connector.idle, daemon=True) - t1.start() - - app.config["pix_display"] = pd - app.config["immich_connector"] = immich_connector - app.config["textures"] = lazy_texture_list - flask_thread = Thread(target=app.run, daemon=True, kwargs={ "port": 5000 }) - flask_thread.start() + p = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) + p.add_argument("--config", type=str, help="set config file path", default="config.json") + p.add_argument("--host", type=str, help="set web interface host", default="0.0.0.0") + p.add_argument("--port", type=int, help="set web interface port", default=80) + args = p.parse_args() - signal.signal(signal.SIGINT, handle_sigint) - pd.main(sys.argv) + PixMan.initialize(args.config, app, socketio, args.host, args.port) |
