diff --git a/dev-util/forgejo-runner/Manifest b/dev-util/forgejo-runner/Manifest index af09114fd3..6a22c80de2 100644 --- a/dev-util/forgejo-runner/Manifest +++ b/dev-util/forgejo-runner/Manifest @@ -1,2 +1,4 @@ +DIST forgejo-runner-12.10.0-deps.tar.xz 96811256 BLAKE2B 1dee826ec32c1bc77f9fcb7871b4ee5542ff19e9989724827311538ef2385f7e0593214d6ea0c915ce0a81657ff44c6c1ee044961c21b82df20ff467a32493c7 SHA512 6454bc5bf8e54e2ad7dd1e3bc8c60248eacddd08a42416242db36b967c968e6d7c5f1be46e4e8af0a95e2670f3b27658672809b319984dd1515cf40b63f0b6d9 +DIST forgejo-runner-12.10.0.tar.gz 3526091 BLAKE2B e6eabd4379bfb07b875d406eb7798cac8863ac0f85f33a5faf882307ff22581d68e6802c5b3c8cb10fdd0823cf5f2e516a9f728f810e29909441ba71ed308b79 SHA512 a4385aff462d5753f799bf69b5ec27a899e5786eef2113e63ea83dc42139f3a92f6cda3867ca1c2fe743e06a2b830850673d759284bd2426f807842609538237 DIST forgejo-runner-12.9.0-deps.tar.xz 96811256 BLAKE2B 1dee826ec32c1bc77f9fcb7871b4ee5542ff19e9989724827311538ef2385f7e0593214d6ea0c915ce0a81657ff44c6c1ee044961c21b82df20ff467a32493c7 SHA512 6454bc5bf8e54e2ad7dd1e3bc8c60248eacddd08a42416242db36b967c968e6d7c5f1be46e4e8af0a95e2670f3b27658672809b319984dd1515cf40b63f0b6d9 DIST forgejo-runner-12.9.0.tar.gz 3516923 BLAKE2B 507dfe8426cea8419eafdd296f7d6177a596e1601429c3d9a27303af5e91c4fb3821623a449bd01db33a911f67580c1524799f0173ca0767085936a79e0f1b45 SHA512 d32b24614410a227d4ea89a213c3f453e0d3969856e42d0475fcb1fd336cbe2e5ca9d6d18c031647a03e8f1f614836a9f29926a773a73e0f2bbf820b7b0c5614 diff --git a/dev-util/forgejo-runner/forgejo-runner-12.10.0.ebuild b/dev-util/forgejo-runner/forgejo-runner-12.10.0.ebuild new file mode 100644 index 0000000000..5d402e6221 --- /dev/null +++ b/dev-util/forgejo-runner/forgejo-runner-12.10.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit go-module systemd + +DESCRIPTION="A daemon that connects to a Forgejo instance and runs jobs for CI" +HOMEPAGE="https://code.forgejo.org/forgejo/runner https://forgejo.org/docs/next/admin/actions/" + +if [[ "${PV}" == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://code.forgejo.org/forgejo/runner.git" +else + SRC_URI=" + https://code.forgejo.org/forgejo/runner/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-deps.tar.xz + " + S="${WORKDIR}/runner" + + KEYWORDS="~amd64 ~arm64" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="examples +docker podman lxc" +RESTRICT="mirror test" +REQUIRED_USE="|| ( docker podman lxc )" + +DEPEND=" + >=dev-lang/go-1.25.9 +" + +RDEPEND=" + acct-user/${PN}[docker=,podman=,lxc=] +" + +src_unpack() { + if [[ "${PV}" == *9999* ]]; then + git-r3_src_unpack + go-module_live_vendor + else + go-module_src_unpack + fi +} + +src_prepare() { + default + + sed \ + -e "/ExecStart=/s#=.*#=${EPREFIX}/usr/bin/forgejo-runner daemon -c %h/runner-config.yml#g" \ + -e "/ExecReload=/s#=#=${EPREFIX}#g" \ + -e "/User=/s#=.*#=${PN}#g" \ + -e '/WorkingDirectory=/s#=.*#=~#g' \ + -i contrib/forgejo-runner.service || die +} + +src_compile() { + # export version information + # https://github.com/gentoo/guru/pull/205 + # https://forums.gentoo.org/viewtopic-p-8831646.html + local VERSION + if [[ "${PV}" == *9999* ]]; then + VERSION="$( + git describe --tags --first-parent --abbrev=7 --long --dirty --always \ + | sed -e "s/^v//g" + )" + else + VERSION="${PVR}" + fi + + local EXTRA_GOFLAGS_LD=( + # "-w" # disable DWARF generation + # "-s" # disable symbol table + "-X=code.forgejo.org/forgejo/runner/v11/internal/pkg/ver.version=v${VERSION}" + ) + + GOFLAGS+=" '-ldflags=${EXTRA_GOFLAGS_LD[*]}'" + + ego build -tags 'netgo osusergo' -o forgejo-runner + + # Makefile does this + # emake forgejo-runner +} + +src_install() { + dobin forgejo-runner + + systemd_dounit "contrib/forgejo-runner.service" + + dodoc "README.md" + if use examples; then + dodoc -r "examples" + docompress -x "/usr/share/doc/${PF}/examples" + fi +}