aboutsummaryrefslogtreecommitdiff
path: root/src/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.py')
-rw-r--r--src/main.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/main.py b/src/main.py
new file mode 100644
index 0000000..2cf6075
--- /dev/null
+++ b/src/main.py
@@ -0,0 +1,36 @@
+import sys
+import argparse
+import os
+import logging
+
+from src.application import Application
+import src.db as db
+
+def parse_arguments():
+ arg_parser = argparse.ArgumentParser(prog = 'Books', description = 'Manage book library')
+ arg_parser.add_argument('--library', help='path to book library')
+ arg_parser.add_argument('--ereader', help='path to ereader')
+ return arg_parser.parse_args()
+
+def main(resources):
+ # Args
+ args = parse_arguments()
+ library = args.library or f'{os.getcwd()}/library'
+ ereader = args.ereader
+
+ # logging
+ logging.basicConfig(level=logging.INFO)
+
+ # Create library directory if missing
+ os.makedirs(library, exist_ok=True)
+
+ # Get connection
+ conn = db.get_connection(library)
+ db.migrate(resources, conn)
+
+ # Start application
+ app = Application(resources, library, ereader, conn, application_id='fr.jorisg.books')
+ app.run()
+
+if __name__ == '__main__':
+ main()