mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-09 23:23:00 -04:00
103 lines
2.0 KiB
Bash
103 lines
2.0 KiB
Bash
# Copyright 2021-2022 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
LUA_COMPAT=( lua5-{1..4} luajit )
|
|
|
|
inherit fcaps lua-single systemd meson linux-info
|
|
|
|
DESCRIPTION="hinsightd a http/1.1 webserver with (hopefully) minimal goals"
|
|
HOMEPAGE="https://tiotags.gitlab.io/hinsightd"
|
|
LICENSE="BSD"
|
|
SLOT="0"
|
|
|
|
if [[ ${PV} == *9999* ]]; then
|
|
inherit git-r3
|
|
EGIT_REPO_URI="https://gitlab.com/tiotags/hin9.git"
|
|
elif [[ ! -z "${mycommit}" ]]; then
|
|
SRC_URI="https://gitlab.com/tiotags/hin9/-/archive/${mycommit}/hin9-${mycommit}.tar.gz"
|
|
S="${WORKDIR}/hin9-${mycommit}"
|
|
else
|
|
SRC_URI="https://gitlab.com/tiotags/hin9/-/archive/v${PV}/hin9-v${PV}.tar.gz"
|
|
S="${WORKDIR}/hin9-v${PV}"
|
|
fi
|
|
|
|
if [[ ${PV} != *9999* ]]; then
|
|
KEYWORDS="~amd64"
|
|
fi
|
|
|
|
IUSE="+ssl cgi +fcgi +rproxy +ffcall"
|
|
REQUIRED_USE="${LUA_REQUIRED_USE}"
|
|
|
|
BDEPEND="
|
|
dev-util/meson
|
|
virtual/pkgconfig
|
|
"
|
|
|
|
RDEPEND="
|
|
${LUA_DEPS}
|
|
acct-user/hinsightd
|
|
acct-group/hinsightd
|
|
sys-libs/liburing
|
|
sys-libs/zlib
|
|
virtual/libcrypt
|
|
ssl? ( dev-libs/openssl )
|
|
ffcall? ( dev-libs/ffcall )
|
|
"
|
|
|
|
DEPEND="${RDEPEND}"
|
|
|
|
FILECAPS=(
|
|
cap_net_bind_service usr/sbin/${PN}
|
|
)
|
|
|
|
pkg_setup() {
|
|
linux-info_pkg_setup
|
|
lua-single_pkg_setup
|
|
}
|
|
|
|
src_configure() {
|
|
version=$(ver_cut 1-2 $(lua_get_version))
|
|
if [[ "${version}" == "2.1" ]]; then
|
|
version="jit"
|
|
fi
|
|
local emesonargs=(
|
|
$(meson_use ssl openssl)
|
|
$(meson_use cgi)
|
|
$(meson_use fcgi)
|
|
$(meson_use rproxy)
|
|
$(meson_use ffcall)
|
|
-Dforce-lua-version=${version}
|
|
)
|
|
meson_src_configure
|
|
}
|
|
|
|
src_install() {
|
|
meson_src_install
|
|
|
|
newinitd "${S}/external/packaging/${PN}.initd.sh" ${PN}
|
|
newconfd "${S}/external/packaging/${PN}.confd.sh" ${PN}
|
|
systemd_dounit "${FILESDIR}/${PN}.service" # not tested
|
|
|
|
# config
|
|
insinto /etc/${PN}
|
|
doins "${S}/workdir/main.lua"
|
|
doins "${S}/workdir/lib.lua"
|
|
doins -r "${S}/workdir/config/"
|
|
|
|
# logrotate
|
|
insinto /etc/logrotate.d
|
|
newins "${S}/external/packaging/${PN}.logrotate.sh" ${PN}
|
|
}
|
|
|
|
pkg_postinst() {
|
|
fcaps_pkg_postinst
|
|
|
|
if kernel_is lt 5 7; then
|
|
ewarn ""
|
|
ewarn "hinsightd requires io_uring and kernel ~5.6.0"
|
|
ewarn ""
|
|
fi
|
|
}
|