nixpkgs/pkgs/servers/calibre-web/db-migrations.patch
Pavel Borzenkov f069cdb0dc calibre-web: init at 0.6.11
There are two patches applied to 'calibre-web' in order to make it more
NixOS friendly:

  - default-logger.patch switches default log output to /dev/stdout, as
    otherwise calibre-web tries to open a file relative to its location,
    which it can't do as the store is read-only. It's not possible to
    pass log file location via command line flags.

  - run-migrations.patch adds an env var __RUN_MIGRATIONS_AND_EXIT that,
    when set, instructs calibre-web to run DB migrations and exit. As
    almost all config parameters are configured via UI in sqlite3 DB,
    this patch allows the DB to be pre-created so it can be updated by
    systemd pre-start script later.  Thus, allowing calibre-web to be
    configured declaratively.
2021-03-21 17:10:12 +03:00

15 lines
401 B
Diff

diff --git a/cps/__init__.py b/cps/__init__.py
index 627cca0b..233bb2dd 100644
--- a/cps/__init__.py
+++ b/cps/__init__.py
@@ -87,6 +87,9 @@ db.CalibreDB.setup_db(config, cli.settingspath)
calibre_db = db.CalibreDB()
+if os.environ.get('__RUN_MIGRATIONS_AND_EXIT'):
+ sys.exit(0)
+
def create_app():
app.wsgi_app = ReverseProxied(app.wsgi_app)
# For python2 convert path to unicode