commit:     2f1ee8ef523605b182a8d49954564fae15966a1e
Author:     Rahil Bhimjiani <me <AT> rahil <DOT> rocks>
AuthorDate: Mon Apr  8 11:37:06 2024 +0000
Commit:     Rahil Bhimjiani <rahil3108 <AT> gmail <DOT> com>
CommitDate: Mon Apr  8 11:53:43 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2f1ee8ef

net-irc/thelounge: update to 4.4.3

Signed-off-by: Rahil Bhimjiani <me <AT> rahil.rocks>

 net-irc/thelounge/Manifest               |   1 +
 net-irc/thelounge/thelounge-4.4.3.ebuild | 113 +++++++++++++++++++++++++++++++
 2 files changed, 114 insertions(+)

diff --git a/net-irc/thelounge/Manifest b/net-irc/thelounge/Manifest
index bd5029c276..7c713eec60 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 0000000000..cee63295e7
--- /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
+}

Reply via email to