From 25e5a6599437664a3eff8d9f8a966adc896e09e8 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 11 Dec 2023 17:14:47 +0000 Subject: gentoo auto-resync : 11:12:2023 - 17:14:47 --- net-im/Manifest.gz | Bin 9401 -> 9407 bytes net-im/ejabberd/Manifest | 4 +- net-im/ejabberd/ejabberd-23.10-r1.ebuild | 223 +++++++++++++++++++ net-im/ejabberd/ejabberd-23.10.ebuild | 216 ------------------- net-im/poezio/Manifest | 6 +- net-im/poezio/metadata.xml | 1 + net-im/poezio/poezio-0.14.ebuild | 2 +- net-im/poezio/poezio-9999.ebuild | 2 +- net-im/telegram-desktop/Manifest | 10 +- .../tdesktop-4.10.3-fix-clang-libstdcxx.patch | 13 -- .../files/tdesktop-4.4.1-fix-dupe-main-decl.patch | 26 --- .../telegram-desktop-4.10.3-r1.ebuild | 233 -------------------- .../telegram-desktop-4.11.7-r1.ebuild | 238 +++++++++++++++++++++ .../telegram-desktop-4.11.7.ebuild | 235 -------------------- .../telegram-desktop-4.12.2.ebuild | 227 ++++++++++++++++++++ .../telegram-desktop-4.8.1-r3.ebuild | 210 ------------------ 16 files changed, 700 insertions(+), 946 deletions(-) create mode 100644 net-im/ejabberd/ejabberd-23.10-r1.ebuild delete mode 100644 net-im/ejabberd/ejabberd-23.10.ebuild delete mode 100644 net-im/telegram-desktop/files/tdesktop-4.10.3-fix-clang-libstdcxx.patch delete mode 100644 net-im/telegram-desktop/files/tdesktop-4.4.1-fix-dupe-main-decl.patch delete mode 100644 net-im/telegram-desktop/telegram-desktop-4.10.3-r1.ebuild create mode 100644 net-im/telegram-desktop/telegram-desktop-4.11.7-r1.ebuild delete mode 100644 net-im/telegram-desktop/telegram-desktop-4.11.7.ebuild create mode 100644 net-im/telegram-desktop/telegram-desktop-4.12.2.ebuild delete mode 100644 net-im/telegram-desktop/telegram-desktop-4.8.1-r3.ebuild (limited to 'net-im') diff --git a/net-im/Manifest.gz b/net-im/Manifest.gz index 27aba8efbadb..3f36e5b0ba32 100644 Binary files a/net-im/Manifest.gz and b/net-im/Manifest.gz differ diff --git a/net-im/ejabberd/Manifest b/net-im/ejabberd/Manifest index 2b05c0dbb763..95417b0ebb4d 100644 --- a/net-im/ejabberd/Manifest +++ b/net-im/ejabberd/Manifest @@ -7,9 +7,11 @@ AUX epam-wrapper 336 BLAKE2B 914ba9c7469ba58fd29a4c70485c77ff2a93000e397aa8c58aa DIST ejabberd-22.10.tar.gz 2553163 BLAKE2B 670721da1800b489103df49c24bb961cb048e02faffa57921c9740f2effadb8fd5b70841afaf9fc56160e4bb00d6d6d73014cdd3e2aaa683c351fd0d42d53bf3 SHA512 3010b0767017d63c1b1a8b062f881d98be6308f2ae065c58302288096058ed8030e37c73eaf037ee1e61d1040f4e61071b2d62e146c61109ee782b9e6b708942 DIST ejabberd-23.01.tar.gz 2569272 BLAKE2B c8c06204ed6c4992d86b7fcc1a949883267364433fc5d6d05f2214f093301b3fc4cda7b5b078e3ebd1334a418173fd5decd902f582fe0492b2f2f19c39ac88e4 SHA512 3fe11123d24e430fa10d18aabb9cc9613bc25ee48d6c64a642ae1d0d458f220df638b94cde444241399e0d0777a4f64995ad7e37f963f1ee92bbb114ed431c4b DIST ejabberd-23.04.tar.gz 2581686 BLAKE2B 292da892f62d6940418980bfaec63f3aa570f0af4c78be80ff6996d13269f5303ff9ecd88c0fa4ba8daecf5183a7eb31a7048f3425d128b03cc7029a3198ff0d SHA512 2edb437baae54afd625222f2b251549af3ec469b535a10109679f1edd27fc840579351499f9bc79e8d0d17f752065787eb52607f886e5599386dbed52c8aecab +DIST ejabberd-23.10-fix-ejabberdctl.patch 1945 BLAKE2B 3e9e690802dd201aaba50b16435c98e64b52bfa2c77dd054c4db538f8bd9035386282e43b3c51fa444119901addeb2c3174d55d66a515847f80771e350e0a808 SHA512 0a6780915177fa4012a194d3fa755a812f0bed5d446df630c46834953aad54679450ff9fdaa1aa7fb415de5bb905a3dc2b28c65b7b32f0fd83cd99634bb5073d +DIST ejabberd-23.10-set-ejabberd-opts.patch 1508 BLAKE2B 1692fb54b3aeb9838f057d32ebebffbcca5761c820d95a377b257966094e973465740b224d17bebdae0a4f3d0b5ebe35c9c1b005217a3e9baae69fc2511c69aa SHA512 aa7f13be15ec4cb0a9c17e5c1519d5fd94ccee75b46e3a8ee1de39e23000c7faad530208c049dd4a290be18b8b9f1c866584a9abf3f288a8f2fd66c2d72e4fa5 DIST ejabberd-23.10.tar.gz 2615643 BLAKE2B 0c3adfac5d99a33f37b0bd9970489f7a9e32bc1a832efe510be3281cd4ac2df890aa7eeab5758149b3cb16a2e6a71937ee955a86113bba14540d5c685f900ef6 SHA512 d42af356b0b6ebbba757de4256e308766f046d6c2a7df355330fbc9a9fb329635a22c2f9e5fc4d0a9dbe2d7e5488efe85000c4d04a9a0ce12921d839899e0c45 EBUILD ejabberd-22.10.ebuild 6925 BLAKE2B acf99298e11c8bb573be35d3cfda71d2789b884027bc2366a432b6d3a9df78c82868fe075d8f99b0b62a11be332fa728910c7677a05e1cc5a28fbaa4820658dc SHA512 f93095f1d16a3a85d9c2b44c12f04656f3222614826bf5b6d8808cecfe9a1aad1904a0a56fe5874a7f96f549a74738587e13088ee6759b7678fa7fd2593a87d3 EBUILD ejabberd-23.01.ebuild 6925 BLAKE2B 6253509421453e88062317a7c6f28a9c7ad3c76d637392e3d5ee65920f9ffeea3e4f39c2da3c1ed25d5e5f7cd324ab473517dda89c64cf6bfbe7cc52604e27a6 SHA512 6227a9c5826f106b03878c6bdb6a91bf13ace70a21afb40c598d84a1db69f0f5a6d6dcd2f88067fee8694678e713efd703ed00c8fd1bf886383e7129a649d7de EBUILD ejabberd-23.04.ebuild 6776 BLAKE2B c7f404b51df06d7c28212f2fb2f22ed54c8289ae07fcf75bfb6ca4bb43b6493d589a4e291e3f836d7945ab045f66fd88babd29427366dd34a5bbdff39d8c05df SHA512 51a7a89f0b6c0f7560566ef474e362902a54b22471e10af59c90aaec5739178742e00bffedd090d0cc9d932f3d00f21eb3b1a93ff459c933c68c07151facf33d -EBUILD ejabberd-23.10.ebuild 6776 BLAKE2B fc2c718c252365065e6aae19a365d1eb67336db93543b5d0abb5a8f55fba62690c167a1824b686ba6e96eee97bbfe75d4ac4de20ebb8af20e43244a8bd52e32a SHA512 e479e088b72e832bfb60dca6ab22feb355c094bc3210e95b7e903d0d5cfcd4a3037a1a3df2838295d685628eb72c84fad2f71a03e533e347816836a176fa6cec +EBUILD ejabberd-23.10-r1.ebuild 7165 BLAKE2B 55cc3aa2820eebb73aa67e81c15965e6e0139d41787063e7121c3231d9be4d31dc6d33e947ffc81ace964620cc2fd1d18a55892f8fe7c0c0f150521225985c3c SHA512 d33787538c827b08f7e3e4a9b468dce3d72a86d749db242420d965246516316a916017706d6723baf70fcf89572c717ec0fdb775aaae939d2db17bf0e7c25c4e MISC metadata.xml 1484 BLAKE2B 74f0ec404b37dfe72d8751dd8bc8f0ba0b56f334939a5311af70df4616f19e536209b9be7361b35c8e5d316fbce623afdbf7e3ce53a139eb0d2e0d895275ae3c SHA512 793584e1e44c3a651b15eed84a91a801cd809392ccf7623f1a1b222e65641f8dca18515fb90e42e4a51178f4686d3c61778e14834be23feb23b269b4f07c91fb diff --git a/net-im/ejabberd/ejabberd-23.10-r1.ebuild b/net-im/ejabberd/ejabberd-23.10-r1.ebuild new file mode 100644 index 000000000000..72df4518bfd7 --- /dev/null +++ b/net-im/ejabberd/ejabberd-23.10-r1.ebuild @@ -0,0 +1,223 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools pam rebar systemd + +DESCRIPTION="Robust, scalable and extensible XMPP server" +HOMEPAGE="https://www.ejabberd.im/ https://github.com/processone/ejabberd/" +SRC_URI=" + https://github.com/processone/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz + https://github.com/processone/ejabberd/commit/841d5c029905d5feabe07ab5a4db3aacfeedefb6.patch -> + ${P}-fix-ejabberdctl.patch + https://github.com/processone/ejabberd/commit/4ea46c57653b3d9ea9c1386d1cc3dd07163d74d6.patch -> + ${P}-set-ejabberd-opts.patch +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ia64 ~sparc ~x86" +REQUIRED_USE="mssql? ( odbc )" +# TODO: Add 'tools' flag. +IUSE="captcha debug full-xml ldap mssql mysql odbc pam postgres redis + roster-gw selinux sip sqlite +stun zlib" + +RESTRICT="test" + +# TODO: Add dependencies for 'tools' flag enabled. +# TODO: tools? ( +# TODO: >=dev-erlang/luerl-0.3 +# TODO: ) +DEPEND=" + >=dev-lang/erlang-20[odbc?,ssl] + >=dev-erlang/cache_tab-1.0.30 + >=dev-erlang/eimp-1.0.22 + >=dev-erlang/fast_tls-1.1.16 + >=dev-erlang/fast_xml-1.1.49 + >=dev-erlang/fast_yaml-1.0.36 + >=dev-erlang/yconf-1.0.15 + >=dev-erlang/jiffy-1.0.5 + >=dev-erlang/jose-1.11.5 + >=dev-erlang/lager-3.9.1 + >=dev-erlang/p1_oauth2-0.6.11 + >=dev-erlang/p1_utils-1.0.25 + >=dev-erlang/stringprep-1.0.29 + >=dev-erlang/xmpp-1.7.0 + >=dev-erlang/pkix-1.0.9 + >=dev-erlang/mqtree-1.0.15 + >=dev-erlang/idna-6.0.0-r1 + >=dev-erlang/p1_acme-1.0.22 + >=dev-erlang/base64url-1.0.1 + ldap? ( =net-nds/openldap-2* ) + mysql? ( >=dev-erlang/p1_mysql-1.0.22 ) + odbc? ( dev-db/unixODBC ) + pam? ( >=dev-erlang/epam-1.0.14 ) + postgres? ( >=dev-erlang/p1_pgsql-1.1.23 ) + redis? ( >=dev-erlang/eredis-1.2.0 ) + sip? ( >=dev-erlang/esip-1.0.50 ) + sqlite? ( >=dev-erlang/sqlite3-1.1.14 ) + stun? ( >=dev-erlang/stun-1.2.10 ) + zlib? ( >=dev-erlang/ezlib-1.0.12 ) +" +RDEPEND=" + ${DEPEND} + >=acct-user/ejabberd-2[pam?] + captcha? ( media-gfx/imagemagick[truetype,png] ) + selinux? ( sec-policy/selinux-jabber ) +" + +DOCS=( CHANGELOG.md README.md ) +PATCHES=( + "${FILESDIR}/ejabberd-22.10-adjust-ejabberd.service.template-to-Gentoo.patch" + # Both patches for https://bugs.gentoo.org/919711 + "${DISTDIR}/${P}-fix-ejabberdctl.patch" + "${DISTDIR}/${P}-set-ejabberd-opts.patch" +) + +# Get path to ejabberd lib directory. +# +# This is the path ./configure script Base for this path is path set in +# ./configure script which is /usr/lib by default. If libdir is explicitely set +# to something else than this should be adjusted here as well. +get_ejabberd_path() { + echo "/usr/$(get_libdir)/${P}" +} + +src_prepare() { + default + + eautoreconf + + rebar_remove_deps + + # Set paths to ejabberd lib directory consistently to point always to directory + # suffixed with version. + sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${P}:}" \ + -i "${S}/Makefile.in" \ + || die 'failed to set ejabberd path in Makefile.in' + + # Get epam-wrapper from 'files' directory and correct path to lib directory in + # it. epam-wrapper is placed into work directory. It is assumed no epam-wrapper + # file exists there already. + local epam_wrapper_src="${FILESDIR}/epam-wrapper" + local epam_wrapper_dst="${S}/epam-wrapper" + [[ -e ${epam_wrapper_dst} ]] && die 'epam-wrapper already exists' + sed -r -e "s@^(ERL_LIBS=).*\$@\1${EPREFIX}$(get_erl_libs)@" \ + "${epam_wrapper_src}" >"${epam_wrapper_dst}" \ + || die 'failed to install epam-wrapper' + + rebar_fix_include_path fast_xml + rebar_fix_include_path p1_utils + rebar_fix_include_path xmpp + + # Fix bug #591862. ERL_LIBS should point directly to ejabberd directory + # rather than its parent which is default. That way ejabberd directory + # takes precedence is module lookup. + local ejabberd_erl_libs="$(get_ejabberd_path):$(get_erl_libs)" + sed -e "s|\(ERL_LIBS=\)'{{libdir}}'\.*|\1${ejabberd_erl_libs}|" \ + -i "${S}/ejabberdctl.template" \ + || die 'failed to set ERL_LIBS in ejabberdctl.template' +} + +src_configure() { + econf \ + --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \ + --localstatedir="${EPREFIX}/var" \ + --enable-user=${PN} \ + $(use_enable debug) \ + $(use_enable full-xml) \ + $(use_enable mssql) \ + $(use_enable mysql) \ + $(use_enable odbc) \ + $(use_enable pam) \ + $(use_enable postgres pgsql) \ + $(use_enable redis) \ + $(use_enable roster-gw roster-gateway-workaround) \ + $(use_enable sqlite) \ + $(use_enable sip) \ + $(use_enable stun) \ + $(use_enable zlib) + + # more options to support + # --enable-elixir requires https://github.com/elixir-lang/elixir +} + +src_compile() { + # Note that we also add ejabberdctl.example, which will be used by + # ejabberd's build system to create /usr/sbin/ejabberdctl, as + # target. Otherwise, ejabberdctl.example is due to be created by the + # 'install' target (as per upstream's Makefile.in). However when + # invoke the 'install' target (in src_install below), DESTDIR is + # set, which causes DESTDIR to scope into the ejabberdctl.example + # generation. + emake REBAR='rebar -v' src ejabberdctl.example ejabberd.service +} + +src_install() { + default + + if use pam; then + local epam_path="$(get_ejabberd_path)/priv/bin/epam" + + pamd_mimic_system xmpp auth account + into "$(get_ejabberd_path)/priv" + newbin epam-wrapper epam + fi + + newconfd "${FILESDIR}/${PN}.confd" "${PN}" + newinitd "${FILESDIR}/${PN}-22.05.initd" "${PN}" + systemd_dounit "${PN}.service" + + insinto /etc/logrotate.d + newins "${FILESDIR}/${PN}-22.05.logrotate" "${PN}" + + keepdir /var/{lib,log}/ejabberd +} + +pkg_postinst() { + local migrate_to_ejabberd_user=false + + if [[ ${REPLACING_VERSIONS} ]]; then + for v in ${REPLACING_VERSIONS}; do + if ver_test "${v}" -lt 21.04-r1; then + migrate_to_ejabberd_user=true + break + fi + done + fi + + # Sarting with >=21.04-r1, the ejabberd configuration is now in + # /etc/ejabberd and no longer in /etc/jabber. See if we need to + # migrate the configuration. Furthermore, ejabberd no longer runs + # under the, shared via net-im/jabber-base, 'jabber' use, but under + # its own user. This increase isolation and hence robustness and + # security. + if $migrate_to_ejabberd_user; then + ewarn "Newer versions of the ejabberd Gentoo package use /etc/ejabberd" + ewarn "(just as upstream) and *not* /etc/jabber." + ewarn "The files from /etc/jabber will now be copied to /etc/ejabberd." + ewarn "Also ejabberd's spool directory became /var/lib/ejabberd (was /var/spool/jabber)." + ewarn "Please check your configuration, and finish the migration by stopping ejabberd" + ewarn "followed by rsync'ing /var/spool/jabber to /var/lib/ejabberd." + + local -A dirs_to_migrate=( + [/etc/jabber]=/etc/ejabberd + [/var/spool/jabber]=/var/lib/ejabberd + ) + + for src_dir in "${!dirs_to_migrate[@]}"; do + local eroot_src_dir="${EROOT}${src_dir}" + local eroot_dst_dir="${EROOT}${dirs_to_migrate[${src_dir}]}" + + cp -r "${eroot_src_dir}"/. "${eroot_dst_dir}" || die "Could not copy ${eroot_src_dir} to ${eroot_dst_dir}" + + if [[ -f "${eroot_dst_dir}"/.keep_net-im_jabber-base-0 ]]; then + rm "${eroot_dst_dir}"/.keep_net-im_jabber-base-0 || die + fi + if ! use prefix; then + chown --recursive ejabberd:ejabberd "${eroot_dst_dir}" || die + fi + done + fi +} diff --git a/net-im/ejabberd/ejabberd-23.10.ebuild b/net-im/ejabberd/ejabberd-23.10.ebuild deleted file mode 100644 index 01b54660d1ad..000000000000 --- a/net-im/ejabberd/ejabberd-23.10.ebuild +++ /dev/null @@ -1,216 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools pam rebar systemd - -DESCRIPTION="Robust, scalable and extensible XMPP server" -HOMEPAGE="https://www.ejabberd.im/ https://github.com/processone/ejabberd/" -SRC_URI=" - https://github.com/processone/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz -" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~ia64 ~sparc ~x86" -REQUIRED_USE="mssql? ( odbc )" -# TODO: Add 'tools' flag. -IUSE="captcha debug full-xml ldap mssql mysql odbc pam postgres redis - roster-gw selinux sip sqlite +stun zlib" - -RESTRICT="test" - -# TODO: Add dependencies for 'tools' flag enabled. -# TODO: tools? ( -# TODO: >=dev-erlang/luerl-0.3 -# TODO: ) -DEPEND=" - >=dev-lang/erlang-20[odbc?,ssl] - >=dev-erlang/cache_tab-1.0.30 - >=dev-erlang/eimp-1.0.22 - >=dev-erlang/fast_tls-1.1.16 - >=dev-erlang/fast_xml-1.1.49 - >=dev-erlang/fast_yaml-1.0.36 - >=dev-erlang/yconf-1.0.15 - >=dev-erlang/jiffy-1.0.5 - >=dev-erlang/jose-1.11.5 - >=dev-erlang/lager-3.9.1 - >=dev-erlang/p1_oauth2-0.6.11 - >=dev-erlang/p1_utils-1.0.25 - >=dev-erlang/stringprep-1.0.29 - >=dev-erlang/xmpp-1.7.0 - >=dev-erlang/pkix-1.0.9 - >=dev-erlang/mqtree-1.0.15 - >=dev-erlang/idna-6.0.0-r1 - >=dev-erlang/p1_acme-1.0.22 - >=dev-erlang/base64url-1.0.1 - ldap? ( =net-nds/openldap-2* ) - mysql? ( >=dev-erlang/p1_mysql-1.0.22 ) - odbc? ( dev-db/unixODBC ) - pam? ( >=dev-erlang/epam-1.0.14 ) - postgres? ( >=dev-erlang/p1_pgsql-1.1.23 ) - redis? ( >=dev-erlang/eredis-1.2.0 ) - sip? ( >=dev-erlang/esip-1.0.50 ) - sqlite? ( >=dev-erlang/sqlite3-1.1.14 ) - stun? ( >=dev-erlang/stun-1.2.10 ) - zlib? ( >=dev-erlang/ezlib-1.0.12 ) -" -RDEPEND=" - ${DEPEND} - >=acct-user/ejabberd-2[pam?] - captcha? ( media-gfx/imagemagick[truetype,png] ) - selinux? ( sec-policy/selinux-jabber ) -" - -DOCS=( CHANGELOG.md README.md ) -PATCHES=( - "${FILESDIR}/ejabberd-22.10-adjust-ejabberd.service.template-to-Gentoo.patch" -) - -# Get path to ejabberd lib directory. -# -# This is the path ./configure script Base for this path is path set in -# ./configure script which is /usr/lib by default. If libdir is explicitely set -# to something else than this should be adjusted here as well. -get_ejabberd_path() { - echo "/usr/$(get_libdir)/${P}" -} - -src_prepare() { - default - - eautoreconf - - rebar_remove_deps - - # Set paths to ejabberd lib directory consistently to point always to directory - # suffixed with version. - sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${P}:}" \ - -i "${S}/Makefile.in" \ - || die 'failed to set ejabberd path in Makefile.in' - - # Get epam-wrapper from 'files' directory and correct path to lib directory in - # it. epam-wrapper is placed into work directory. It is assumed no epam-wrapper - # file exists there already. - local epam_wrapper_src="${FILESDIR}/epam-wrapper" - local epam_wrapper_dst="${S}/epam-wrapper" - [[ -e ${epam_wrapper_dst} ]] && die 'epam-wrapper already exists' - sed -r -e "s@^(ERL_LIBS=).*\$@\1${EPREFIX}$(get_erl_libs)@" \ - "${epam_wrapper_src}" >"${epam_wrapper_dst}" \ - || die 'failed to install epam-wrapper' - - rebar_fix_include_path fast_xml - rebar_fix_include_path p1_utils - rebar_fix_include_path xmpp - - # Fix bug #591862. ERL_LIBS should point directly to ejabberd directory - # rather than its parent which is default. That way ejabberd directory - # takes precedence is module lookup. - local ejabberd_erl_libs="$(get_ejabberd_path):$(get_erl_libs)" - sed -e "s|\(ERL_LIBS=\)'{{libdir}}'\.*|\1${ejabberd_erl_libs}|" \ - -i "${S}/ejabberdctl.template" \ - || die 'failed to set ERL_LIBS in ejabberdctl.template' -} - -src_configure() { - econf \ - --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \ - --localstatedir="${EPREFIX}/var" \ - --enable-user=${PN} \ - $(use_enable debug) \ - $(use_enable full-xml) \ - $(use_enable mssql) \ - $(use_enable mysql) \ - $(use_enable odbc) \ - $(use_enable pam) \ - $(use_enable postgres pgsql) \ - $(use_enable redis) \ - $(use_enable roster-gw roster-gateway-workaround) \ - $(use_enable sqlite) \ - $(use_enable sip) \ - $(use_enable stun) \ - $(use_enable zlib) - - # more options to support - # --enable-elixir requires https://github.com/elixir-lang/elixir -} - -src_compile() { - # Note that we also add ejabberdctl.example, which will be used by - # ejabberd's build system to create /usr/sbin/ejabberdctl, as - # target. Otherwise, ejabberdctl.example is due to be created by the - # 'install' target (as per upstream's Makefile.in). However when - # invoke the 'install' target (in src_install below), DESTDIR is - # set, which causes DESTDIR to scope into the ejabberdctl.example - # generation. - emake REBAR='rebar -v' src ejabberdctl.example ejabberd.service -} - -src_install() { - default - - if use pam; then - local epam_path="$(get_ejabberd_path)/priv/bin/epam" - - pamd_mimic_system xmpp auth account - into "$(get_ejabberd_path)/priv" - newbin epam-wrapper epam - fi - - newconfd "${FILESDIR}/${PN}.confd" "${PN}" - newinitd "${FILESDIR}/${PN}-22.05.initd" "${PN}" - systemd_dounit "${PN}.service" - - insinto /etc/logrotate.d - newins "${FILESDIR}/${PN}-22.05.logrotate" "${PN}" - - keepdir /var/{lib,log}/ejabberd -} - -pkg_postinst() { - local migrate_to_ejabberd_user=false - - if [[ ${REPLACING_VERSIONS} ]]; then - for v in ${REPLACING_VERSIONS}; do - if ver_test "${v}" -lt 21.04-r1; then - migrate_to_ejabberd_user=true - break - fi - done - fi - - # Sarting with >=21.04-r1, the ejabberd configuration is now in - # /etc/ejabberd and no longer in /etc/jabber. See if we need to - # migrate the configuration. Furthermore, ejabberd no longer runs - # under the, shared via net-im/jabber-base, 'jabber' use, but under - # its own user. This increase isolation and hence robustness and - # security. - if $migrate_to_ejabberd_user; then - ewarn "Newer versions of the ejabberd Gentoo package use /etc/ejabberd" - ewarn "(just as upstream) and *not* /etc/jabber." - ewarn "The files from /etc/jabber will now be copied to /etc/ejabberd." - ewarn "Also ejabberd's spool directory became /var/lib/ejabberd (was /var/spool/jabber)." - ewarn "Please check your configuration, and finish the migration by stopping ejabberd" - ewarn "followed by rsync'ing /var/spool/jabber to /var/lib/ejabberd." - - local -A dirs_to_migrate=( - [/etc/jabber]=/etc/ejabberd - [/var/spool/jabber]=/var/lib/ejabberd - ) - - for src_dir in "${!dirs_to_migrate[@]}"; do - local eroot_src_dir="${EROOT}${src_dir}" - local eroot_dst_dir="${EROOT}${dirs_to_migrate[${src_dir}]}" - - cp -r "${eroot_src_dir}"/. "${eroot_dst_dir}" || die "Could not copy ${eroot_src_dir} to ${eroot_dst_dir}" - - if [[ -f "${eroot_dst_dir}"/.keep_net-im_jabber-base-0 ]]; then - rm "${eroot_dst_dir}"/.keep_net-im_jabber-base-0 || die - fi - if ! use prefix; then - chown --recursive ejabberd:ejabberd "${eroot_dst_dir}" || die - fi - done - fi -} diff --git a/net-im/poezio/Manifest b/net-im/poezio/Manifest index a66489192ac0..0ca70c5e3d4f 100644 --- a/net-im/poezio/Manifest +++ b/net-im/poezio/Manifest @@ -1,5 +1,5 @@ AUX Do-not-install-man-pages-and-files-in-usr-share-poez.patch 1030 BLAKE2B 5ce807a6a3346a980f6fc5aa2da1d5df6f5c3cc1ea5a2743f39a64f81830387e8388cbf0791b1f21de60136f6b53cb072917b86c365c3c01460c06a4814abc0b SHA512 9b878fae63f108b54726805aa123ce6a361a67a44a02a8bdf3af3ef22e37a6770b4827ec9d83f507d3973b1c8df741cc956fba1d06e6c14a125f54c0b2028b6a DIST poezio-0.14.tar.gz 662379 BLAKE2B 467741d82945c084c79811d41ff85358ad236d0dcefca7e6f1f8ed5d78aa127f800d2370d624ebaf9e2eb20e1038f280c2e874694ea2b86965fe329b82c4b7d8 SHA512 6e68954a918c645592e2d2f8a265e2f2445a39e256c0525a5517e758a90cc404e066cc08d67ad0f8a3c7d6f3efd61f13a776737d110dd23df7a5f7fab54fc6b5 -EBUILD poezio-0.14.ebuild 1670 BLAKE2B b903cf44f358fbd5cf200b6b6186e93d71a65b4f4a952a44b346c0eb3eb5bdfe9e45498be50fb9638752712d86448a3c9ac8b0a37a179f2ddabd25ddae7f0588 SHA512 50703756e2c6458408c03e2beb2e2002155a19794e828351638b37860f28ee6ef32ace5b4ab485b022f429d6beb6dab572ce456e5e9589cd116133df534f3531 -EBUILD poezio-9999.ebuild 1671 BLAKE2B bf8fd95f0a53ee974b722dd3c511f75dcae6a0a5b4679e87e4d007b76b199c23c949903e766145451573e82b39047186047d99c3a61256158eaa2fa93694ac72 SHA512 b053ce3d6b51e6339857677d46812433790a76deae734b31dc1ba1ce2ff0d82b5be202300cdfbe1ea862fab9be505de69d50fa8bc537ca51e0db4bbb8616d560 -MISC metadata.xml 316 BLAKE2B f37c478624b1cf9ad87b583797f031272cb5cce0d1d3059207515785d58675b8f494fef623f03562f9db4fcd276962f590ecfdf3f2153eabee49f2272bc6e357 SHA512 809370619be912f600c10610cc7c3923a73e8f5fd2cb05d755786764e62c446b187203ff324803ea8efce0172519bf2543d923c536b8561df0901454c83b62a6 +EBUILD poezio-0.14.ebuild 1705 BLAKE2B e0ffb66830d9900bf2b3baa30afefac3712f9c45f12e8368411a2f80dc49875d77b4e673d5211d08dcde6ad9262b20f2240410756beff8c9769b92376608a100 SHA512 f475d16f0bb0bb71a4b0461a321455659307d23bacea2810898cd7ec1de5577b3927651015e2b4b9be9565af800f63ec1cf76196c409ddc10dc7cf6f12ce57f0 +EBUILD poezio-9999.ebuild 1706 BLAKE2B 1173e1b215ba2e1f9e87ded1221c3271b5f671c7589a82571d4b0fc6dae20fc158bb866cb50da007921e8e687a263707f09c3e1e0f84f0eddf236e9b174c282f SHA512 c2cc55b417c97adc0eb8af0a792bf1dc8ce0fabbd4ec1bb49232460c56b0e2b4b20cc0e56ce5d192c8650a05f83934c947f39d99a1bf3f964078aa7270605056 +MISC metadata.xml 371 BLAKE2B 518d241e739146cd8d8b75ddc2dbc139923c849fbbba087fd7790af48edc300be8a3d27fc130dd68f381bcc2354c6bafd90cedc1ea06549ea8e428d1b4c09bd8 SHA512 c09a864b2767b33ea2666b0714375cc507d9c29666deae2307642a97c36513831085bdc51b7732530afa162aec648e8e0c4b7ebcd334fecca5279084a6f7ad60 diff --git a/net-im/poezio/metadata.xml b/net-im/poezio/metadata.xml index 47243d5ddc22..116cdcfb8474 100644 --- a/net-im/poezio/metadata.xml +++ b/net-im/poezio/metadata.xml @@ -7,5 +7,6 @@ poezio + poezio/poezio diff --git a/net-im/poezio/poezio-0.14.ebuild b/net-im/poezio/poezio-0.14.ebuild index b1a80a0858a5..31269b9415ce 100644 --- a/net-im/poezio/poezio-0.14.ebuild +++ b/net-im/poezio/poezio-0.14.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{9..11} ) inherit distutils-r1 optfeature xdg DESCRIPTION="Console XMPP client that looks like most famous IRC clients" -HOMEPAGE="https://poez.io/" +HOMEPAGE="https://poez.io/ https://codeberg.org/poezio/poezio" LICENSE="GPL-3+" SLOT="0" diff --git a/net-im/poezio/poezio-9999.ebuild b/net-im/poezio/poezio-9999.ebuild index 7aa78a8fe0f9..65ae78d42495 100644 --- a/net-im/poezio/poezio-9999.ebuild +++ b/net-im/poezio/poezio-9999.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{9..11} ) inherit distutils-r1 optfeature xdg DESCRIPTION="Console XMPP client that looks like most famous IRC clients" -HOMEPAGE="https://poez.io/" +HOMEPAGE="https://poez.io/ https://codeberg.org/poezio/poezio" LICENSE="GPL-3+" SLOT="0" diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest index 6274f025e866..d1f0add3fd1e 100644 --- a/net-im/telegram-desktop/Manifest +++ b/net-im/telegram-desktop/Manifest @@ -1,12 +1,8 @@ AUX tdesktop-4.10.0-system-cppgir.patch 1150 BLAKE2B d8a6e1320c2ccfd4f1c3f63bfda11f58a499df3880f262adf3f1b74f217dc8c4cc62a8c250d71ff809fb67c797948b53fac5a4d5c584a116b1609ea432662d73 SHA512 0fd213f9aec3a6ff9be11654934126960309cb8e1241dd694852bffeb7a37a08d3c78a332a5bb7e6529358df69bfddb7ccb58138e6dc331f20dd5337ddc9a1c1 -AUX tdesktop-4.10.3-fix-clang-libstdcxx.patch 501 BLAKE2B 2bedef1c542c3312236f7fd4cc4d455d298749790a53718264df35b268e09b9f1bbdf8a77b52468037a8c1ad5b32f92249b20dadb136797c68d2fa4e3f0e1551 SHA512 b9ddee5ae7ebd060cf7d739ed633f02c2142c903e4dc9a98cb8937077481b1b5c35cadacc1eb48a0b0d47e72d76d2a0cb4dbc392af449be6cd21bc05a381d66b AUX tdesktop-4.10.5-qt_compare.patch 381 BLAKE2B 5a5ceea9163f5c2a4cda0df5d10e4013a9634e11a3a3694e1d09166ec311c1089f75b48fa6d618965b722daae40d1f297484ea954341ef8420c7259425eb0ef8 SHA512 d37fea06e9178c778560d2f46b2953794b1605635bdcbf1343a5077c1270d7ec56e5cbb00bdf6caf7eafe21a3c44faa719b9376b8d317d2a109308107fae4226 AUX tdesktop-4.2.4-jemalloc-only-telegram-r1.patch 1307 BLAKE2B b27f65973a6fa8c83469e0c6419a600ca04ebbf35f6c4a406129867eee644082c4f0164fb71afbc6ae729bb4037d0cf6c68ea1ad78f6268bfe245b83e4290400 SHA512 d2c33dd18e354ebe6cb7143b58e9f61dc4cd664bb1e7ad9c60f562efbb05cc72d5b36270af96b866583b366b59cc34cadee3a62dcbd40433276b80b2511e1fcb -AUX tdesktop-4.4.1-fix-dupe-main-decl.patch 853 BLAKE2B 6a3ce346467a3b6450674a77157f3fa45d9e1991160ce33e9cc58292a8441310468943225d5d5b2ba5e5c23feaba544d52f19c964130a8e8c724a99392072abe SHA512 edaad94a901181f0bca4a64b4ab2277a247073005b351156df02532dfff470a4060e6b709197da0778b5484d39a4c1bc1f75e9df068872d68209dd47eca9ac54 -DIST tdesktop-4.10.3-full.tar.gz 67750018 BLAKE2B 395484594dc201019b5cdf3fdaabe1155dca99504b74e65951b6264b61ed0403bb1e016542c6c59370b3ee39d1449ea223409fc64fd6bff723c1be43b615570a SHA512 1e7c0f32b4e17c1f1c39aa9a4f35ce2867324c4410a30fde2c2d6ca5d5fe59a84f58f93cb6b4f8c7ad04fa0adcaf5a276dd2aa7dee0ef34446e6bb95fafa49d6 DIST tdesktop-4.11.7-full.tar.gz 68388327 BLAKE2B 3be938534ff599e44b4ded384c47914a0e7992f5a3a6901e04c60e53386cf1994f19f6dec6195bf44bfbc93f965f16b05644a7ef786deacdc10c021a9ada882d SHA512 d8557a8e11a3b2f34fb65c5a3fafaebc31d93b5855f947b1049e5e7c7e5a5e161df708ba1882cc096f9a789fac56d3bbcbe640d2a026cb8355e946b735995501 -DIST tdesktop-4.8.1-full.tar.gz 63997319 BLAKE2B daac461f0b3205bf647027329660b43f4646db987e27bfe2a2848bfbfb3309c503132d1533f26e95512520417d30f5063b1c395b174787aa7533727549ee77e5 SHA512 4dc495e4502bdba634c4468af4f1321aef1152d619c811f004489f8616504a465069508239eae41a08a83e190a61d26881733ebc38dd88160f81dce070bb0567 -EBUILD telegram-desktop-4.10.3-r1.ebuild 7225 BLAKE2B bb9087d2f3f41bef63f5e1de900665b4a9897150be6538bae4b1b5eefd45a9662629ad94f73672dc455627bcd7adc03510fe7a7391e52b2bce2e1b77cf732e8f SHA512 57ffa3c86b7037ef3d78d3991bb8337e7eea7a66d15b0fcdcec0525eb2a10d76bd37f3443ecb78a3b55a9d02a0e91bd2f673b24391003d51248ba8cd150d601e -EBUILD telegram-desktop-4.11.7.ebuild 7386 BLAKE2B f27d4f9aec5fa1a72dd90621ab756af15b4a78e727162cb7a41ddcbc26577c57123d7699102f71166b7bd544dce1e11bd71a50ae1156234502d246888466fc8d SHA512 6c1b47ce27ded5ada0a95349d0287e2ef0732eb347d81888812e94ef50aea70daa2af0c55feffede7c96d3bbc75e0c54a0627a32b0e11c1df26e7ae842be48e4 -EBUILD telegram-desktop-4.8.1-r3.ebuild 6537 BLAKE2B 7cd698ad91e5ce00b4d6dba7a696a4cb9250b1aa696fe446ca08086e155c511b2419a384cbd03179280fd6e206964ac648732f66b64e476f4fcf44abd873bc11 SHA512 703eb9c6afd01d9ffa901dbb1d710bfd8dd9956ade0eed49cec16948a49b1da49cc6af3a81c604c0bf1de3b5b838e4bff65178a99cde99bfae97c911fe9dc917 +DIST tdesktop-4.12.2-full.tar.gz 67796891 BLAKE2B b5d0d4d065bf586ffade6b81abbb7854d06516a3f0f34071d9c91d8fa7b2f40b5f79917a07039ec5d030a0265cf60a8255b9d9a748541d480448dd1224d1b86a SHA512 af890d693ec24ff96b48a1c3eab29e199c2a324db35ead33afc733ac8dedefa67574d3540dd87f0e19eb91435c699d839ced579b1485028fab737c1c02eaeff6 +EBUILD telegram-desktop-4.11.7-r1.ebuild 7484 BLAKE2B 16c9cbf51468ec3e40289ddd865c4369378ca95909b218346dfc0329e4bd8c0d7f17234b706acff807cac0683204d42e5071a1baa14ac53fe0e309b84b8b2ddf SHA512 1091888d653da8c998ed4a2faf75bccdad9b16acaf65f52ff8cdebf6bb30373bcf86f4b50464efb9281ace17a908dd0442b5ace79af6d5ce5c78f37c9aa554eb +EBUILD telegram-desktop-4.12.2.ebuild 6887 BLAKE2B 886646d69cf22479a6a2302e7bbe9fa1f7de6c751798b5b6bea2d0aad00ceaa61b6ba71129920e702d06c8bd6596fdd167ac2f950e4351755aa4c336ac25357d SHA512 76105a10edfb0474b8786694d2daaff496a4273466116cd1a0d98d439549f60d0255d246325760ad8ac4178f890f38414606b3932159b6cf6c6425aa5596e298 MISC metadata.xml 1172 BLAKE2B 525207ea257f0b28c39ee0109554daad26146719792eeb7651f84af385dd7c984eb89b690ea86c7d41fddf0393e87dfff2a0ef981bb602c235a0d37989d818fd SHA512 68db95549d04ed8b6fb41818d8c219492c044abf54af76166fbdefd4cb040fd55918df46ffdd49a97c8d12fe1136fa21037cc2dfe094b3eb06393dd54818302d diff --git a/net-im/telegram-desktop/files/tdesktop-4.10.3-fix-clang-libstdcxx.patch b/net-im/telegram-desktop/files/tdesktop-4.10.3-fix-clang-libstdcxx.patch deleted file mode 100644 index 290eb2a6b2d9..000000000000 --- a/net-im/telegram-desktop/files/tdesktop-4.10.3-fix-clang-libstdcxx.patch +++ /dev/null @@ -1,13 +0,0 @@ -Fix compilation with Clang + libstdc++ - ---- tdesktop-4.10.3-full.orig/Telegram/SourceFiles/platform/linux/notifications_manager_linux.cpp -+++ tdesktop-4.10.3-full/Telegram/SourceFiles/platform/linux/notifications_manager_linux.cpp -@@ -814,7 +814,7 @@ - - // A list of capabilities that offer feature parity - // with custom notifications -- return ranges::all_of(std::initializer_list{ -+ return ranges::all_of(std::array{ - // To show message content - "body", - // To have buttons on notifications diff --git a/net-im/telegram-desktop/files/tdesktop-4.4.1-fix-dupe-main-decl.patch b/net-im/telegram-desktop/files/tdesktop-4.4.1-fix-dupe-main-decl.patch deleted file mode 100644 index 4c4f7b0377bd..000000000000 --- a/net-im/telegram-desktop/files/tdesktop-4.4.1-fix-dupe-main-decl.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 37e03fb4289a3f46a5201caaebbdce8e441d55f5 Mon Sep 17 00:00:00 2001 -From: John Helmert III -Date: Sun, 11 Dec 2022 14:21:32 -0600 -Subject: [PATCH] fix duplicate main declaration - -Bug: https://bugs.gentoo.org/883935 -Signed-off-by: John Helmert III ---- - cmake/external/cld3/CMakeLists.txt | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/cmake/external/cld3/CMakeLists.txt b/cmake/external/cld3/CMakeLists.txt -index f351ca1..54c524b 100644 ---- a/cmake/external/cld3/CMakeLists.txt -+++ b/cmake/external/cld3/CMakeLists.txt -@@ -80,7 +80,6 @@ PRIVATE - script_span/generated_entities.cc - script_span/getonescriptspan.cc - script_span/getonescriptspan.h -- script_span/getonescriptspan_test.cc - script_span/utf8statetable.cc - script_span/offsetmap.cc - script_span/text_processing.cc --- -2.38.1 - diff --git a/net-im/telegram-desktop/telegram-desktop-4.10.3-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-4.10.3-r1.ebuild deleted file mode 100644 index f2e0f095d515..000000000000 --- a/net-im/telegram-desktop/telegram-desktop-4.10.3-r1.ebuild +++ /dev/null @@ -1,233 +0,0 @@ -# Copyright 2020-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) - -inherit xdg cmake python-any-r1 optfeature flag-o-matic - -DESCRIPTION="Official desktop client for Telegram" -HOMEPAGE="https://desktop.telegram.org" - -MY_P="tdesktop-${PV}-full" -SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~riscv" -IUSE="dbus enchant +fonts +jemalloc screencast qt6 qt6-imageformats wayland webkit +X" -REQUIRED_USE=" - qt6-imageformats? ( qt6 ) -" - -KIMAGEFORMATS_RDEPEND=" - media-libs/libavif:= - media-libs/libheif:= - media-libs/libjxl -" -CDEPEND=" - !net-im/telegram-desktop-bin - app-arch/lz4:= - dev-cpp/abseil-cpp:= - >=dev-cpp/glibmm-2.77:2.68 - dev-libs/glib:2 - dev-libs/libdispatch - dev-libs/openssl:= - dev-libs/protobuf - dev-libs/xxhash - media-libs/libjpeg-turbo:= - ~media-libs/libtgvoip-2.4.4_p20221208 - media-libs/openal - media-libs/opus - media-libs/rnnoise - ~media-libs/tg_owt-0_pre20230921:=[screencast=,X=] - media-video/ffmpeg:=[opus,vpx] - sys-libs/zlib:=[minizip] - virtual/opengl - !enchant? ( >=app-text/hunspell-1.7:= ) - enchant? ( app-text/enchant:= ) - jemalloc? ( dev-libs/jemalloc:=[-lazy-lock] ) - !qt6? ( - >=dev-qt/qtcore-5.15:5= - >=dev-qt/qtgui-5.15:5=[dbus?,jpeg,png,wayland?,X?] - >=dev-qt/qtimageformats-5.15:5 - >=dev-qt/qtnetwork-5.15:5[ssl] - >=dev-qt/qtsvg-5.15:5 - >=dev-qt/qtwidgets-5.15:5[png,X?] - kde-frameworks/kcoreaddons:5 - webkit? ( - >=dev-qt/qtdeclarative-5.15:5 - >=dev-qt/qtwayland-5.15:5 - ) - ) - qt6? ( - >=dev-qt/qtbase-6.5:6=[dbus?,gui,network,opengl,wayland?,widgets,X?] - >=dev-qt/qtimageformats-6.5:6 - >=dev-qt/qtsvg-6.5:6 - webkit? ( - >=dev-qt/qtdeclarative-6.5:6 - >=dev-qt/qtwayland-6.5:6[compositor] - ) - qt6-imageformats? ( - >=dev-qt/qtimageformats-6.5:6= - ${KIMAGEFORMATS_RDEPEND} - ) - ) - X? ( - x11-libs/libxcb:= - x11-libs/xcb-util-keysyms - ) -" -RDEPEND="${CDEPEND} - webkit? ( net-libs/webkit-gtk:4 ) -" -DEPEND="${CDEPEND} - >=dev-cpp/cppgir-0_p20230926 - >=dev-cpp/ms-gsl-4 - dev-cpp/range-v3 -" -BDEPEND=" - ${PYTHON_DEPS} - >=dev-cpp/cppgir-0_p20230926 - >=dev-util/cmake-3.16 - dev-util/gdbus-codegen - virtual/pkgconfig -" -# dev-libs/jemalloc:=[-lazy-lock] -> https://bugs.gentoo.org/803233 - -PATCHES=( - "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch" - "${FILESDIR}/tdesktop-4.10.0-system-cppgir.patch" - "${FILESDIR}/tdesktop-4.10.3-fix-clang-libstdcxx.patch" -) - -pkg_pretend() { - if has ccache ${FEATURES}; then - ewarn "ccache does not work with ${PN} out of the box" - ewarn "due to usage of precompiled headers" - ewarn "check bug https://bugs.gentoo.org/715114 for more info" - ewarn - fi -} - -src_prepare() { - # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to - # build in gentoo right now. - if use qt6-imageformats; then - sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ - cmake/external/kimageformats/CMakeLists.txt || die - printf '%s\n' \ - 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ - 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ - 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ - >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die - fi - - # kde-frameworks/kcoreaddons is bundled when using qt6, see: - # cmake/external/kcoreaddons/CMakeLists.txt - - # Happily fail if libraries aren't found... - find -type f \( -name 'CMakeLists.txt' -o -name '*.cmake' \) \ - \! -path './cmake/external/expected/CMakeLists.txt' \ - \! -path './cmake/external/qt/package.cmake' \ - \! -path './Telegram/lib_webview/CMakeLists.txt' \ - -print0 | xargs -0 sed -i \ - -e '/pkg_check_modules(/s/[^ ]*)/REQUIRED &/' \ - -e '/find_package(/s/)/ REQUIRED)/' || die - # Make sure to check the excluded files for new - # CMAKE_DISABLE_FIND_PACKAGE entries. - - # Control QtDBus dependency from here, to avoid messing with QtGui. - if ! use dbus; then - sed -e '/find_package(Qt[^ ]* OPTIONAL_COMPONENTS/s/DBus *//' \ - -i cmake/external/qt/package.cmake || die - fi - - cmake_src_prepare -} - -src_configure() { - # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep - # the same state across both projects. - # See https://bugs.gentoo.org/866055 - append-cppflags '-DNDEBUG' - - local qt=$(usex qt6 6 5) - local mycmakeargs=( - -DQT_VERSION_MAJOR=${qt} - - # Control automagic dependencies on certain packages - ## Header-only lib, some git version. - -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}Quick=$(usex !webkit) - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}QuickWidgets=$(usex !webkit) - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandClient=$(usex !wayland) - ## Only used in Telegram/lib_webview/CMakeLists.txt - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandCompositor=$(usex !webkit) - - -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) - -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) - -DDESKTOP_APP_DISABLE_JEMALLOC=$(usex !jemalloc) - ## Enables enchant and disables hunspell - -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) - ## Use system fonts instead of bundled ones - -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) - ) - - if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then - einfo "Found custom API credentials" - mycmakeargs+=( - -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" - -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" - ) - else - # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml - # Building with snapcraft API credentials by default - # Custom API credentials can be obtained here: - # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md - # After getting credentials you can export variables: - # export MY_TDESKTOP_API_ID="17349"" - # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" - # and restart the build" - # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop - # portage will use custom variable every build automatically - mycmakeargs+=( - -DTDESKTOP_API_ID="611335" - -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" - ) - fi - - cmake_src_configure -} - -pkg_postinst() { - xdg_pkg_postinst - if ! use X && ! use screencast; then - ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" - ewarn - fi - if ! use jemalloc && use elibc_glibc; then - # https://github.com/telegramdesktop/tdesktop/issues/16084 - # https://github.com/desktop-app/cmake_helpers/pull/91#issuecomment-881788003 - ewarn "Disabling USE=jemalloc on glibc systems may cause very high RAM usage!" - ewarn "Do NOT report issues about RAM usage without enabling this flag first." - ewarn - fi - if use wayland && ! use qt6; then - ewarn "Wayland-specific integrations have been deprecated with Qt5." - ewarn "The app will continue to function under wayland, but some" - ewarn "functionality may be reduced." - ewarn "These integrations are only supported when built with Qt6." - ewarn - fi - if use qt6 && ! use qt6-imageformats; then - elog "Enable USE=qt6-imageformats for AVIF, HEIF and JpegXL support" - elog - fi - optfeature_header - if ! use qt6; then - optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats[avif,heif,jpegxl] - fi -} diff --git a/net-im/telegram-desktop/telegram-desktop-4.11.7-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-4.11.7-r1.ebuild new file mode 100644 index 000000000000..4ad46eb573f4 --- /dev/null +++ b/net-im/telegram-desktop/telegram-desktop-4.11.7-r1.ebuild @@ -0,0 +1,238 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit xdg cmake python-any-r1 optfeature flag-o-matic + +DESCRIPTION="Official desktop client for Telegram" +HOMEPAGE="https://desktop.telegram.org" + +MY_P="tdesktop-${PV}-full" +SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" +IUSE="dbus enchant +fonts +jemalloc screencast qt6 qt6-imageformats wayland webkit +X" +REQUIRED_USE=" + qt6-imageformats? ( qt6 ) +" + +KIMAGEFORMATS_RDEPEND=" + media-libs/libavif:= + media-libs/libheif:= + >=media-libs/libjxl-0.8.0 +" +CDEPEND=" + !net-im/telegram-desktop-bin + app-arch/lz4:= + dev-cpp/abseil-cpp:= + >=dev-cpp/glibmm-2.77:2.68 + dev-libs/glib:2 + dev-libs/libdispatch + dev-libs/openssl:= + dev-libs/protobuf + dev-libs/xxhash + media-libs/libjpeg-turbo:= + ~media-libs/libtgvoip-2.4.4_p20221208 + media-libs/openal + media-libs/opus + media-libs/rnnoise + ~media-libs/tg_owt-0_pre20230921:=[screencast=,X=] + media-video/ffmpeg:=[opus,vpx] + sys-libs/zlib:=[minizip] + virtual/opengl + !enchant? ( >=app-text/hunspell-1.7:= ) + enchant? ( app-text/enchant:= ) + jemalloc? ( dev-libs/jemalloc:=[-lazy-lock] ) + !qt6? ( + >=dev-qt/qtcore-5.15:5= + >=dev-qt/qtgui-5.15:5=[dbus?,jpeg,png,wayland?,X?] + >=dev-qt/qtimageformats-5.15:5 + >=dev-qt/qtnetwork-5.15:5[ssl] + >=dev-qt/qtsvg-5.15:5 + >=dev-qt/qtwidgets-5.15:5[png,X?] + kde-frameworks/kcoreaddons:5 + webkit? ( + >=dev-qt/qtdeclarative-5.15:5 + >=dev-qt/qtwayland-5.15:5 + ) + ) + qt6? ( + >=dev-qt/qtbase-6.5:6=[dbus?,gui,network,opengl,wayland?,widgets,X?] + >=dev-qt/qtimageformats-6.5:6 + >=dev-qt/qtsvg-6.5:6 + webkit? ( + >=dev-qt/qtdeclarative-6.5:6 + >=dev-qt/qtwayland-6.5:6[compositor] + ) + qt6-imageformats? ( + >=dev-qt/qtimageformats-6.5:6= + ${KIMAGEFORMATS_RDEPEND} + ) + ) + X? ( + x11-libs/libxcb:= + x11-libs/xcb-util-keysyms + ) +" +RDEPEND="${CDEPEND} + webkit? ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:6 ) +" +DEPEND="${CDEPEND} + >=dev-cpp/cppgir-0_p20230926 + >=dev-cpp/ms-gsl-4 + dev-cpp/range-v3 +" +BDEPEND=" + ${PYTHON_DEPS} + >=dev-cpp/cppgir-0_p20230926 + >=dev-util/cmake-3.16 + dev-util/gdbus-codegen + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" +# dev-libs/jemalloc:=[-lazy-lock] -> https://bugs.gentoo.org/803233 + +PATCHES=( + "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch" + "${FILESDIR}/tdesktop-4.10.0-system-cppgir.patch" + "${FILESDIR}/tdesktop-4.10.5-qt_compare.patch" +) + +pkg_pretend() { + if has ccache ${FEATURES}; then + ewarn "ccache does not work with ${PN} out of the box" + ewarn "due to usage of precompiled headers" + ewarn "check bug https://bugs.gentoo.org/715114 for more info" + ewarn + fi +} + +src_prepare() { + # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to + # build in gentoo right now. + if use qt6-imageformats; then + sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ + cmake/external/kimageformats/CMakeLists.txt || die + printf '%s\n' \ + 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ + 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ + 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ + >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die + fi + # kde-frameworks/kcoreaddons is bundled when using qt6. + + # Happily fail if libraries aren't found... + find -type f \( -name 'CMakeLists.txt' -o -name '*.cmake' \) \ + \! -path './Telegram/lib_webview/CMakeLists.txt' \ + \! -path './cmake/external/expected/CMakeLists.txt' \ + \! -path './cmake/external/kcoreaddons/CMakeLists.txt' \ + \! -path './cmake/external/qt/package.cmake' \ + -print0 | xargs -0 sed -i \ + -e '/pkg_check_modules(/s/[^ ]*)/REQUIRED &/' \ + -e '/find_package(/s/)/ REQUIRED)/' || die + # Make sure to check the excluded files for new + # CMAKE_DISABLE_FIND_PACKAGE entries. + + # Control QtDBus dependency from here, to avoid messing with QtGui. + if ! use dbus; then + sed -e '/find_package(Qt[^ ]* OPTIONAL_COMPONENTS/s/DBus *//' \ + -i cmake/external/qt/package.cmake || die + fi + + cmake_src_prepare +} + +src_configure() { + # Evil flag (bug #919201) + filter-flags -fno-delete-null-pointer-checks + + # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep + # the same state across both projects. + # See https://bugs.gentoo.org/866055 + append-cppflags '-DNDEBUG' + + local qt=$(usex qt6 6 5) + local mycmakeargs=( + -DQT_VERSION_MAJOR=${qt} + + # Control automagic dependencies on certain packages + ## Header-only lib, some git version. + -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}Quick=$(usex !webkit) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}QuickWidgets=$(usex !webkit) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandClient=$(usex !wayland) + ## Only used in Telegram/lib_webview/CMakeLists.txt + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandCompositor=$(usex !webkit) + ## KF6CoreAddons is currently unavailable in ::gentoo + -DCMAKE_DISABLE_FIND_PACKAGE_KF${qt}CoreAddons=$(usex qt6) + + -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) + -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) + -DDESKTOP_APP_DISABLE_JEMALLOC=$(usex !jemalloc) + ## Enables enchant and disables hunspell + -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) + ## Use system fonts instead of bundled ones + -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) + ) + + if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then + einfo "Found custom API credentials" + mycmakeargs+=( + -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" + -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" + ) + else + # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml + # Building with snapcraft API credentials by default + # Custom API credentials can be obtained here: + # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md + # After getting credentials you can export variables: + # export MY_TDESKTOP_API_ID="17349"" + # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" + # and restart the build" + # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop + # portage will use custom variable every build automatically + mycmakeargs+=( + -DTDESKTOP_API_ID="611335" + -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" + ) + fi + + cmake_src_configure +} + +pkg_postinst() { + xdg_pkg_postinst + if ! use X && ! use screencast; then + ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" + ewarn + fi + if ! use jemalloc && use elibc_glibc; then + # https://github.com/telegramdesktop/tdesktop/issues/16084 + # https://github.com/desktop-app/cmake_helpers/pull/91#issuecomment-881788003 + ewarn "Disabling USE=jemalloc on glibc systems may cause very high RAM usage!" + ewarn "Do NOT report issues about RAM usage without enabling this flag first." + ewarn + fi + if use wayland && ! use qt6; then + ewarn "Wayland-specific integrations have been deprecated with Qt5." + ewarn "The app will continue to function under wayland, but some" + ewarn "functionality may be reduced." + ewarn "These integrations are only supported when built with Qt6." + ewarn + fi + if use qt6 && ! use qt6-imageformats; then + elog "Enable USE=qt6-imageformats for AVIF, HEIF and JpegXL support" + elog + fi + optfeature_header + if ! use qt6; then + optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats[avif,heif,jpegxl] + fi +} diff --git a/net-im/telegram-desktop/telegram-desktop-4.11.7.ebuild b/net-im/telegram-desktop/telegram-desktop-4.11.7.ebuild deleted file mode 100644 index 158efde95a9c..000000000000 --- a/net-im/telegram-desktop/telegram-desktop-4.11.7.ebuild +++ /dev/null @@ -1,235 +0,0 @@ -# Copyright 2020-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) - -inherit xdg cmake python-any-r1 optfeature flag-o-matic - -DESCRIPTION="Official desktop client for Telegram" -HOMEPAGE="https://desktop.telegram.org" - -MY_P="tdesktop-${PV}-full" -SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~riscv" -IUSE="dbus enchant +fonts +jemalloc screencast qt6 qt6-imageformats wayland webkit +X" -REQUIRED_USE=" - qt6-imageformats? ( qt6 ) -" - -KIMAGEFORMATS_RDEPEND=" - media-libs/libavif:= - media-libs/libheif:= - >=media-libs/libjxl-0.8.0 -" -CDEPEND=" - !net-im/telegram-desktop-bin - app-arch/lz4:= - dev-cpp/abseil-cpp:= - >=dev-cpp/glibmm-2.77:2.68 - dev-libs/glib:2 - dev-libs/libdispatch - dev-libs/openssl:= - dev-libs/protobuf - dev-libs/xxhash - media-libs/libjpeg-turbo:= - ~media-libs/libtgvoip-2.4.4_p20221208 - media-libs/openal - media-libs/opus - media-libs/rnnoise - ~media-libs/tg_owt-0_pre20230921:=[screencast=,X=] - media-video/ffmpeg:=[opus,vpx] - sys-libs/zlib:=[minizip] - virtual/opengl - !enchant? ( >=app-text/hunspell-1.7:= ) - enchant? ( app-text/enchant:= ) - jemalloc? ( dev-libs/jemalloc:=[-lazy-lock] ) - !qt6? ( - >=dev-qt/qtcore-5.15:5= - >=dev-qt/qtgui-5.15:5=[dbus?,jpeg,png,wayland?,X?] - >=dev-qt/qtimageformats-5.15:5 - >=dev-qt/qtnetwork-5.15:5[ssl] - >=dev-qt/qtsvg-5.15:5 - >=dev-qt/qtwidgets-5.15:5[png,X?] - kde-frameworks/kcoreaddons:5 - webkit? ( - >=dev-qt/qtdeclarative-5.15:5 - >=dev-qt/qtwayland-5.15:5 - ) - ) - qt6? ( - >=dev-qt/qtbase-6.5:6=[dbus?,gui,network,opengl,wayland?,widgets,X?] - >=dev-qt/qtimageformats-6.5:6 - >=dev-qt/qtsvg-6.5:6 - webkit? ( - >=dev-qt/qtdeclarative-6.5:6 - >=dev-qt/qtwayland-6.5:6[compositor] - ) - qt6-imageformats? ( - >=dev-qt/qtimageformats-6.5:6= - ${KIMAGEFORMATS_RDEPEND} - ) - ) - X? ( - x11-libs/libxcb:= - x11-libs/xcb-util-keysyms - ) -" -RDEPEND="${CDEPEND} - webkit? ( net-libs/webkit-gtk:4 ) -" -DEPEND="${CDEPEND} - >=dev-cpp/cppgir-0_p20230926 - >=dev-cpp/ms-gsl-4 - dev-cpp/range-v3 -" -BDEPEND=" - ${PYTHON_DEPS} - >=dev-cpp/cppgir-0_p20230926 - >=dev-util/cmake-3.16 - dev-util/gdbus-codegen - virtual/pkgconfig - wayland? ( dev-util/wayland-scanner ) -" -# dev-libs/jemalloc:=[-lazy-lock] -> https://bugs.gentoo.org/803233 - -PATCHES=( - "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch" - "${FILESDIR}/tdesktop-4.10.0-system-cppgir.patch" - "${FILESDIR}/tdesktop-4.10.5-qt_compare.patch" -) - -pkg_pretend() { - if has ccache ${FEATURES}; then - ewarn "ccache does not work with ${PN} out of the box" - ewarn "due to usage of precompiled headers" - ewarn "check bug https://bugs.gentoo.org/715114 for more info" - ewarn - fi -} - -src_prepare() { - # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to - # build in gentoo right now. - if use qt6-imageformats; then - sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ - cmake/external/kimageformats/CMakeLists.txt || die - printf '%s\n' \ - 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ - 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ - 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ - >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die - fi - # kde-frameworks/kcoreaddons is bundled when using qt6. - - # Happily fail if libraries aren't found... - find -type f \( -name 'CMakeLists.txt' -o -name '*.cmake' \) \ - \! -path './Telegram/lib_webview/CMakeLists.txt' \ - \! -path './cmake/external/expected/CMakeLists.txt' \ - \! -path './cmake/external/kcoreaddons/CMakeLists.txt' \ - \! -path './cmake/external/qt/package.cmake' \ - -print0 | xargs -0 sed -i \ - -e '/pkg_check_modules(/s/[^ ]*)/REQUIRED &/' \ - -e '/find_package(/s/)/ REQUIRED)/' || die - # Make sure to check the excluded files for new - # CMAKE_DISABLE_FIND_PACKAGE entries. - - # Control QtDBus dependency from here, to avoid messing with QtGui. - if ! use dbus; then - sed -e '/find_package(Qt[^ ]* OPTIONAL_COMPONENTS/s/DBus *//' \ - -i cmake/external/qt/package.cmake || die - fi - - cmake_src_prepare -} - -src_configure() { - # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep - # the same state across both projects. - # See https://bugs.gentoo.org/866055 - append-cppflags '-DNDEBUG' - - local qt=$(usex qt6 6 5) - local mycmakeargs=( - -DQT_VERSION_MAJOR=${qt} - - # Control automagic dependencies on certain packages - ## Header-only lib, some git version. - -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}Quick=$(usex !webkit) - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}QuickWidgets=$(usex !webkit) - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandClient=$(usex !wayland) - ## Only used in Telegram/lib_webview/CMakeLists.txt - -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandCompositor=$(usex !webkit) - ## KF6CoreAddons is currently unavailable in ::gentoo - -DCMAKE_DISABLE_FIND_PACKAGE_KF${qt}CoreAddons=$(usex qt6) - - -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) - -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) - -DDESKTOP_APP_DISABLE_JEMALLOC=$(usex !jemalloc) - ## Enables enchant and disables hunspell - -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) - ## Use system fonts instead of bundled ones - -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) - ) - - if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then - einfo "Found custom API credentials" - mycmakeargs+=( - -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" - -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" - ) - else - # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml - # Building with snapcraft API credentials by default - # Custom API credentials can be obtained here: - # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md - # After getting credentials you can export variables: - # export MY_TDESKTOP_API_ID="17349"" - # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" - # and restart the build" - # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop - # portage will use custom variable every build automatically - mycmakeargs+=( - -DTDESKTOP_API_ID="611335" - -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" - ) - fi - - cmake_src_configure -} - -pkg_postinst() { - xdg_pkg_postinst - if ! use X && ! use screencast; then - ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" - ewarn - fi - if ! use jemalloc && use elibc_glibc; then - # https://github.com/telegramdesktop/tdesktop/issues/16084 - # https://github.com/desktop-app/cmake_helpers/pull/91#issuecomment-881788003 - ewarn "Disabling USE=jemalloc on glibc systems may cause very high RAM usage!" - ewarn "Do NOT report issues about RAM usage without enabling this flag first." - ewarn - fi - if use wayland && ! use qt6; then - ewarn "Wayland-specific integrations have been deprecated with Qt5." - ewarn "The app will continue to function under wayland, but some" - ewarn "functionality may be reduced." - ewarn "These integrations are only supported when built with Qt6." - ewarn - fi - if use qt6 && ! use qt6-imageformats; then - elog "Enable USE=qt6-imageformats for AVIF, HEIF and JpegXL support" - elog - fi - optfeature_header - if ! use qt6; then - optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats[avif,heif,jpegxl] - fi -} diff --git a/net-im/telegram-desktop/telegram-desktop-4.12.2.ebuild b/net-im/telegram-desktop/telegram-desktop-4.12.2.ebuild new file mode 100644 index 000000000000..8e9ff6ff89ab --- /dev/null +++ b/net-im/telegram-desktop/telegram-desktop-4.12.2.ebuild @@ -0,0 +1,227 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit xdg cmake python-any-r1 optfeature flag-o-matic + +DESCRIPTION="Official desktop client for Telegram" +HOMEPAGE="https://desktop.telegram.org" + +MY_P="tdesktop-${PV}-full" +SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" +IUSE="dbus enchant +fonts screencast qt6 qt6-imageformats wayland webkit +X" +REQUIRED_USE=" + qt6-imageformats? ( qt6 ) +" + +KIMAGEFORMATS_RDEPEND=" + media-libs/libavif:= + media-libs/libheif:= + >=media-libs/libjxl-0.8.0 +" +CDEPEND=" + !net-im/telegram-desktop-bin + app-arch/lz4:= + dev-cpp/abseil-cpp:= + >=dev-cpp/glibmm-2.77:2.68 + dev-libs/glib:2 + dev-libs/libdispatch + dev-libs/openssl:= + dev-libs/protobuf + dev-libs/xxhash + media-libs/libjpeg-turbo:= + ~media-libs/libtgvoip-2.4.4_p20221208 + media-libs/openal + media-libs/opus + media-libs/rnnoise + ~media-libs/tg_owt-0_pre20230921:=[screencast=,X=] + media-video/ffmpeg:=[opus,vpx] + sys-libs/zlib:=[minizip] + virtual/opengl + !enchant? ( >=app-text/hunspell-1.7:= ) + enchant? ( app-text/enchant:= ) + !qt6? ( + >=dev-qt/qtcore-5.15:5= + >=dev-qt/qtgui-5.15:5=[dbus?,jpeg,png,wayland?,X?] + >=dev-qt/qtimageformats-5.15:5 + >=dev-qt/qtnetwork-5.15:5[ssl] + >=dev-qt/qtsvg-5.15:5 + >=dev-qt/qtwidgets-5.15:5[png,X?] + kde-frameworks/kcoreaddons:5 + webkit? ( + >=dev-qt/qtdeclarative-5.15:5 + >=dev-qt/qtwayland-5.15:5 + ) + ) + qt6? ( + >=dev-qt/qtbase-6.5:6=[dbus?,gui,network,opengl,wayland?,widgets,X?] + >=dev-qt/qtimageformats-6.5:6 + >=dev-qt/qtsvg-6.5:6 + webkit? ( + >=dev-qt/qtdeclarative-6.5:6 + >=dev-qt/qtwayland-6.5:6[compositor] + ) + qt6-imageformats? ( + >=dev-qt/qtimageformats-6.5:6= + ${KIMAGEFORMATS_RDEPEND} + ) + ) + X? ( + x11-libs/libxcb:= + x11-libs/xcb-util-keysyms + ) +" +RDEPEND="${CDEPEND} + webkit? ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:6 ) +" +DEPEND="${CDEPEND} + >=dev-cpp/cppgir-0_p20230926 + >=dev-cpp/ms-gsl-4 + dev-cpp/range-v3 +" +BDEPEND=" + ${PYTHON_DEPS} + >=dev-cpp/cppgir-0_p20230926 + >=dev-util/cmake-3.16 + dev-util/gdbus-codegen + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" + +PATCHES=( + "${FILESDIR}/tdesktop-4.10.0-system-cppgir.patch" + "${FILESDIR}/tdesktop-4.10.5-qt_compare.patch" +) + +pkg_pretend() { + if has ccache ${FEATURES}; then + ewarn "ccache does not work with ${PN} out of the box" + ewarn "due to usage of precompiled headers" + ewarn "check bug https://bugs.gentoo.org/715114 for more info" + ewarn + fi +} + +src_prepare() { + # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to + # build in gentoo right now. + if use qt6-imageformats; then + sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ + cmake/external/kimageformats/CMakeLists.txt || die + printf '%s\n' \ + 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ + 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ + 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ + >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die + fi + # kde-frameworks/kcoreaddons is bundled when using qt6. + + # Happily fail if libraries aren't found... + find -type f \( -name 'CMakeLists.txt' -o -name '*.cmake' \) \ + \! -path './Telegram/lib_webview/CMakeLists.txt' \ + \! -path './cmake/external/expected/CMakeLists.txt' \ + \! -path './cmake/external/kcoreaddons/CMakeLists.txt' \ + \! -path './cmake/external/qt/package.cmake' \ + -print0 | xargs -0 sed -i \ + -e '/pkg_check_modules(/s/[^ ]*)/REQUIRED &/' \ + -e '/find_package(/s/)/ REQUIRED)/' || die + # Make sure to check the excluded files for new + # CMAKE_DISABLE_FIND_PACKAGE entries. + + # Control QtDBus dependency from here, to avoid messing with QtGui. + if ! use dbus; then + sed -e '/find_package(Qt[^ ]* OPTIONAL_COMPONENTS/s/DBus *//' \ + -i cmake/external/qt/package.cmake || die + fi + + cmake_src_prepare +} + +src_configure() { + # Evil flag (bug #919201) + filter-flags -fno-delete-null-pointer-checks + + # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep + # the same state across both projects. + # See https://bugs.gentoo.org/866055 + append-cppflags '-DNDEBUG' + + local qt=$(usex qt6 6 5) + local mycmakeargs=( + -DQT_VERSION_MAJOR=${qt} + + # Control automagic dependencies on certain packages + ## Header-only lib, some git version. + -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}Quick=$(usex !webkit) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}QuickWidgets=$(usex !webkit) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandClient=$(usex !wayland) + ## Only used in Telegram/lib_webview/CMakeLists.txt + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandCompositor=$(usex !webkit) + ## KF6CoreAddons is currently unavailable in ::gentoo + -DCMAKE_DISABLE_FIND_PACKAGE_KF${qt}CoreAddons=$(usex qt6) + + -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) + -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) + ## Enables enchant and disables hunspell + -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) + ## Use system fonts instead of bundled ones + -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) + ) + + if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then + einfo "Found custom API credentials" + mycmakeargs+=( + -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" + -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" + ) + else + # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml + # Building with snapcraft API credentials by default + # Custom API credentials can be obtained here: + # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md + # After getting credentials you can export variables: + # export MY_TDESKTOP_API_ID="17349"" + # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" + # and restart the build" + # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop + # portage will use custom variable every build automatically + mycmakeargs+=( + -DTDESKTOP_API_ID="611335" + -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" + ) + fi + + cmake_src_configure +} + +pkg_postinst() { + xdg_pkg_postinst + if ! use X && ! use screencast; then + ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" + ewarn + fi + if use wayland && ! use qt6; then + ewarn "Wayland-specific integrations have been deprecated with Qt5." + ewarn "The app will continue to function under wayland, but some" + ewarn "functionality may be reduced." + ewarn "These integrations are only supported when built with Qt6." + ewarn + fi + if use qt6 && ! use qt6-imageformats; then + elog "Enable USE=qt6-imageformats for AVIF, HEIF and JpegXL support" + elog + fi + optfeature_header + if ! use qt6; then + optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats[avif,heif,jpegxl] + fi +} diff --git a/net-im/telegram-desktop/telegram-desktop-4.8.1-r3.ebuild b/net-im/telegram-desktop/telegram-desktop-4.8.1-r3.ebuild deleted file mode 100644 index d4aa40df0c04..000000000000 --- a/net-im/telegram-desktop/telegram-desktop-4.8.1-r3.ebuild +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 2020-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{9..11} ) - -inherit xdg cmake python-any-r1 optfeature flag-o-matic - -DESCRIPTION="Official desktop client for Telegram" -HOMEPAGE="https://desktop.telegram.org" - -MY_P="tdesktop-${PV}-full" -SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv" -IUSE="+dbus enchant +fonts +jemalloc screencast qt6 qt6-imageformats wayland +X" -REQUIRED_USE=" - qt6-imageformats? ( qt6 ) -" - -KIMAGEFORMATS_RDEPEND=" - media-libs/libavif:= - media-libs/libheif:= - media-libs/libjxl -" -RDEPEND=" - !net-im/telegram-desktop-bin - app-arch/lz4:= - dev-cpp/abseil-cpp:= - dev-libs/glib:2 - dev-libs/libdispatch - dev-libs/libsigc++:2 - dev-libs/openssl:= - dev-libs/protobuf - dev-libs/xxhash - media-libs/fontconfig:= - media-libs/libjpeg-turbo:= - ~media-libs/libtgvoip-2.4.4_p20221208 - media-libs/openal - media-libs/opus:= - media-libs/rnnoise - ~media-libs/tg_owt-0_pre20230428:=[screencast=,X=] - media-video/ffmpeg:=[opus,vpx] - sys-libs/zlib:=[minizip] - virtual/opengl - dbus? ( >=dev-cpp/glibmm-2.76:2.68 ) - !enchant? ( >=app-text/hunspell-1.7:= ) - enchant? ( app-text/enchant:= ) - jemalloc? ( dev-libs/jemalloc:=[-lazy-lock] ) - !qt6? ( - >=dev-qt/qtcore-5.15:5 - >=dev-qt/qtgui-5.15:5=[dbus?,jpeg,png,wayland?,X?] - >=dev-qt/qtimageformats-5.15:5 - >=dev-qt/qtnetwork-5.15:5[ssl] - >=dev-qt/qtsvg-5.15:5 - >=dev-qt/qtwidgets-5.15:5[png,X?] - kde-frameworks/kcoreaddons:= - ) - qt6? ( - dev-qt/qt5compat:6 - dev-qt/qtbase:6=[dbus?,gui,network,opengl,widgets,X?] - dev-qt/qtimageformats:6 - dev-qt/qtsvg:6 - wayland? ( dev-qt/qtwayland:6 ) - qt6-imageformats? ( - dev-qt/qtimageformats:6= - ${KIMAGEFORMATS_RDEPEND} - ) - ) - X? ( - x11-libs/libxcb:= - x11-libs/xcb-util-keysyms - ) -" -DEPEND="${RDEPEND} - dev-cpp/range-v3 - >=dev-cpp/ms-gsl-4 -" -BDEPEND=" - ${PYTHON_DEPS} - >=dev-util/cmake-3.16 - virtual/pkgconfig -" -# dev-libs/jemalloc:=[-lazy-lock] -> https://bugs.gentoo.org/803233 - -PATCHES=( - "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch" - "${FILESDIR}/tdesktop-4.4.1-fix-dupe-main-decl.patch" -) - -# Current desktop-file-utils-0.26 does not understand Version=1.5 -QA_DESKTOP_FILE="usr/share/applications/${PN}.desktop" - -pkg_pretend() { - if has ccache ${FEATURES}; then - ewarn "ccache does not work with ${PN} out of the box" - ewarn "due to usage of precompiled headers" - ewarn "check bug https://bugs.gentoo.org/715114 for more info" - ewarn - fi -} - -src_prepare() { - # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to - # build in gentoo right now. - if use qt6-imageformats; then - sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ - cmake/external/kimageformats/CMakeLists.txt || die - printf '%s\n' \ - 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ - 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ - 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ - >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die - fi - - # kde-frameworks/kcoreaddons is bundled when using qt6, see: - # cmake/external/kcoreaddons/CMakeLists.txt - - cmake_src_prepare -} - -src_configure() { - # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep - # the same state across both projects. - # See https://bugs.gentoo.org/866055 - append-cppflags '-DNDEBUG' - - local mycmakeargs=( - -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON # header only lib, some git version. prevents warnings. - -DQT_VERSION_MAJOR=$(usex qt6 6 5) - - -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION=$(usex !dbus) - -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) - -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) - -DDESKTOP_APP_DISABLE_JEMALLOC=$(usex !jemalloc) - -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) # enables enchant and disables hunspell - -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) # use system fonts instead of bundled ones - ) - - if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then - einfo "Found custom API credentials" - mycmakeargs+=( - -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" - -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" - ) - else - # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml - # Building with snapcraft API credentials by default - # Custom API credentials can be obtained here: - # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md - # After getting credentials you can export variables: - # export MY_TDESKTOP_API_ID="17349"" - # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" - # and restart the build" - # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop - # portage will use custom variable every build automatically - mycmakeargs+=( - -DTDESKTOP_API_ID="611335" - -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" - ) - fi - - cmake_src_configure -} - -pkg_postinst() { - xdg_pkg_postinst - if ! use X && ! use screencast; then - ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" - ewarn - fi - if has_version '