www-apps/hugo: add 0.148.2

Note that automated tests still don't pass, although I performed
manual functionality checking. I'm working on the tests but in
the vein of not letting perfect be the enemy of good, I'm not
blocking the package bump on it.

Signed-off-by: Jay Faulkner <jayf@gentoo.org>
This commit is contained in:
Jay Faulkner
2025-08-22 20:31:35 -07:00
parent 0aa3fec988
commit bde64281f1
2 changed files with 154 additions and 0 deletions

View File

@@ -1,2 +1,4 @@
DIST hugo-0.147.7-vendor.tar.xz 7830372 BLAKE2B 29e87c1c8d55c71c366dbeed0771c8b06d21066936c6201de44ed8b01103f55d15718a990d0ec2d220ce72df6e9070154a4e8475c2c397db1316d77735297956 SHA512 e92aa2d76c6b5df0094240774868310f070c4dd2f9a512123eafd4e6e356f7c9209c7d5f061a3273b05a2ef1547ffb72b1851863fc8de96f77c676f9e4a76b4c
DIST hugo-0.147.7.tar.gz 14603510 BLAKE2B db1953fbbcaf6a84e418139553745dd903c519e1b7fd40627f2a957d112bd66dabca624864002d0944a6873d9f19517db68b0fb151671ddbed81b066466e02bf SHA512 85f1c45da22afe94b1024e57ebf8f97e889877dba33da0ecf88205817717ed3da3d95a0bbf8193837463f9a3fb95dca06fc36957c8d846b509155a944296db74
DIST hugo-0.148.2-vendor.tar.xz 9074900 BLAKE2B 0a502e3e0aaad4900a5c07ae515c3252b0f6d2a101a1c17ea60b2b9df2893e4aee1305b203064a3c816110b0294c9bd2ec3bf8b14320ed446c5fbc0734a23b48 SHA512 f06ad4f825c0e20aea99dd28defa8b9c68c9fbf39f709bb272340ff20659111215c048093084bc519422ac842eb383b1952ec48985e4379f57aa377ce4ce7a04
DIST hugo-0.148.2.tar.gz 14613663 BLAKE2B fd7e26d7724bebfd9014fc34c509683ddc92004b7886b25e6c8f3d56e46d01049b34477cc636b23f8c91f2780125f5178ff6423b37ba9db8ded46f348a389f4d SHA512 e6cccfcd83dcaeb35481badae03b686547ad8d1a31b7c375b29a5ebfab13e11ea27b72d89eb9c9d75b9c1d080e54306a67d2608d9404b34d5735423003bee328

View File

@@ -0,0 +1,152 @@
# Copyright 2018-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit check-reqs go-module shell-completion
DESCRIPTION="Fast static HTML and CSS website generator"
HOMEPAGE="https://gohugo.io https://github.com/gohugoio/hugo"
SRC_URI="
https://github.com/gohugoio/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~jayf/dist/${P}-vendor.tar.xz
"
# NOTE: To create the vendor tarball, run:
# `go mod vendor && cd .. && tar -caf ${P}-vendor.tar.xz ${P}/vendor`
LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0 Unlicense"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
IUSE="+deploy doc +extended test"
BDEPEND="
test? (
dev-python/docutils
dev-ruby/asciidoctor
)
"
RDEPEND="
extended? (
dev-libs/libsass:=
>=media-libs/libwebp-1.3.2:=
)
"
DEPEND="${RDEPEND}"
# NOTE(JayF): Most tests currently pass, but not all. Most failing
# tests are internet-dependant and need to be patched out.
# See https://bugs.gentoo.org/959346
RESTRICT="!test? ( test )"
REQUIRED_USE="deploy? ( extended )"
PATCHES=(
"${FILESDIR}"/${PN}-0.121.0-unbundle-libwebp-and-libsass.patch
)
_check_reqs() {
if [[ ${MERGE_TYPE} == binary ]] ; then
return 0
fi
if has test ${FEATURES}; then
CHECKREQS_DISK_BUILD="4G"
else
CHECKREQS_DISK_BUILD="1500M"
fi
check-reqs_${EBUILD_PHASE_FUNC}
}
pkg_pretend() {
_check_reqs
}
pkg_setup() {
_check_reqs
}
src_configure() {
if use extended; then
if use deploy; then
# per 5dd0ba00f79d5888c8d6d05d3327a74d15073a7b (upstream) this is
# the way to build fully extended with deploy support
export MY_BUILD_FLAGS="-tags extended,withdeploy"
else
export MY_BUILD_FLAGS="-tags extended"
fi
else
export MY_BUILD_FLAGS=""
fi
export CGO_ENABLED=1
export CGO_CFLAGS="${CFLAGS}"
export CGO_CPPFLAGS="${CPPFLAGS}"
export CGO_CXXFLAGS="${CXXFLAGS}"
export CGO_LDFLAGS="${LDFLAGS}"
default
}
src_prepare() {
# wants to run command that require network access
rm testscripts/commands/mod{,_vendor,__disable,_get,_get_u,_npm{,_withexisting}}.txt || die
# NOTE(JayF): Avoiding a hard depednency on sass tooling for tests. Even if
# installed, the tests still don't quite work.
rm resources/resource_transformers/tocss/dartsass/dartsass_integration_test.go || die
# TODO(JayF): Over half of the tests in these modules require network, and it's
# extremely likely more remote-depending tests will be added in the future.
# Ideally, we'd be less blunt in how we disable these tests.
rm tpl/tplimpl/shortcodes_integration_test.go || die
rm resources/resource_factories/create/create_integration_test.go || die
rm modules/client_test.go || die
# NOTE(JayF): Tests depend on reaching out to npm registry
rm internal/js/esbuild/batch_integration_test.go || die
default
}
src_compile() {
mkdir -pv bin || die
ego build -ldflags "-X github.com/gohugoio/hugo/common/hugo.vendorInfo=gentoo:${PVR}" \
${MY_BUILD_FLAGS} -o "${S}/bin/hugo"
bin/hugo gen man --dir man || die
mkdir -pv completions || die
bin/hugo completion bash > completions/hugo || die
bin/hugo completion fish > completions/hugo.fish || die
bin/hugo completion zsh > completions/_hugo || die
if use doc ; then
bin/hugo gen doc --dir doc || die
fi
}
src_test() {
if ! has_version -b virtual/pandoc ; then
elog "You're missing virtual/pandoc - some tests will be skipped."
fi
if ! has_version -b dev-ruby/asciidoctor ; then
elog "You're missing dev-ruby/asciidoctor - some tests will be skipped."
fi
ego test "./..." ${MY_BUILD_FLAGS}
}
src_install() {
dobin bin/*
doman man/*
dobashcomp completions/${PN}
dofishcomp completions/${PN}.fish
dozshcomp completions/_${PN}
if use doc ; then
dodoc -r doc/*
fi
}