net-im/nheko: sort out dependencies

Other changes:
* Add MIT license for bundled SingleApplication
* Sort out optfeatures

Cosmetic changes:
* Add an actual homapage
* Download from GitLab for better compression
* Match description to upstream
* Use one-liner for '-DSCREENSHARE_X11' option

Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
This commit is contained in:
Anna (cybertailor) Vyalkova
2023-11-27 23:46:55 +05:00
parent e87f462d5b
commit 353bc49002
3 changed files with 112 additions and 2 deletions

View File

@@ -1 +1,2 @@
DIST nheko-0.11.3.tar.gz 1780179 BLAKE2B 095314ea420bd78cff71fe9e8bd48c1319248fa5c31bfc3741aa72cfa7585660f74f7eb3b9848b53ccfbc979283db8ca2e52e8e4f2749280ee1c867a35baf075 SHA512 bd5b94def3c56bb2c91c40c3ef967ee3b14cb71a7e5b01028743a849932c918620c2b1a1b822705e49dacc80dae6c48712f63bf9a68698858b0faaf1a816c9cd
DIST nheko-v0.11.3.tar.bz2 1222761 BLAKE2B 218246824512b13fc3448142e5e127b207952e3f66c2b308ca281d7f9e6b0198760d9408b467bf9442a0df306d2b23ffc5034cba5c675299aac85ac4ebe23280 SHA512 bd051144a16cd628d6259a7ce4acf10fd7b7ef3d8b0036cbf1f2a80c550062a04062a61c66e7a060f853d53c1eaa50fadb0223641e98283001aabf037c0e4de1

View File

@@ -9,7 +9,7 @@
<remote-id type="github">Nheko-Reborn/nheko</remote-id>
</upstream>
<use>
<flag name="video">Enables video calls</flag>
<flag name="voip">Enables audio calls</flag>
<flag name="video">Enable video calls</flag>
<flag name="voip">Enable audio calls</flag>
</use>
</pkgmetadata>

View File

@@ -0,0 +1,109 @@
# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake optfeature xdg
MY_P="${PN}-v${PV}"
DESCRIPTION="Desktop client for the Matrix protocol"
HOMEPAGE="https://nheko-reborn.github.io/"
SRC_URI="https://nheko.im/nheko-reborn/${PN}/-/archive/v${PV}/${MY_P}.tar.bz2"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-3 MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="X tiff video voip webp"
REQUIRED_USE="video? ( voip )"
MY_GST_V="1.18"
COMMON_DEPEND="
app-text/cmark:=
>=dev-cpp/blurhash-0.2.0:=
dev-cpp/cpp-httplib:=[ssl]
dev-db/lmdb:=
dev-libs/libfmt:=
>=dev-libs/mtxclient-0.9.0:=
dev-libs/olm
>=dev-libs/qtkeychain-0.12.0:=[qt5]
dev-libs/spdlog:=
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtdeclarative:5[widgets]
dev-qt/qtgui:5[png]
dev-qt/qtmultimedia:5[qml]
dev-qt/qtnetwork:5
dev-qt/qtsvg:5
dev-qt/qtwidgets:5
voip? (
dev-libs/glib:2
>=media-libs/gst-plugins-bad-${MY_GST_V}:1.0
>=media-libs/gst-plugins-base-${MY_GST_V}:1.0
>=media-libs/gstreamer-${MY_GST_V}:1.0
video? (
X? (
x11-libs/libxcb:=
x11-libs/xcb-util-wm
)
)
)
"
# 'dev-qt/qtconcurrent' is linked but never used
DEPEND="${COMMON_DEPEND}
dev-cpp/nlohmann_json
>=dev-db/lmdb++-1.0.0
dev-qt/qtconcurrent:5
"
RDEPEND="${COMMON_DEPEND}
dev-qt/qtgraphicaleffects:5
dev-qt/qtquickcontrols2:5
tiff? ( dev-qt/qtimageformats:5 )
voip? (
>=media-plugins/gst-plugins-dtls-${MY_GST_V}:1.0
media-plugins/gst-plugins-libnice:1.0
>=media-plugins/gst-plugins-meta-${MY_GST_V}:1.0[opus]
>=media-plugins/gst-plugins-srtp-${MY_GST_V}:1.0
>=media-plugins/gst-plugins-webrtc-${MY_GST_V}:1.0
video? (
>=media-libs/gst-plugins-base-${MY_GST_V}:1.0[opengl]
>=media-plugins/gst-plugins-meta-${MY_GST_V}:1.0[vpx]
>=media-plugins/gst-plugins-qt5-${MY_GST_V}:1.0
X? (
>=media-plugins/gst-plugins-ximagesrc-${MY_GST_V}:1.0
)
)
)
webp? ( dev-qt/qtimageformats:5 )
"
BDEPEND="
dev-qt/linguist-tools:5
|| (
app-text/asciidoc
dev-ruby/asciidoctor
)
"
PATCHES=(
"${FILESDIR}"/${P}-fix-explicit-optional-construction.patch
"${FILESDIR}"/${P}-fix-build-against-fmt10.patch
)
src_configure() {
local -a mycmakeargs=(
-DSCREENSHARE_X11=$(if use video && use X; then echo ON; else echo OFF; fi)
-DVOIP=$(usex voip)
-DUSE_BUNDLED_CPPHTTPLIB=OFF
-DUSE_BUNDLED_BLURHASH=OFF
)
cmake_src_configure
}
pkg_postinst() {
optfeature "additional image formats support" kde-frameworks/kimageformats:5
optfeature "audio & video file playback support" media-plugins/gst-plugins-meta[ffmpeg]
optfeature "identicons support" dev-cpp/qt-jdenticon
xdg_pkg_postinst
}