Files
guru/net-im/chatterino/chatterino-2.5.3.ebuild
2025-08-07 23:43:04 +02:00

126 lines
3.9 KiB
Bash

# Copyright 2024-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake optfeature xdg
CERTIFY_COMMIT="a448a3915ddac716ce76e4b8cbf0e7f4153ed1e2"
EXPECTED_COMMIT="54ca18bcea8e39c41650d82268077d559c695aa5"
LIBCOMMUNI_COMMIT="2979eb96262756047a8dca47f2e509168138c0d0"
LUA_COMMIT="1ab3208a1fceb12fca8f24ba57d6e13c5bff15e3"
MAGIC_COMMIT="e55b9b54d5cf61f8e117cafb17846d7d742dd3b4"
MINIAUDIO_COMMIT="350784a9467a79d0fa65802132668e5afbcf3777"
RAPIDJSON_COMMIT="d87b698d0fcc10a5f632ecbc80a9cb2a8fa094a5"
SERIALIZE_COMMIT="17946d65a41a72b447da37df6e314cded9650c32"
SETTINGS_COMMIT="c141a40d2d493646cd8f0b1e06251a828dfdfdd2"
SIGNALS_COMMIT="d06770649a7e83db780865d09c313a876bf0f4eb"
SOL2_COMMIT="2b0d2fe8ba0074e16b499940c4f3126b9c7d3471"
WEBSOCKETPP_COMMIT="f1736a8e72b910810ff6869fe20f647a62f3bc35"
DESCRIPTION="Chat client for https://twitch.tv"
HOMEPAGE="https://chatterino.com/"
SRC_URI="
https://github.com/Chatterino/chatterino2/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/Chatterino/certify/archive/${CERTIFY_COMMIT}.tar.gz
-> ${PN}-certify-${CERTIFY_COMMIT}.tar.gz
https://github.com/martinmoene/expected-lite/archive/${EXPECTED_COMMIT}.tar.gz
-> ${PN}-expected-${EXPECTED_COMMIT}.tar.gz
https://github.com/Chatterino/libcommuni/archive/${LIBCOMMUNI_COMMIT}.tar.gz
-> ${PN}-libcommuni-${LIBCOMMUNI_COMMIT}.tar.gz
https://github.com/lua/lua/archive/${LUA_COMMIT}.tar.gz
-> ${PN}-lua-${LUA_COMMIT}.tar.gz
https://github.com/Neargye/magic_enum/archive/${MAGIC_COMMIT}.tar.gz
-> ${PN}-magic-${MAGIC_COMMIT}.tar.gz
https://github.com/mackron/miniaudio/archive/${MINIAUDIO_COMMIT}.tar.gz
-> ${PN}-miniaudio-${MINIAUDIO_COMMIT}.tar.gz
https://github.com/Tencent/rapidjson/archive/${RAPIDJSON_COMMIT}.tar.gz
-> ${PN}-rapidjson-${RAPIDJSON_COMMIT}.tar.gz
https://github.com/pajlada/serialize/archive/${SERIALIZE_COMMIT}.tar.gz
-> ${PN}-serialize-${SERIALIZE_COMMIT}.tar.gz
https://github.com/pajlada/settings/archive/${SETTINGS_COMMIT}.tar.gz
-> ${PN}-settings-${SETTINGS_COMMIT}.tar.gz
https://github.com/pajlada/signals/archive/${SIGNALS_COMMIT}.tar.gz
-> ${PN}-signals-${SIGNALS_COMMIT}.tar.gz
https://github.com/ThePhD/sol2/archive/${SOL2_COMMIT}.tar.gz
-> ${PN}-sol2-${SOL2_COMMIT}.tar.gz
https://github.com/Chatterino/websocketpp/archive/${WEBSOCKETPP_COMMIT}.tar.gz
-> ${PN}-websocketpp-${WEBSOCKETPP_COMMIT}.tar.gz
"
S="${WORKDIR}/chatterino2-${PV}"
LICENSE="MIT"
# bundled dependencies
LICENSE+=" Boost-1.0 BSD MIT Unlicense"
SLOT="0"
KEYWORDS="~amd64"
IUSE="libnotify +plugins qtkeychain"
RDEPEND="
dev-libs/openssl:=
dev-qt/qt5compat:6
dev-qt/qtbase:6[concurrent,gui,network,widgets]
dev-qt/qtsvg:6
dev-qt/qtimageformats:6
libnotify? (
dev-libs/glib:2
x11-libs/gdk-pixbuf:2
x11-libs/libnotify
)
qtkeychain? ( dev-libs/qtkeychain:= )
"
DEPEND="
${RDEPEND}
dev-libs/boost
"
BDEPEND="dev-qt/qttools:6[linguist]"
PATCHES=(
"${FILESDIR}"/${PN}-2.5.2-disable-ccache.patch
)
src_prepare() {
local lib
local -a libs=(
certify
expected-lite
libcommuni
magic_enum
miniaudio
rapidjson
serialize
settings
signals
sol2
websocketpp
)
for lib in "${libs[@]}"; do
rmdir lib/"${lib}" || die "can't remove stubbed libdirs"
ln -sr ../"${lib}"-* ./lib/"${lib}" || die "failed to create symlink for ${lib}"
done
rmdir lib/lua/src || die
ln -sr ../lua-* lib/lua/src || die
# bug 936966
sed 's/-Werror[^[:space:])"]*//' -i --follow-symlinks \
{src,lib/{magic_enum/test,rapidjson,serialize,settings,websocketpp}}/CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DUSE_SYSTEM_QTKEYCHAIN=ON
-DBUILD_WITH_QTKEYCHAIN=$(usex qtkeychain)
-DBUILD_WITH_QT6=ON
-DBUILD_WITH_LIBNOTIFY=$(usex libnotify)
-DCHATTERINO_PLUGINS=$(usex plugins)
-DCHATTERINO_UPDATER=OFF
)
cmake_src_configure
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "for opening streams in a local video player" net-misc/streamlink
}