diff options
Diffstat (limited to 'www/forgejo/files/forgejo.in')
| -rw-r--r-- | www/forgejo/files/forgejo.in | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/www/forgejo/files/forgejo.in b/www/forgejo/files/forgejo.in index 516f63862e60..1474bd63438a 100644 --- a/www/forgejo/files/forgejo.in +++ b/www/forgejo/files/forgejo.in @@ -20,7 +20,6 @@ load_rc_config $name : ${forgejo_configcheck_enable:="YES"} : ${forgejo_facility:="daemon"} : ${forgejo_priority:="info"} -: ${forgejo_shared:="%%PREFIX%%/share/${name}"} : ${forgejo_custom:="%%PREFIX%%/etc/${name}"} command="%%PREFIX%%/sbin/${name} web" @@ -42,7 +41,6 @@ forgejo_start() { /usr/sbin/daemon %%DAEMONARGS%% \ -u ${forgejo_user} -p ${pidfile} \ /usr/bin/env -i \ - "FORGEJO_WORK_DIR=${forgejo_shared}" \ "FORGEJO_CUSTOM=${forgejo_custom}" \ "HOME=${githome}" \ "PATH=%%PREFIX%%/bin:${PATH}" \ @@ -52,13 +50,16 @@ forgejo_start() { forgejo_prestart() { if checkyesno forgejo_configcheck_enable; then - if su -m ${forgejo_user} -c "FORGEJO_CUSTOM=${forgejo_custom} \ - %%PREFIX%%/sbin/${name} doctor check >/dev/null"; then - else - echo "cannot start ${name} because of configuration errors. Run" >&2 - echo " su -m git -c '${name} doctor check'" >&2 - echo "for further details" - return 1 + if ! errstr=$(/usr/bin/env -i \ + "FORGEJO_CUSTOM=${forgejo_custom}" \ + "HOME=${githome}" \ + "PATH=%%PREFIX%%/bin:${PATH}" \ + "USER=${forgejo_user}" \ + /usr/bin/su -m ${forgejo_user} -c \ + "%%PREFIX%%/sbin/${name} doctor check" 2>&1); then + rc=$? + echo "$errstr" >&2 + return $rc fi fi } |
