aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-crypt/lego/lego-4.14.2.ebuild')
-rw-r--r--app-crypt/lego/lego-4.14.2.ebuild82
1 files changed, 82 insertions, 0 deletions
diff --git a/app-crypt/lego/lego-4.14.2.ebuild b/app-crypt/lego/lego-4.14.2.ebuild
new file mode 100644
index 000000000..2e1646005
--- /dev/null
+++ b/app-crypt/lego/lego-4.14.2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Let's Encrypt/ACME client (like certbot or acme.sh) and library written in Go"
+HOMEPAGE="https://github.com/go-acme/lego/"
+
+DOCUMENTATION_COMMIT=e28a6ff22f2b7f75b8aaae5012672cfcca2be690
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/go-acme/lego.git"
+else
+ SRC_URI="
+ https://github.com/go-acme/lego/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/rahilarious/gentoo-distfiles/releases/download/${P}/deps.tar.xz -> ${P}-deps.tar.xz
+ doc? ( https://github.com/go-acme/lego/archive/${DOCUMENTATION_COMMIT}.tar.gz -> ${P}-docs.tar.gz )
+"
+ KEYWORDS="~amd64"
+fi
+
+# main
+LICENSE="MIT"
+# deps
+LICENSE+=" Apache-2.0 BSD-2 BSD ISC MPL-2.0"
+SLOT="0"
+IUSE="doc"
+
+# some tests require network access otherwise get following error
+# expected: "zoneee: unexpected status code: [status code: 401] body: Unauthorized"
+# actual : "zoneee: could not find zone for domain \"prefix.example.com\" (_acme-challenge.prefix.example.com.): could not find the start of authority for _acme-challenge.prefix.example.com.: read udp 10.0.0.1:54729->10.0.0.1:53: read: connection refused"
+PROPERTIES="test_network"
+RESTRICT="test"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ if use doc; then
+ EGIT_BRANCH="gh-pages"
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}-doc"
+ git-r3_src_unpack
+ fi
+ else
+ go-module_src_unpack
+ fi
+}
+
+src_compile() {
+ export CGO_ENABLED=0
+
+ local VERSION
+ if [[ ${PV} == 9999* ]]; then
+ VERSION="$(git rev-parse HEAD)" || die
+ else
+ VERSION="${PV}"
+ fi
+
+ ego build -trimpath -ldflags "-X main.version=${VERSION}" -o dist/"${PN}" ./cmd/lego/
+}
+
+src_test() {
+ ego test -v -cover ./...
+}
+
+src_install() {
+ # primary program
+ dobin dist/"${PN}"
+
+ # docs
+ einstalldocs
+ if use doc; then
+ if [[ ${PV} == 9999* ]]; then
+ dodoc -r ../"${P}"-doc/*
+ else
+ dodoc -r ../"${PN}"-"${DOCUMENTATION_COMMIT}"/*
+ fi
+ fi
+}