Files
haikuports/net-im/nheko/nheko-0.12.0.recipe
Schrijvers Luc f4ba20c61f nheko, revbump, fixes build with new libfmt (#12063)
patches from upstream, master branch already checked and is good without patching for this
2025-03-24 13:17:44 +00:00

129 lines
3.9 KiB
Bash

SUMMARY="An IM client for Matrix"
DESCRIPTION="The motivation behind the nheko is to provide a native desktop \
app for Matrix that feels more like a mainstream chat app (Element, Telegram \
etc.) and less like an IRC client. It was developed using the Qt6 framework."
HOMEPAGE="https://nheko.im/nheko-reborn/nheko"
COPYRIGHT="2017-2024 Nheko Authors"
LICENSE="GNU GPL v3"
REVISION="5"
SOURCE_URI="https://github.com/Nheko-Reborn/nheko/archive/v$portVersion.tar.gz"
CHECKSUM_SHA256="a3a7578bd9386a0b9a4188fa1296fdddb7df0f846c39728b80a998f9d06f36d1"
SOURCE_FILENAME="nheko-v$portVersion.tar.gz"
PATCHES="nheko-$portVersion.patchset"
ADDITIONAL_FILES="nheko.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
nheko$secondaryArchSuffix = $portVersion
app:Nheko$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libcmark$secondaryArchSuffix
lib:libcoeurl$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libdbus_1$secondaryArchSuffix
lib:libfmt$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgobject_2.0$secondaryArchSuffix
lib:libgstreamer_1.0$secondaryArchSuffix
lib:libgstsdp_1.0$secondaryArchSuffix
lib:libgstwebrtc_1.0$secondaryArchSuffix
lib:liblmdb$secondaryArchSuffix
# lib:libmatrix_client$secondaryArchSuffix
lib:libolm$secondaryArchSuffix
lib:libQt6Concurrent$secondaryArchSuffix
lib:libQt6Core$secondaryArchSuffix
lib:libQt6DBus$secondaryArchSuffix
lib:libQt6Gui$secondaryArchSuffix
lib:libQt6keychain$secondaryArchSuffix
lib:libQt6Multimedia$secondaryArchSuffix
lib:libQt6Network$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libQt6Qml$secondaryArchSuffix
lib:libQt6Quick$secondaryArchSuffix
lib:libQt6QuickControls2$secondaryArchSuffix
lib:libQt6QuickWidgets$secondaryArchSuffix
lib:libQt6Svg$secondaryArchSuffix
lib:libQt6Widgets$secondaryArchSuffix
lib:libre2$secondaryArchSuffix
lib:libspdlog$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
lmdbxx
devel:libcmark$secondaryArchSuffix
devel:libcoeurl$secondaryArchSuffix
devel:libcurl$secondaryArchSuffix
devel:libevent$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgstreamer_1.0$secondaryArchSuffix
devel:libgstsdp_1.0$secondaryArchSuffix
devel:libgstwebrtc_1.0$secondaryArchSuffix
devel:liblmdb$secondaryArchSuffix
# devel:libmatrix_client$secondaryArchSuffix >= 0.5.1
devel:libolm$secondaryArchSuffix
devel:liborc_0.4$secondaryArchSuffix
devel:libQt6Core$secondaryArchSuffix
devel:libqt6uitools$secondaryArchSuffix
devel:libQt6keychain$secondaryArchSuffix
devel:libQt6Multimedia$secondaryArchSuffix
devel:libqt6Qml$secondaryArchSuffix
devel:libqt6Svg$secondaryArchSuffix
devel:libre2$secondaryArchSuffix
devel:libspdlog$secondaryArchSuffix
devel:libssl$secondaryArchSuffix >= 3
devel:libz$secondaryArchSuffix
devel:nlohmann_json
"
BUILD_PREREQUIRES="
cmd:a2x
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:git
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
cmake -S. -Bbuild $cmakeDirArgs \
-DCMAKE_INSTALL_BINDIR=$appsDir \
-DCMAKE_BUILD_TYPE=Release \
-DSCREENSHARE_X11=OFF \
-DUSE_BUNDLED_MTXCLIENT=ON \
-DBUILD_SHARED_LIBS=OFF \
-DUSE_BUNDLED_KDSINGLEAPPLICATION=ON \
-DKDSingleApplication_STATIC=ON \
-Wno-dev
make -C build $jobArgs
}
INSTALL()
{
make -C build install
mv $appsDir/nheko $appsDir/Nheko
rm -rf $dataDir $developDir $libDir
local APP_SIGNATURE="application/x-vnd.nheko"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
sed \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$SUMMARY|" \
$portDir/additional-files/nheko.rdef.in > nheko.rdef
addResourcesToBinaries nheko.rdef $appsDir/Nheko
addAppDeskbarSymlink $appsDir/Nheko
}