gitea: let the RC script work unprivileged This takes advantage of the introduction of the SYSCONFBASE variable. Tested on NetBSD/amd64. While there, also fix a couple substitutions in the default configuration file (app.ini). Bumps PKGREVISION.diff -r1.60 -r1.61 pkgsrc/www/gitea/Makefile
(khorben)
@@ -1,17 +1,17 @@ | @@ -1,17 +1,17 @@ | |||
1 | # $NetBSD: Makefile,v 1.60 2021/11/05 20:02:49 bsiegert Exp $ | 1 | # $NetBSD: Makefile,v 1.61 2021/11/18 02:45:29 khorben Exp $ | |
2 | 2 | |||
3 | DISTNAME= gitea-1.13.4 | 3 | DISTNAME= gitea-1.13.4 | |
4 | PKGREVISION= 10 | 4 | PKGREVISION= 11 | |
5 | MASTER_SITES= ${MASTER_SITE_GITHUB:=go-gitea/} | 5 | MASTER_SITES= ${MASTER_SITE_GITHUB:=go-gitea/} | |
6 | CATEGORIES= www | 6 | CATEGORIES= www | |
7 | GITHUB_TAG= v${PKGVERSION_NOREV} | 7 | GITHUB_TAG= v${PKGVERSION_NOREV} | |
8 | 8 | |||
9 | MAINTAINER= tuxillo@quantumachine.net | 9 | MAINTAINER= tuxillo@quantumachine.net | |
10 | HOMEPAGE= https://gitea.io/ | 10 | HOMEPAGE= https://gitea.io/ | |
11 | COMMENT= Compact self-hosted Git service | 11 | COMMENT= Compact self-hosted Git service | |
12 | LICENSE= mit | 12 | LICENSE= mit | |
13 | 13 | |||
14 | GO_DIST_BASE= ${DISTNAME} | 14 | GO_DIST_BASE= ${DISTNAME} | |
15 | GO_SRCPATH= code.gitea.io/gitea | 15 | GO_SRCPATH= code.gitea.io/gitea | |
16 | 16 | |||
17 | # | 17 | # | |
@@ -64,27 +64,27 @@ PKG_SYSCONFSUBDIR= gitea | @@ -64,27 +64,27 @@ PKG_SYSCONFSUBDIR= gitea | |||
64 | 64 | |||
65 | INSTALLATION_DIRS+= sbin share/gitea share/examples/gitea | 65 | INSTALLATION_DIRS+= sbin share/gitea share/examples/gitea | |
66 | 66 | |||
67 | PKG_GROUPS= ${GITEA_GROUP} | 67 | PKG_GROUPS= ${GITEA_GROUP} | |
68 | PKG_USERS= ${GITEA_USER}:${GITEA_GROUP} | 68 | PKG_USERS= ${GITEA_USER}:${GITEA_GROUP} | |
69 | 69 | |||
70 | PKG_SHELL.${GITEA_USER}= ${SH} | 70 | PKG_SHELL.${GITEA_USER}= ${SH} | |
71 | PKG_HOME.${GITEA_USER}= ${VARBASE}/db/gitea | 71 | PKG_HOME.${GITEA_USER}= ${VARBASE}/db/gitea | |
72 | 72 | |||
73 | SUBST_CLASSES+= fix-var | 73 | SUBST_CLASSES+= fix-var | |
74 | SUBST_STAGE.fix-var= pre-configure | 74 | SUBST_STAGE.fix-var= pre-configure | |
75 | SUBST_MESSAGE.fix-var= Replace some vars | 75 | SUBST_MESSAGE.fix-var= Replace some vars | |
76 | SUBST_FILES.fix-var= ${WRKDIR}/app.ini.sample | 76 | SUBST_FILES.fix-var= ${WRKDIR}/app.ini.sample | |
77 | SUBST_VARS.fix-var= VARBASE GITEA_USER | 77 | SUBST_VARS.fix-var= PKG_SYSCONFDIR VARBASE GITEA_USER | |
78 | 78 | |||
79 | CONF_FILES_PERMS+= ${EGDIR}/app.ini.sample ${PKG_SYSCONFDIR}/conf/app.ini \ | 79 | CONF_FILES_PERMS+= ${EGDIR}/app.ini.sample ${PKG_SYSCONFDIR}/conf/app.ini \ | |
80 | ${GITEA_USER} ${GITEA_GROUP} 0600 | 80 | ${GITEA_USER} ${GITEA_GROUP} 0600 | |
81 | 81 | |||
82 | FILES_SUBST+= GITEA_USER=${GITEA_USER} | 82 | FILES_SUBST+= GITEA_USER=${GITEA_USER} | |
83 | FILES_SUBST+= GITEA_GROUP=${GITEA_GROUP} | 83 | FILES_SUBST+= GITEA_GROUP=${GITEA_GROUP} | |
84 | FILES_SUBST+= GITEA_USER_HOME=${VARBASE}/db/gitea | 84 | FILES_SUBST+= GITEA_USER_HOME=${VARBASE}/db/gitea | |
85 | FILES_SUBST+= GITEA_SHARE_DIR=${PREFIX}/share/gitea | 85 | FILES_SUBST+= GITEA_SHARE_DIR=${PREFIX}/share/gitea | |
86 | 86 | |||
87 | RCD_SCRIPTS+= gitea | 87 | RCD_SCRIPTS+= gitea | |
88 | 88 | |||
89 | MAKE_ENV+= TAGS="${GO_TAGS}" | 89 | MAKE_ENV+= TAGS="${GO_TAGS}" | |
90 | 90 |
@@ -7,27 +7,27 @@ | @@ -7,27 +7,27 @@ | |||
7 | # | 7 | # | |
8 | # This sample configuration runs Gitea with a local database. Before | 8 | # This sample configuration runs Gitea with a local database. Before | |
9 | # running this configuration, make sure to change the SECRET_KEY and the | 9 | # running this configuration, make sure to change the SECRET_KEY and the | |
10 | # INTERNAL_TOKEN at the end of this file. SECRET_KEY is a password of your | 10 | # INTERNAL_TOKEN at the end of this file. SECRET_KEY is a password of your | |
11 | # choosing, INTERNAL_TOKEN is a 64-byte random number in BASE64 encoding. | 11 | # choosing, INTERNAL_TOKEN is a 64-byte random number in BASE64 encoding. | |
12 | # Your can generate the token using for example: | 12 | # Your can generate the token using for example: | |
13 | # openssl rand -base64 64 | 13 | # openssl rand -base64 64 | |
14 | # | 14 | # | |
15 | # There are no pre-configured users; the first user to register becomes an | 15 | # There are no pre-configured users; the first user to register becomes an | |
16 | # admin. In this sample configuration, the HTTP server only listens on | 16 | # admin. In this sample configuration, the HTTP server only listens on | |
17 | # localhost. | 17 | # localhost. | |
18 | # | 18 | # | |
19 | # If you'd rather use the web-based installer, remove this conf/app.ini file | 19 | # If you'd rather use the web-based installer, remove this conf/app.ini file | |
20 | # and make %%PREFIX%%/etc/gitea/conf writeable to the git user. | 20 | # and make @PKG_SYSCONFDIR@/gitea/conf writeable to the @GITEA_USER@ user. | |
21 | 21 | |||
22 | APP_NAME = Gitea: Git with a cup of tea | 22 | APP_NAME = Gitea: Git with a cup of tea | |
23 | RUN_USER = @GITEA_USER@ | 23 | RUN_USER = @GITEA_USER@ | |
24 | RUN_MODE = prod | 24 | RUN_MODE = prod | |
25 | 25 | |||
26 | [database] | 26 | [database] | |
27 | DB_TYPE = sqlite3 | 27 | DB_TYPE = sqlite3 | |
28 | HOST = 127.0.0.1:3306 | 28 | HOST = 127.0.0.1:3306 | |
29 | NAME = gitea | 29 | NAME = gitea | |
30 | PASSWD = | 30 | PASSWD = | |
31 | PATH = @VARBASE@/db/gitea/gitea.db | 31 | PATH = @VARBASE@/db/gitea/gitea.db | |
32 | SSL_MODE = disable | 32 | SSL_MODE = disable | |
33 | USER = root | 33 | USER = root |
@@ -1,21 +1,25 @@ | @@ -1,21 +1,25 @@ | |||
1 | #!@RCD_SCRIPTS_SHELL@ | 1 | #!@RCD_SCRIPTS_SHELL@ | |
2 | # | 2 | # | |
3 | # $NetBSD: gitea.sh,v 1.3 2021/03/01 23:47:09 khorben Exp $ | 3 | # $NetBSD: gitea.sh,v 1.4 2021/11/18 02:45:29 khorben Exp $ | |
4 | # | 4 | # | |
5 | # PROVIDE: gitea | 5 | # PROVIDE: gitea | |
6 | # REQUIRE: DAEMON | 6 | # REQUIRE: DAEMON | |
7 | # | |||
8 | # You will need to set some variables in @SYSCONFBASE@/rc.conf to start gitea: | |||
9 | # | |||
10 | # gitea=YES | |||
7 | 11 | |||
8 | . /etc/rc.subr | 12 | $_rc_subr_loaded . @SYSCONFBASE@/rc.subr | |
9 | 13 | |||
10 | name="gitea" | 14 | name="gitea" | |
11 | rcvar=${name} | 15 | rcvar=${name} | |
12 | required_files="@PKG_SYSCONFDIR@/conf/app.ini" | 16 | required_files="@PKG_SYSCONFDIR@/conf/app.ini" | |
13 | command="@PREFIX@/sbin/gitea" | 17 | command="@PREFIX@/sbin/gitea" | |
14 | command_args="--config @PKG_SYSCONFDIR@/conf/app.ini web > /dev/null &" | 18 | command_args="--config @PKG_SYSCONFDIR@/conf/app.ini web > /dev/null &" | |
15 | 19 | |||
16 | gitea_env="GITEA_WORK_DIR=@GITEA_SHARE_DIR@" | 20 | gitea_env="GITEA_WORK_DIR=@GITEA_SHARE_DIR@" | |
17 | gitea_env="${gitea_env} GITEA_CUSTOM=@PKG_SYSCONFDIR@" | 21 | gitea_env="${gitea_env} GITEA_CUSTOM=@PKG_SYSCONFDIR@" | |
18 | gitea_env="${gitea_env} HOME=@GITEA_USER_HOME@" | 22 | gitea_env="${gitea_env} HOME=@GITEA_USER_HOME@" | |
19 | gitea_env="${gitea_env} USER=@GITEA_USER@" | 23 | gitea_env="${gitea_env} USER=@GITEA_USER@" | |
20 | 24 | |||
21 | gitea_user="@GITEA_USER@" | 25 | gitea_user="@GITEA_USER@" |