www-apps/gitea: add 1.22.2

Closes: https://github.com/gentoo/gentoo/pull/38477
Signed-off-by: Ryan Tsien <i@bitbili.net>
Signed-off-by: Yixun Lan <dlan@gentoo.org>
This commit is contained in:
Ryan Tsien
2024-09-06 16:21:35 +08:00
committed by Yixun Lan
parent b3da7517e8
commit 258ee7d2de
2 changed files with 151 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST gitea-1.21.11.tar.gz 54029294 BLAKE2B 93fb0ea4118baefeb36283b7168759d318fede528b56a9167961763267181bb283bf9849ce5f57a9950b16047f3b98998b4cd0e92443a23aef4cf15589cc8628 SHA512 ba35d1710bc03ff05bf2490e233bf3b4bd9e002113885b4d2a3193288773c16ad0f2426d4ed64d26b7c49112a02838e67da32167f51c4c08fa4f23738bd78285
DIST gitea-1.22.1.tar.gz 54686177 BLAKE2B 78f25cb6cc024b05f9a51eb9692b2eab97b20d28aad7ed56894b31a5e9ea3ed1be00e1ba75abb75b36cbdfc740507321ff036927bb842ade7cc43c90befe027b SHA512 318513a2aaae8d99358a26d44ab51c7a002b74fb11dbd7f9dfdccdd25f707572b075099e59bc3764564e1219069a1f9e6b56c71474ef494531c73e358d76ac6e
DIST gitea-1.22.2.tar.gz 54444512 BLAKE2B 3e7208bf5b0273cc5394d2ceb680a28562a33ac0fea0411aac73a2d9815dab44c4fa4e76e253bbeb2862064dbd37bf04bc9b9aa85dd75be8b65ffaec0b82420a SHA512 64a84cc116877fffbf10f3f670884898221e3ae0ccc4dcfa0e661f9c0ec19ca415bd6815fde729b49eaf9653665170d6de5fe8a4ba62e85006c8c45f591bd586

View File

@@ -0,0 +1,150 @@
# Copyright 2016-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit fcaps go-module tmpfiles systemd flag-o-matic user-info
DESCRIPTION="A painless self-hosted Git service"
HOMEPAGE="https://gitea.com https://github.com/go-gitea/gitea"
SRC_URI="https://github.com/go-gitea/gitea/releases/download/v${PV}/gitea-src-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-src-${PV}"
LICENSE="Apache-2.0 BSD BSD-2 CC0-1.0 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
IUSE="+acct gogit pam sqlite pie"
DEPEND="
acct? (
acct-group/git
acct-user/git[gitea] )
pam? ( sys-libs/pam )"
RDEPEND="${DEPEND}
!gogit? ( dev-vcs/git )"
BDEPEND=">=dev-lang/go-1.22:="
DOCS=(
custom/conf/app.example.ini CHANGELOG.md CONTRIBUTING.md README.md
)
FILECAPS=(
-m 711 cap_net_bind_service+ep usr/bin/gitea
)
RESTRICT="test"
src_prepare() {
default
sed -i -e "s#^MODE = console#MODE = file#" custom/conf/app.example.ini || die
}
src_configure() {
# bug 832756 - PIE build issues
filter-flags -fPIE
filter-ldflags -fPIE -pie
}
src_compile() {
local gitea_tags
local -a gitea_settings makeenv
# The space-separated list of the -tags flag is deprecated, please
# always use the comma-separated list in the future.
gitea_tags="bindata"
gitea_tags+="$(usex gogit ',gogit' '')"
gitea_tags+="$(usex pam ',pam' '')"
gitea_tags+="$(usex sqlite ',sqlite,sqlite_unlock_notify' '')"
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"
)
makeenv=(
LDFLAGS="-extldflags \"${LDFLAGS}\" ${gitea_settings[*]}"
TAGS="${gitea_tags}"
)
if use pie ; then
# Please check the supported platforms when a new keyword request opened,
# refer to file: 'go/src/internal/platform/supported.go'.
# When PIE buildmode is not supported by internal linker, the external
# linker will be used automatically, refer to:
# https://github.com/golang/go/blob/ed817f1c4055a559a94afffecbb91c78e4f39942/src/cmd/link/internal/ld/config.go#L149
makeenv+=( EXTRA_GOFLAGS="-buildmode=pie" )
fi
env "${makeenv[@]}" emake backend
}
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-r4 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
# It is not guaranteed that the git user and group always exist (due to the acct USE Flag),
# but for convenience, the tmpfile uses the git user and group by default.
# To avoid installation errors, a condition needs to be added here:
# if there is no git user or group, the installation of tmpfile will be skipped
# and the user will be notified to handle it by themselves.
if egetent passwd git &>/dev/null && \
egetent group git &>/dev/null; then
tmpfiles_process gitea.conf
else
eerror "Unable to install the tmpfile for gitea due to the git user or group is missing,"
eerror "please install tmpfile manually or rebuild this package with USE flag 'acct'."
eerror "You can simply copy the default tmpfile from '/usr/lib/tmpfiles.d/gitea.conf'"
eerror "to higher priority path '/etc/tmpfiles.d/gitea.conf', and correct it with"
eerror "the right User and Group value (see tmpfiles.d(5) for details), then execute:"
eerror " # systemd-tmpfiles --create /etc/tmpfiles.d/gitea.conf"
eerror "to install it."
fi
if [[ -n ${REPLACING_VERSIONS} ]]; then
if ver_test "${REPLACING_VERSIONS}" -lt 1.21; then
ewarn "Since version 1.21.0:"
ewarn " 1. The built-in SSH server will now only accept SSH user"
ewarn " certificates, not server certificates. This behaviour matches OpenSSH."
ewarn " 2. The options of the subcommand must follow the subcommand now."
ewarn " 3. Remove 'CHARSET' config option for MySQL, always use 'utf8mb4'."
ewarn "For other breaking changes, see <https://github.com/go-gitea/gitea/releases/tag/v1.21.0>."
fi
if ver_test "${REPLACING_VERSIONS}" -lt 1.22; then
ewarn "Since version 1.22.0:"
ewarn " 1. Minimum database requirements updated to MySQL 8.0, PostgreSQL 12, and MSSQL 2012."
ewarn " 2. There are a lot of refactoring changes related to customizing templates."
ewarn " 3. The default duration of the 'Remember login' feature has been"
ewarn " changed from one week to one month."
ewarn " 4. Enhanced auth token/remember me, the obsolete setting"
ewarn " '[security].COOKIE_USERNAME' has been removed."
ewarn " 5. For MinIO storage, adds a prefix path for all MinIO storage"
ewarn " and override base path will override the path."
ewarn " 6. Now use a more restricted sanitizer for the repository description."
ewarn "For more details, see <https://github.com/go-gitea/gitea/releases/tag/v1.22.0>."
fi
fi
}