# Copyright 2016-2025 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:= /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 ." 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 ." fi fi }