diff options
author | stuebinm | 2024-02-15 19:43:42 +0100 |
---|---|---|
committer | stuebinm | 2024-02-15 19:43:42 +0100 |
commit | 5788f8499e5e7089e1c64e397c2308f26874c3a5 (patch) | |
tree | 32bf556051725f31ed08a9e10dbef2fba0b4f556 | |
parent | ed53fa3cf4b9c00064c89e75df68a2fe1e965275 (diff) |
modules/bookwyrm: manage.py wrapper needs env file
otherwise it just fails to start with an error
-rw-r--r-- | modules/bookwyrm.nix | 7 | ||||
-rw-r--r-- | pkgs/bookwyrm.nix | 6 |
2 files changed, 9 insertions, 4 deletions
diff --git a/modules/bookwyrm.nix b/modules/bookwyrm.nix index 9f48ab3..b57636d 100644 --- a/modules/bookwyrm.nix +++ b/modules/bookwyrm.nix @@ -2,6 +2,7 @@ let cfg = config.services.bookwyrm; + manage-wrapper = cfg.package.manage cfg.environmentFile; in { options.services.bookwyrm = with lib; { @@ -125,9 +126,9 @@ in environment.PYTHONPATH = cfg.package.pythonPath; preStart = '' - ${lib.getExe cfg.package.manage} migrate + ${lib.getExe manage-wrapper} migrate # will fail after the first time - ${lib.getExe cfg.package.manage} initdb || true + ${lib.getExe manage-wrapper} initdb || true ''; }; @@ -178,7 +179,7 @@ in users.groups.bookwyrm = {}; environment.systemPackages = mkIf cfg.installWrapper [ - cfg.package.manage + manage-wrapper ]; warnings = mkIf (cfg.settings ? "SECRET_KEY") [ '' diff --git a/pkgs/bookwyrm.nix b/pkgs/bookwyrm.nix index 0c9cb70..7a5daec 100644 --- a/pkgs/bookwyrm.nix +++ b/pkgs/bookwyrm.nix @@ -119,7 +119,11 @@ let pythonPath = python.pkgs.makePythonPath propagatedBuildInputs; gunicorn = python.pkgs.gunicorn; celery = python.pkgs.celery; - manage = writeShellScriptBin "bookwyrm-manage.py" '' + manage = environmentFile: writeShellScriptBin "bookwyrm-manage.py" '' + set -a + ${if environmentFile != null + then "source ${environmentFile}" + else ""} export PYTHONPATH=${passthru.pythonPath} cd ${bookwyrm.outPath} exec ${bookwyrm.outPath}/manage.py "$@" |