lol

nixos/etebase-server: Leverage $PATH

This simplifies the existing module
but also enables consumers to call `etebase-server`
from custom preStart commands (i.e. user creation commands).

authored by

Aneesh Agrawal and committed by
Bjørn Forsman
2fc85042 aefc89e2

+4 -4
+4 -4
nixos/modules/services/misc/etebase-server.nix
··· 179 179 description = "An Etebase (EteSync 2.0) server"; 180 180 after = [ "network.target" "systemd-tmpfiles-setup.service" ]; 181 181 wantedBy = [ "multi-user.target" ]; 182 + path = [ pythonEnv ]; 182 183 serviceConfig = { 183 184 User = cfg.user; 184 185 Restart = "always"; 185 186 WorkingDirectory = cfg.dataDir; 186 187 }; 187 188 environment = { 188 - PYTHONPATH = "${pythonEnv}/${pkgs.python3.sitePackages}"; 189 189 ETEBASE_EASY_CONFIG_PATH = configIni; 190 190 }; 191 191 preStart = '' 192 192 # Auto-migrate on first run or if the package has changed 193 193 versionFile="${cfg.dataDir}/src-version" 194 194 if [[ $(cat "$versionFile" 2>/dev/null) != ${pkgs.etebase-server} ]]; then 195 - ${pythonEnv}/bin/etebase-server migrate --no-input 196 - ${pythonEnv}/bin/etebase-server collectstatic --no-input --clear 195 + etebase-server migrate --no-input 196 + etebase-server collectstatic --no-input --clear 197 197 echo ${pkgs.etebase-server} > "$versionFile" 198 198 fi 199 199 ''; ··· 204 204 else "-b 0.0.0.0 -p ${toString cfg.port}"; 205 205 in '' 206 206 cd "${pythonEnv}/lib/etebase-server"; 207 - ${pythonEnv}/bin/daphne ${networking} \ 207 + daphne ${networking} \ 208 208 etebase_server.asgi:application 209 209 ''; 210 210 };