diff options
author | tiotags <tiotags1@gmail.com> | 2021-05-25 18:29:33 +0300 |
---|---|---|
committer | tiotags <tiotags1@gmail.com> | 2021-05-25 18:30:22 +0300 |
commit | a9d6a6f50ee567c3f343da44e6ea5a7e97ac1063 (patch) | |
tree | c18b299ff55f0f6fb42afd1561e11bcc27c0ce79 /www-servers | |
parent | app-text/epubgrep: Version bump 0.2.0. (diff) | |
download | guru-a9d6a6f50ee567c3f343da44e6ea5a7e97ac1063.tar.gz guru-a9d6a6f50ee567c3f343da44e6ea5a7e97ac1063.tar.bz2 guru-a9d6a6f50ee567c3f343da44e6ea5a7e97ac1063.zip |
www-servers/hinsightd: new version 0.9.4
Package-Manager: Portage-3.0.19, Repoman-3.0.3
Signed-off-by: Alexandru Campeanu <tiotags1@gmail.com>
Diffstat (limited to 'www-servers')
-rw-r--r-- | www-servers/hinsightd/Manifest | 1 | ||||
-rw-r--r-- | www-servers/hinsightd/files/hinsightd-redefine-directories-v2.patch | 21 | ||||
-rw-r--r-- | www-servers/hinsightd/files/init.d.sh | 9 | ||||
-rw-r--r-- | www-servers/hinsightd/hinsightd-0.9.4.ebuild | 87 | ||||
-rw-r--r-- | www-servers/hinsightd/hinsightd-9999.ebuild | 28 | ||||
-rw-r--r-- | www-servers/hinsightd/metadata.xml | 12 |
6 files changed, 137 insertions, 21 deletions
diff --git a/www-servers/hinsightd/Manifest b/www-servers/hinsightd/Manifest index a3034ae29..56ef7b385 100644 --- a/www-servers/hinsightd/Manifest +++ b/www-servers/hinsightd/Manifest @@ -1 +1,2 @@ DIST hin9-v0.9.3.tar.gz 65343 BLAKE2B 4b475f8088aa113ae7dbd2cfe091ee10efb39d60b7277cb821eb010e752b39adf5e2a3c53aedc73c612ed4ba3d96178c09f255b9a07caf64b9cad34af2da5841 SHA512 768f0e55c2992b0ce50187a62e4c75ae2c2e2c31067d77898d221ad89afba20a3121853f01267bf6f1e43942ddca273bfed6c63849ce922c9c9d2c971a9061e0 +DIST hin9-v0.9.4.tar.gz 77019 BLAKE2B 7339b407ba60c740f51f47794bd5fa4b73c662c718841c8de10be53bc6bec53f5ba511e2f69859ef9312aa85a318f0feeab5088b839dcae1dd734951f52f87a4 SHA512 817ac692778b9b7d9b2b7dd82a0d92fa0303d875601d6b52ddd75bb470cab1c9ac39170a0a1f5737ec4d28849837a8b61bf34bc96481044fe9864932bcfdd6cf diff --git a/www-servers/hinsightd/files/hinsightd-redefine-directories-v2.patch b/www-servers/hinsightd/files/hinsightd-redefine-directories-v2.patch new file mode 100644 index 000000000..8406efc86 --- /dev/null +++ b/www-servers/hinsightd/files/hinsightd-redefine-directories-v2.patch @@ -0,0 +1,21 @@ +diff --git a/src/hin/conf.h b/src/hin/conf.h +index 4a6f071..f4f6f36 100644 +--- a/src/hin/conf.h ++++ b/src/hin/conf.h +@@ -2,11 +2,11 @@ + #ifndef HIN_CONF_H + #define HIN_CONF_H + +-#define HIN_CONF_PATH "workdir/main.lua" +-#define HIN_LOGDIR_PATH "build/" +-#define HIN_WORKDIR_PATH "./" +-#define HIN_TEMP_PATH "/tmp/" +-#define HIN_DEBUG_MASK 0xffffffff ++#define HIN_CONF_PATH "/etc/hinsightd/main.lua" ++#define HIN_LOGDIR_PATH "/var/log/hinsightd/" ++#define HIN_WORKDIR_PATH "/etc/hinsightd/" ++#define HIN_TEMP_PATH "/var/tmp/hinsightd/" ++#define HIN_DEBUG_MASK 0x27f0f + + #define HIN_URING_QUEUE_DEPTH 256 + #define HIN_URING_DONT_FORK 0 diff --git a/www-servers/hinsightd/files/init.d.sh b/www-servers/hinsightd/files/init.d.sh index bc05ab5c9..15cd2ced5 100644 --- a/www-servers/hinsightd/files/init.d.sh +++ b/www-servers/hinsightd/files/init.d.sh @@ -6,7 +6,8 @@ LOG_DIR=/var/log/$NAME TMP_DIR=/var/tmp/$NAME CWD_DIR=/var/www/localhost PID_FILE=$RUN_DIR/$NAME.pid -CFG_FILE=/etc/hinsightd/$NAME.lua +CFG_FILE=/etc/hinsightd/main.lua +LOG_FILE=$LOG_DIR/hindsight.log RUN_FILE=/usr/bin/hinsightd RUN_USER="hinsightd" @@ -14,7 +15,7 @@ RUN_USER="hinsightd" extra_commands="checkconfig reload" command=$RUN_FILE -command_args="--config $CFG_FILE --logdir $LOG_DIR/ --cwd $CWD_DIR/ --pidfile $PID_FILE --tmpdir $TMP_DIR" +command_args="--config $CFG_FILE --logdir $LOG_DIR --cwd $CWD_DIR --pidfile $PID_FILE --tmpdir $TMP_DIR --log $LOG_FILE" pidfile="$PID_FILE" command_args_background="--daemonize" command_user="$RUN_USER:$RUN_USER" @@ -24,11 +25,11 @@ depend() { } checkconfig() { - $command $command_args --pretend > /dev/null + start-stop-daemon --quiet --user $RUN_USER --start --exec $command -- --check $command_args } start_pre() { - checkpath --directory --owner $command_user --mode 0770 $LOG_DIR $TMP_DIR $RUN_DIR + checkpath --directory --owner $command_user --mode 06770 $LOG_DIR $TMP_DIR $RUN_DIR checkconfig || return 1 } diff --git a/www-servers/hinsightd/hinsightd-0.9.4.ebuild b/www-servers/hinsightd/hinsightd-0.9.4.ebuild new file mode 100644 index 000000000..f8d82a655 --- /dev/null +++ b/www-servers/hinsightd/hinsightd-0.9.4.ebuild @@ -0,0 +1,87 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..4} ) + +inherit fcaps lua-single systemd cmake linux-info + +DESCRIPTION="hinsightd a http/1.1 webserver with (hopefully) minimal goals" +HOMEPAGE="https://gitlab.com/tiotags/hin9" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.com/tiotags/hin9.git" +else + SRC_URI="https://gitlab.com/tiotags/hin9/-/archive/v${PV}/hin9-v${PV}.tar.gz" + S="${WORKDIR}/hin9-v${PV}" + KEYWORDS="~amd64" +fi + +LICENSE="BSD" +SLOT="0" + +IUSE="+openssl" +REQUIRED_USE="${LUA_REQUIRED_USE}" + +BDEPEND=" + dev-util/cmake + virtual/pkgconfig +" + +RDEPEND=" + ${LUA_DEPS} + acct-user/hinsightd + acct-group/hinsightd + sys-libs/liburing + sys-libs/zlib + openssl? ( dev-libs/openssl ) +" + +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/hinsightd-redefine-directories-v2.patch" +) + +src_configure() { + local mycmakeargs=( + -DUSE_OPENSSL=$(usex openssl) + ) + cmake_src_configure +} + +src_install() { + newbin "${BUILD_DIR}/hin9" $PN + newinitd "${FILESDIR}/init.d.sh" $PN + systemd_dounit "${FILESDIR}/$PN.service" # not tested + + # config + insinto /etc/$PN + doins "${S}/workdir/main.lua" + doins "${S}/workdir/lib.lua" + doins "${S}/workdir/default_config.lua" + + # logrotate + insinto /etc/logrotate.d + newins "${FILESDIR}"/logrotate.d.sh $PN + + keepdir /var/www/localhost/htdocs +} + +pkg_postinst() { + fcaps CAP_NET_BIND_SERVICE /usr/bin/$PN + + if kernel_is lt 5 7; then + ewarn "" + ewarn "hinsightd requires io_uring and kernel ~5.6.0" + ewarn "" + fi + + ewarn "" + ewarn "hinsightd requires a higher than default RLIMIT_MEMLOCK for" + ewarn "things like graceful restarting" + ewarn "memory limit can be increased in /etc/security/limits.conf" + ewarn "" +} diff --git a/www-servers/hinsightd/hinsightd-9999.ebuild b/www-servers/hinsightd/hinsightd-9999.ebuild index a7e45d693..f8d82a655 100644 --- a/www-servers/hinsightd/hinsightd-9999.ebuild +++ b/www-servers/hinsightd/hinsightd-9999.ebuild @@ -42,8 +42,7 @@ RDEPEND=" DEPEND="${RDEPEND}" PATCHES=( - "${FILESDIR}/hinsightd-redefine-directories.patch" - "${FILESDIR}/hinsightd-default-config.patch" + "${FILESDIR}/hinsightd-redefine-directories-v2.patch" ) src_configure() { @@ -54,28 +53,35 @@ src_configure() { } src_install() { - newbin "${BUILD_DIR}/hin9" hinsightd - newinitd "${FILESDIR}/init.d.sh" hinsightd - systemd_dounit "${FILESDIR}/hinsightd.service" # not tested + newbin "${BUILD_DIR}/hin9" $PN + newinitd "${FILESDIR}/init.d.sh" $PN + systemd_dounit "${FILESDIR}/$PN.service" # not tested - insinto /etc/hinsightd - newins "${S}/workdir/main.lua" hinsightd.lua + # config + insinto /etc/$PN + doins "${S}/workdir/main.lua" + doins "${S}/workdir/lib.lua" + doins "${S}/workdir/default_config.lua" # logrotate insinto /etc/logrotate.d - newins "${FILESDIR}"/logrotate.d.sh hinsightd + newins "${FILESDIR}"/logrotate.d.sh $PN keepdir /var/www/localhost/htdocs - keepdir /var/log/hinsightd - keepdir /var/tmp/hinsightd } pkg_postinst() { - fcaps CAP_NET_BIND_SERVICE /usr/bin/hinsightd + fcaps CAP_NET_BIND_SERVICE /usr/bin/$PN if kernel_is lt 5 7; then ewarn "" ewarn "hinsightd requires io_uring and kernel ~5.6.0" ewarn "" fi + + ewarn "" + ewarn "hinsightd requires a higher than default RLIMIT_MEMLOCK for" + ewarn "things like graceful restarting" + ewarn "memory limit can be increased in /etc/security/limits.conf" + ewarn "" } diff --git a/www-servers/hinsightd/metadata.xml b/www-servers/hinsightd/metadata.xml index f06968fc0..826bd5d5f 100644 --- a/www-servers/hinsightd/metadata.xml +++ b/www-servers/hinsightd/metadata.xml @@ -1,7 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <!-- maintainer-needed --> + <maintainer type="person"> + <email>tiotags1@gmail.com</email> + <name>Alexandru Campeanu</name> + </maintainer> <upstream> <changelog>https://gitlab.com/tiotags/hin9/-/blob/master/docs/changes.md</changelog> <bugs-to>https://gitlab.com/tiotags/hin9/-/issues</bugs-to> @@ -10,11 +13,8 @@ hinsightd is a http/1.1 webserver with a focus on simple code and reliable behaviour. Notable features: reverse proxying, output caching, ssl, pipelining, - cgi, output compression with deflate, graceful restart, 304 status, - etag, range requests and a very customizable config file using lua. - Virtual hosts can be implemented in lua. - Logging is entirely controled by lua. - Full debug information can be toggled per request and outputted to console or a log file. + cgi, output compression with deflate, graceful restart and a very + customizable config file using lua. </longdescription> <use> <flag name="openssl">Enable tls encryption with openssl</flag> |