diff options
Diffstat (limited to 'app-containers/earthly/earthly-0.8.8.ebuild')
-rw-r--r-- | app-containers/earthly/earthly-0.8.8.ebuild | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/app-containers/earthly/earthly-0.8.8.ebuild b/app-containers/earthly/earthly-0.8.8.ebuild new file mode 100644 index 000000000000..bace0e6e3fcf --- /dev/null +++ b/app-containers/earthly/earthly-0.8.8.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Git commit SHA is needed at runtime by earthly to pull and bootstrap images. +if [[ "${PV}" == 0.8.8 ]] ; then + COMMIT_SHA=2718b793272cf8f80fa61071b41fec8469a7427b +else + die 'Could not detect "COMMIT_SHA", please update the ebuild.' +fi + +inherit go-module unpacker + +DESCRIPTION="Build automation tool that executes in containers" +HOMEPAGE="https://earthly.dev/ + https://github.com/earthly/earthly/" +SRC_URI=" + https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz + https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.zst +" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + || ( + app-containers/docker + app-containers/podman + ) +" + +DOCS=( CHANGELOG.md CONTRIBUTING.md README.md ) + +src_unpack() { + unpacker "${P}-deps.tar.zst" + + go-module_src_unpack +} + +src_compile() { + local go_tags="dfrunmount,dfrunsecurity,dfsecrets,dfssh,dfrunnetwork,dfheredoc,forceposix" + local go_ldflags=" + -X main.DefaultBuildkitdImage=docker.io/earthly/buildkitd:v${PV} + -X main.GitSha=${COMMIT_SHA} + -X main.Version=v${PV} + " + local -a go_buildargs=( + -tags "${go_tags}" + -ldflags "${go_ldflags}" + -o ./bin/ + ) + ego build "${go_buildargs[@]}" ./cmd/... +} + +src_install() { + exeinto /usr/bin + doexe bin/earthly + newexe bin/debugger earthly-debugger + + einstalldocs +} + +pkg_postinst() { + if has_version "app-containers/podman" ; then + ewarn "Podman is supported but not recommended." + ewarn "If issues arise, then please try running earthly with docker." + fi + + if has_version "app-containers/podman[rootless]" ; then + ewarn "Running podman in rootless mode is not supported because" + ewarn "earthly/dind and earthly/buildkit require privileged access." + ewarn "For more info see: https://docs.earthly.dev/docs/guides/podman/" + fi +} |