forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Closes: https://bugs.gentoo.org/799287 Package-Manager: Portage-3.0.20, Repoman-3.0.2 Signed-off-by: Pierre-Olivier Mercier <[email protected]> Signed-off-by: Joonas Niilola <[email protected]>
- Loading branch information
Showing
2 changed files
with
130 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST gitea-1.14.2.tar.gz 117884130 BLAKE2B 75ae36ade602bcbdcc59cd3f75f60ab5fbde713399b1d8b83f29b2bee044c9a5dc83fbae8f372f62c991edeef7237a5a96a9f6b4cda0ae1db93d6596377e1a98 SHA512 073ff6d718522c1b8d2746379d6d0051dd18db89331604c1cc252bcedbad04e75a1f402bdd37fea05d21e6b5d24f43ebf9e70748f8522996fdf8eb133d2a3e38 | ||
DIST gitea-1.14.6.tar.gz 117871468 BLAKE2B f71ea5e6761e36bbb5d4304e606b99513196703773c4595fef85e1641cff179e2b58b3150de199636a504ec806fc17d8deb73cac903824502749cbcdd6f72aaa SHA512 2e17994dbadc29d62f244d70550da59c1ab6818a1e5af20265405024b26fe6641bbeabb6b227f432170abd133fb3f11a2b5d9ac814ebd234729e4fcc0c4ed6d0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,129 @@ | ||
# Copyright 1999-2021 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
inherit fcaps go-module tmpfiles systemd | ||
MY_PV="${PV/_rc/-rc}" | ||
|
||
DESCRIPTION="A painless self-hosted Git service" | ||
HOMEPAGE="https://gitea.io" | ||
|
||
if [[ ${PV} != 9999* ]] ; then | ||
SRC_URI="https://github.com/go-gitea/gitea/releases/download/v${MY_PV}/gitea-src-${MY_PV}.tar.gz -> ${P}.tar.gz" | ||
KEYWORDS="~amd64 ~arm ~arm64" | ||
S="${WORKDIR}" | ||
else | ||
EGIT_REPO_URI="https://github.com/go-gitea/gitea" | ||
inherit git-r3 | ||
S="${WORKDIR}/${P}" | ||
fi | ||
|
||
LICENSE="Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0" | ||
SLOT="0" | ||
IUSE="+acct build-client pam sqlite" | ||
|
||
BDEPEND="build-client? ( >=net-libs/nodejs-10[npm] )" | ||
COMMON_DEPEND=" | ||
acct? ( | ||
acct-group/git | ||
acct-user/git[gitea] ) | ||
pam? ( sys-libs/pam )" | ||
DEPEND="${COMMON_DEPEND}" | ||
RDEPEND="${COMMON_DEPEND} | ||
dev-vcs/git" | ||
|
||
DOCS=( | ||
custom/conf/app.example.ini CONTRIBUTING.md README.md | ||
) | ||
FILECAPS=( | ||
cap_net_bind_service+ep usr/bin/gitea | ||
) | ||
|
||
RESTRICT="test" | ||
QA_PRESTRIPPED="usr/bin/gitea" | ||
|
||
src_prepare() { | ||
default | ||
|
||
local sedcmds=( | ||
-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#" | ||
) | ||
|
||
sed -i "${sedcmds[@]}" custom/conf/app.example.ini || die | ||
if use sqlite ; then | ||
sed -i -e "s#^DB_TYPE = .*#DB_TYPE = sqlite3#" custom/conf/app.example.ini || die | ||
fi | ||
|
||
einfo "Remove tests which are known to fail with network-sandbox enabled." | ||
rm ./modules/migrations/github_test.go || die | ||
|
||
einfo "Remove tests which depend on gitea git-repo." | ||
rm ./modules/git/blob_test.go || die | ||
rm ./modules/git/repo_test.go || die | ||
|
||
# Remove already build assets (like frontend part) | ||
use build-client && emake clean-all | ||
} | ||
|
||
src_compile() { | ||
local gitea_tags=( | ||
bindata | ||
$(usev pam) | ||
$(usex sqlite 'sqlite sqlite_unlock_notify' '') | ||
) | ||
local gitea_settings=( | ||
"-X code.gitea.io/gitea/modules/setting.CustomConf=${EPREFIX}/etc/gitea/app.ini" | ||
"-X code.gitea.io/gitea/modules/setting.CustomPath=${EPREFIX}/var/lib/gitea/custom" | ||
"-X code.gitea.io/gitea/modules/setting.AppWorkPath=${EPREFIX}/var/lib/gitea" | ||
) | ||
local makeenv=( | ||
TAGS="${gitea_tags[*]}" | ||
LDFLAGS="-extldflags \"${LDFLAGS}\" ${gitea_settings[*]}" | ||
) | ||
[[ ${PV} != 9999* ]] && makeenv+=("DRONE_TAG=${MY_PV}") | ||
|
||
if use build-client; then | ||
# -j1 as Makefile doesn't handle dependancy correctly, and is not | ||
# useful as golang compiler don't use this info. | ||
env "${makeenv[@]}" emake -j1 build | ||
else | ||
env "${makeenv[@]}" emake backend | ||
fi | ||
} | ||
|
||
src_install() { | ||
dobin gitea | ||
|
||
einstalldocs | ||
|
||
newconfd "${FILESDIR}/gitea.confd-r1" gitea | ||
newinitd "${FILESDIR}/gitea.initd-r3" gitea | ||
newtmpfiles - gitea.conf <<-EOF | ||
d /run/gitea 0755 git git | ||
EOF | ||
systemd_newunit "${FILESDIR}"/gitea.service-r3 gitea.service | ||
|
||
insinto /etc/gitea | ||
newins custom/conf/app.example.ini app.ini | ||
if use acct ; then | ||
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 | ||
fi | ||
} | ||
|
||
pkg_postinst() { | ||
fcaps_pkg_postinst | ||
go-module_pkg_postinst | ||
tmpfiles_process gitea.conf | ||
} |