From 05b7acaa3d40b21b40f56cc8541f6c74d9eaa02e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20Neum=C3=A4rker?= Date: Wed, 24 Apr 2019 08:25:13 +0200 Subject: [PATCH] www-apps/gitea: bump to 1.8.2 + fix systemd service MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Closes: https://bugs.gentoo.org/671596 Closes: https://bugs.gentoo.org/684196 Closes: https://bugs.gentoo.org/685616 Package-Manager: Portage-2.3.62, Repoman-2.3.12 Signed-off-by: Felix Neumärker Closes: https://github.com/gentoo/gentoo/pull/11977 Signed-off-by: Michał Górny --- www-apps/gitea/Manifest | 1 + www-apps/gitea/files/gitea.initd-r3 | 22 ++++++ www-apps/gitea/files/gitea.service-r2 | 34 +++++++++ www-apps/gitea/gitea-1.8.2.ebuild | 104 ++++++++++++++++++++++++++ 4 files changed, 161 insertions(+) create mode 100644 www-apps/gitea/files/gitea.initd-r3 create mode 100644 www-apps/gitea/files/gitea.service-r2 create mode 100644 www-apps/gitea/gitea-1.8.2.ebuild diff --git a/www-apps/gitea/Manifest b/www-apps/gitea/Manifest index 4bc7d85e6170..7b0f2c8349bd 100644 --- a/www-apps/gitea/Manifest +++ b/www-apps/gitea/Manifest @@ -1 +1,2 @@ DIST gitea-1.8.0.tar.gz 24268907 BLAKE2B b46a17733fc7bd0f228620bdfadf0d596ea56fca6e685afab7734e794c1f87c5e004529ca3d69e907d516bcb83563565b1d8c32501f1c2c0f9295ca028d96ad0 SHA512 eebbe2f77ed2e4c3562f48a6fa647e6f2a0492c5b6ea4f13542a5ef82e94a357a8d53897aa013107b5f735d2aff9d719893b5724de44831c43998c2e9c6e78d7 +DIST gitea-1.8.2.tar.gz 24321492 BLAKE2B 48a718edd1d607e4f8ee2a301bdd907f2a233be515fa327eac9cfb50cdbc024e5f90e6e86e95056c256cb35497c5a3b2ab5fa4a068a22b28c1a3d2b94780da7a SHA512 23ef63c1cea276800a19fe04b87b4baa421e1202260b4ec55614a77ee54c0bc9e5db6dad7f98791c4d902b2d4cb15f4facc4d201631cf2ef7cefd0ff996753be diff --git a/www-apps/gitea/files/gitea.initd-r3 b/www-apps/gitea/files/gitea.initd-r3 new file mode 100644 index 000000000000..680ae834e230 --- /dev/null +++ b/www-apps/gitea/files/gitea.initd-r3 @@ -0,0 +1,22 @@ +#!/sbin/openrc-run +# Copyright 2016-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +description="Gitea, a self-hosted Git service" + +: ${GITEA_CONF:=/etc/gitea/app.ini} +: ${GITEA_USER:=git} +: ${GITEA_GROUP:=git} +: ${GITEA_WORK_DIR:=/var/lib/gitea} +: ${GITEA_CUSTOM:=${GITEA_WORK_DIR}/custom} + +command="/usr/bin/gitea web" +command_args="--config ${GITEA_CONF}" +command_background="true" +command_user="${GITEA_USER}:${GITEA_GROUP}" +error_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.err" +pidfile="/run/${RC_SVCNAME}.pid" +required_files="${GITEA_CONF}" +start_stop_daemon_args="-d ${GITEA_WORK_DIR}" +start_stop_daemon_args="${start_stop_daemon_args} -e GITEA_WORK_DIR=${GITEA_WORK_DIR}" +start_stop_daemon_args="${start_stop_daemon_args} -e GITEA_CUSTOM=${GITEA_CUSTOM}" diff --git a/www-apps/gitea/files/gitea.service-r2 b/www-apps/gitea/files/gitea.service-r2 new file mode 100644 index 000000000000..1931b46c73c4 --- /dev/null +++ b/www-apps/gitea/files/gitea.service-r2 @@ -0,0 +1,34 @@ +[Unit] +Description=Gitea service +Documentation=https://docs.gitea.io/ + +AssertPathIsDirectory=/var/lib/gitea +AssertPathIsReadWrite=/var/lib/gitea + +After=network.target +Requires=network.target +After=mysqld.service +After=postgresql-9.3.service +After=postgresql-9.4.service +After=postgresql-9.5.service +After=postgresql-9.6.service +After=postgresql-10.service +After=postgresql-11.service +After=postgresql-12.service +After=memcached.service +After=redis.service + +[Service] +User=git +Group=git + +Environment="GITEA_WORK_DIR=/var/lib/gitea" "GITEA_CUSTOM=/var/lib/gitea/custom" +WorkingDirectory=/var/lib/gitea +ExecStart=/usr/bin/gitea web --config /etc/gitea/app.ini + +Restart=always +PrivateTmp=true +Nice=5 + +[Install] +WantedBy=multi-user.target diff --git a/www-apps/gitea/gitea-1.8.2.ebuild b/www-apps/gitea/gitea-1.8.2.ebuild new file mode 100644 index 000000000000..bdefa9b63520 --- /dev/null +++ b/www-apps/gitea/gitea-1.8.2.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit golang-vcs-snapshot systemd user + +EGO_PN="code.gitea.io/gitea" + +DESCRIPTION="A painless self-hosted Git service" +HOMEPAGE="https://gitea.io" +SRC_URI="https://github.com/go-gitea/gitea/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64" +IUSE="pam sqlite" + +COMMON_DEPEND="pam? ( sys-libs/pam )" +DEPEND="${COMMON_DEPEND} + dev-go/go-bindata" +RDEPEND="${COMMON_DEPEND} + dev-vcs/git" + +DOCS=( custom/conf/app.ini.sample CONTRIBUTING.md README.md ) +S="${WORKDIR}/${P}/src/${EGO_PN}" + +pkg_setup() { + enewgroup git + enewuser git -1 /bin/bash /var/lib/gitea git +} + +gitea_make() { + local my_tags=( + bindata + $(usev pam) + $(usex sqlite 'sqlite sqlite_unlock_notify' '') + ) + local my_makeopt=( + DRONE_TAG=${PV} + TAGS="${my_tags[@]}" + ) + GOPATH=${WORKDIR}/${P}:$(get_golibdir_gopath) emake "${my_makeopt[@]}" "$@" +} + +src_prepare() { + default + sed -i \ + -e "s#^RUN_MODE = dev#RUN_MODE = prod#" \ + -e "s#^ROOT =#ROOT = ${EPREFIX}/var/lib/gitea/gitea-repositories#" \ + -e "s#^ROOT_PATH =#ROOT_PATH = ${EPREFIX}/var/log/gitea#" \ + -e "s#^APP_DATA_PATH = data#APP_DATA_PATH = ${EPREFIX}/var/lib/gitea/data#" \ + -e "s#^HTTP_ADDR = 0.0.0.0#HTTP_ADDR = 127.0.0.1#" \ + -e "s#^MODE = console#MODE = file#" \ + -e "s#^LEVEL = Trace#LEVEL = Info#" \ + -e "s#^LOG_SQL = true#LOG_SQL = false#" \ + -e "s#^DISABLE_ROUTER_LOG = false#DISABLE_ROUTER_LOG = true#" \ + -e "s#^APP_ID =#;APP_ID =#" \ + -e "s#^TRUSTED_FACETS =#;TRUSTED_FACETS =#" \ + custom/conf/app.ini.sample || die + if use sqlite ; then + sed -i -e "s#^DB_TYPE = .*#DB_TYPE = sqlite3#" custom/conf/app.ini.sample || die + fi + + gitea_make generate +} + +src_compile() { + gitea_make build +} + +src_test() { + gitea_make test +} + +src_install() { + dobin gitea + + einstalldocs + + newconfd "${FILESDIR}"/gitea.confd-r1 gitea + newinitd "${FILESDIR}"/gitea.initd-r3 gitea + systemd_newunit "${FILESDIR}"/gitea.service-r2 gitea.service + + insinto /etc/gitea + newins custom/conf/app.ini.sample app.ini + fowners root:git /etc/gitea/{,app.ini} + fperms g+w,o-rwx /etc/gitea/{,app.ini} + + diropts -m0750 -o git -g git + keepdir /var/lib/gitea /var/lib/gitea/custom /var/lib/gitea/data + keepdir /var/log/gitea +} + +pkg_postinst() { + if [[ -e "${EROOT}/var/lib/gitea/conf/app.ini" ]]; then + ewarn "The configuration path has been changed to ${EROOT}/etc/gitea/app.ini." + ewarn "Please move your configuration from ${EROOT}/var/lib/gitea/conf/app.ini" + ewarn "and adapt the gitea-repositories hooks and ssh authorized_keys." + ewarn "Depending on your configuration you should run something like:" + ewarn "sed -i -e 's#${EROOT}/var/lib/gitea/conf/app.ini#${EROOT}/etc/gitea/app.ini#' \\" + ewarn " /var/lib/gitea/gitea-repositories/*/*/hooks/*/* \\" + ewarn " /var/lib/gitea/.ssh/authorized_keys" + fi +} -- 2.26.2