aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRahil Bhimjiani <me@rahil.rocks>2024-04-08 17:07:06 +0530
committerRahil Bhimjiani <me@rahil.rocks>2024-04-08 17:23:43 +0530
commit2f1ee8ef523605b182a8d49954564fae15966a1e (patch)
tree294a19ec990beec390e427c6d9505e336c9c141e /net-irc
parentwww-apps/vaultwarden-web: update to 2024.3.1 (diff)
downloadguru-2f1ee8ef523605b182a8d49954564fae15966a1e.tar.gz
guru-2f1ee8ef523605b182a8d49954564fae15966a1e.tar.bz2
guru-2f1ee8ef523605b182a8d49954564fae15966a1e.zip
net-irc/thelounge: update to 4.4.3
Signed-off-by: Rahil Bhimjiani <me@rahil.rocks>
Diffstat (limited to 'net-irc')
-rw-r--r--net-irc/thelounge/Manifest1
-rw-r--r--net-irc/thelounge/thelounge-4.4.3.ebuild113
2 files changed, 114 insertions, 0 deletions
diff --git a/net-irc/thelounge/Manifest b/net-irc/thelounge/Manifest
index bd5029c27..7c713eec6 100644
--- a/net-irc/thelounge/Manifest
+++ b/net-irc/thelounge/Manifest
@@ -4,3 +4,4 @@ DIST thelounge-4.4.1.tar.gz 577766 BLAKE2B f5ce4b381445e7d8d33e83431e4222b3fdc7a
DIST thelounge-4.4.2_rc1-deps.tar.xz 82563560 BLAKE2B 4511199d37825a2627f1865386da988047d33471b3b12ef8e84b3b3aca14d4bf50180a54436ba13487ddd21583abe2db2fdb830cde38c4872479b485117f5763 SHA512 3358b07fd9a27f8e4f16cdcff00c13b7a08850db4629f28320e485a9ad35a081174245715c3089fdf95307317cf2e198c959611a291070cfc1bdb0f0e4b567ca
DIST thelounge-4.4.2_rc1-sqlite.tar.xz 57426856 BLAKE2B ebcb9f1b6bc256125fe1b93d764a3cd6032615ccf5b45c6b1ac9549c6b3cab1c06155a9bfa00b13e44f86dfa31572be103277ff0023a6381ddff47c684e89b90 SHA512 dfab9ff0537b633f5d1361cefa2ae6047988d74c9e3599365adc6139e4b434e0b9abc1b8e47d0a2c00e57b37fe8bb7feb99aca9312a311cd4e0444b10decd919
DIST thelounge-4.4.2_rc1.tar.gz 588927 BLAKE2B 24e1b47e124ac1654cfeb967ceffc0d72e54691b59a0c71bfd00fe9a4ef68b8e0279561cb52f56bd281876af1d04a995481602f8a0e647bf30af3fa9a7ce5ef7 SHA512 24c8304566aca12fa0264e175e8340687f8488afbb1cb49430323c7d5c6a5fdc6e0ad14f1bd0e327e4284d3b7477cd61a18677a63836a2c49a1f4c7f785a8e33
+DIST thelounge-4.4.3.tar.gz 593273 BLAKE2B 665a813090cf61084b5edede88669923dc36d387b4641fb96b9f921523b803f89c57e70f31f5e55168ce3855733f7fbb45d0b3b8255f023daf2d9cba65d02142 SHA512 d1a873b15b5ac003c59257c591030ebeb8810609ea646477cc319ddb82fa2842b0b71f3edfe60eb5b54749ed90d55074d5b82ab6312b55cccee8281057b425f2
diff --git a/net-irc/thelounge/thelounge-4.4.3.ebuild b/net-irc/thelounge/thelounge-4.4.3.ebuild
new file mode 100644
index 000000000..cee63295e
--- /dev/null
+++ b/net-irc/thelounge/thelounge-4.4.3.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit python-any-r1 readme.gentoo-r1 systemd tmpfiles
+
+DESCRIPTION="‎Modern, responsive, cross-platform, self-hosted web IRC client"
+HOMEPAGE="https://thelounge.chat/"
+
+SRC_URI="
+ https://github.com/thelounge/thelounge/archive/refs/tags/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz
+ https://github.com/rahilarious/gentoo-distfiles/releases/download/${PN}-4.4.2_rc1/deps.tar.xz -> ${PN}-4.4.2_rc1-deps.tar.xz
+ sqlite? ( https://github.com/rahilarious/gentoo-distfiles/releases/download/${PN}-4.4.2_rc1/sqlite.tar.xz -> ${PN}-4.4.2_rc1-sqlite.tar.xz )
+"
+
+S="${WORKDIR}/${PN}-${PV/_rc/-rc.}"
+LICENSE="BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+sqlite"
+
+RDEPEND="
+ acct-user/${PN}
+ acct-group/${PN}
+ >=net-libs/nodejs-18
+ sqlite? ( dev-db/sqlite:3= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sqlite? ( ${PYTHON_DEPS} )
+ >=net-libs/nodejs-18[npm]
+ sys-apps/yarn
+"
+
+DOC_CONTENTS="\n
+##### Defaults #####\n
+Data directory: /var/lib/${PN}\n
+Listens on: 0.0.0.0:9000\n
+Log file (openrc): /var/log/${PN}.log\n
+Config file: /var/lib/${PN}/config.js\n
+\n
+##### Initialization #####\n
+Run \`THELOUNGE_HOME=/var/lib/${PN} ${PN} add <user>\`
+"
+
+mooyarn() {
+ use !sqlite && local YARN_OPTS="--ignore-optional"
+ yarn --verbose --non-interactive --frozen-lockfile --cache-folder "${WORKDIR}"/yarn-cache --offline \
+ --ignore-scripts ${YARN_OPTS} "${@}" || die
+}
+
+pkg_setup() {
+ use sqlite && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ use !sqlite && { sed -i -e 's|\["sqlite", |\[|g;' defaults/config.js || die ; }
+
+}
+src_compile() {
+ # thelounge build
+ mooyarn install
+ NODE_ENV=production mooyarn build
+ local BUILT_TAR=$(realpath $(npm pack || die))
+ # thelounge install
+ mkdir -v moobuild && cp -v {package.json,yarn.lock} moobuild/ || die
+ pushd moobuild || die
+ NODE_ENV=production mooyarn add file:${BUILT_TAR:?}
+
+ if use sqlite; then
+ # sqlite3 build
+ pushd node_modules/sqlite3 || die
+ export \
+ npm_config_cache="${WORKDIR}"/npm-cache \
+ npm_config_nodedir="${EPREFIX}"/usr \
+ NODE_GYP_FORCE_PYTHON="${PYTHON}" \
+ || die
+ npm --verbose --offline install --build-from-source --sqlite="${EPREFIX}"/usr || die
+ # sqlite3 cleanup
+ rm -rf node_modules || die
+ find build* -type f -not -path build/Release/node_sqlite3.node -delete || die
+ popd || die
+ fi
+ popd || die
+
+}
+
+src_install() {
+ insinto /usr/$(get_libdir)/node_modules/"${PN}"
+ doins -r moobuild/node_modules
+
+ fperms 755 /usr/$(get_libdir)/node_modules/"${PN}"/node_modules/"${PN}"/index.js
+ dosym -r /usr/$(get_libdir)/node_modules/"${PN}"/node_modules/"${PN}"/index.js /usr/bin/"${PN}"
+
+ systemd_newunit "${FILESDIR}"/"${PN}"-4.4.1.service "${PN}".service
+ systemd_newuserunit "${FILESDIR}"/"${PN}"-4.4.1-user.service "${PN}".service
+ newinitd "${FILESDIR}"/"${PN}"-4.4.1.initd "${PN}"
+ newconfd "${FILESDIR}"/"${PN}"-4.4.1.confd "${PN}"
+ newtmpfiles "${FILESDIR}"/"${PN}"-4.4.1-tmpfiles.conf "${PN}".conf
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/"${PN}"-4.4.1.logrotate "${PN}"
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}".conf
+ readme.gentoo_print_elog
+}