summaryrefslogtreecommitdiff
path: root/net-im
diff options
context:
space:
mode:
Diffstat (limited to 'net-im')
-rw-r--r--net-im/biboumi/Manifest2
-rw-r--r--net-im/biboumi/biboumi-9.0-r4.ebuild129
-rw-r--r--net-im/biboumi/files/biboumi-9.0-do-not-use-as-a-namespace-separator-with-expat.patch301
-rw-r--r--net-im/biboumi/files/biboumi-9.0-use-system-catch2.patch229
-rw-r--r--net-im/biboumi/files/biboumi.initd21
-rw-r--r--net-im/biboumi/files/biboumi.logrotate10
-rw-r--r--net-im/biboumi/metadata.xml22
-rw-r--r--net-im/bitlbee-facebook/Manifest2
-rw-r--r--net-im/bitlbee-facebook/bitlbee-facebook-1.2.2.ebuild (renamed from net-im/bitlbee-facebook/bitlbee-facebook-1.2.0.ebuild)2
-rw-r--r--net-im/bitlbee-facebook/metadata.xml12
-rw-r--r--net-im/bitlbee-steam/bitlbee-steam-1.4.2.ebuild13
-rw-r--r--net-im/bitlbee-steam/bitlbee-steam-9999.ebuild13
-rw-r--r--net-im/bitlbee-steam/metadata.xml2
-rw-r--r--net-im/bitlbee/Manifest1
-rw-r--r--net-im/bitlbee/bitlbee-3.5.1.ebuild160
-rw-r--r--net-im/bitlbee/bitlbee-3.6-r3.ebuild (renamed from net-im/bitlbee/bitlbee-3.6-r1.ebuild)34
-rw-r--r--net-im/bitlbee/bitlbee-9999.ebuild28
-rw-r--r--net-im/bitlbee/files/bitlbee-3.5-verbose-build.patch200
-rw-r--r--net-im/bitlbee/files/bitlbee-3.6-disabled-plugins-use.patch55
-rw-r--r--net-im/bitlbee/files/bitlbee-3.6-system-json-parser.patch99
-rw-r--r--net-im/bitlbee/files/bitlbee.confd-r18
-rw-r--r--net-im/bitlbee/files/bitlbee.initd-r130
-rw-r--r--net-im/bitlbee/metadata.xml18
-rw-r--r--net-im/centerim/centerim-5.0.1-r2.ebuild (renamed from net-im/centerim/centerim-5.0.1.ebuild)21
-rw-r--r--net-im/centerim/metadata.xml2
-rw-r--r--net-im/choqok/Manifest1
-rw-r--r--net-im/choqok/choqok-1.7.0-r1.ebuild (renamed from net-im/choqok/choqok-1.7.0.ebuild)41
-rw-r--r--net-im/choqok/files/choqok-1.7.0-fix-KCModule-warning.patch43
-rw-r--r--net-im/choqok/metadata.xml6
-rw-r--r--net-im/corebird/Manifest1
-rw-r--r--net-im/corebird/corebird-1.7.4-r1.ebuild59
-rw-r--r--net-im/corebird/metadata.xml11
-rw-r--r--net-im/coturn/Manifest3
-rw-r--r--net-im/coturn/coturn-4.5.2-r1.ebuild (renamed from net-im/coturn/coturn-4.5.1.1.ebuild)40
-rw-r--r--net-im/coturn/coturn-4.6.0.ebuild98
-rw-r--r--net-im/coturn/coturn-9999.ebuild65
-rw-r--r--net-im/coturn/files/coturn-4.5.2-respect-TMPDIR.patch24
-rw-r--r--net-im/coturn/files/coturn-4.6.0-openssl3.patch356
-rw-r--r--net-im/coturn/metadata.xml7
-rw-r--r--net-im/cpop/cpop-0.0.4-r2.ebuild (renamed from net-im/cpop/cpop-0.0.4-r1.ebuild)24
-rw-r--r--net-im/cpop/files/cpop-0.0.4-implicit-exit_memset_strlen.patch12
-rw-r--r--net-im/cpop/files/cpop-0.0.4-implicit-func-decls.patch19
-rw-r--r--net-im/cpop/metadata.xml2
-rw-r--r--net-im/dianara/metadata.xml11
-rw-r--r--net-im/dino/Manifest3
-rw-r--r--net-im/dino/dino-0.1.0.ebuild87
-rw-r--r--net-im/dino/dino-0.4.2-r2.ebuild99
-rw-r--r--net-im/dino/dino-0.4.3-r1.ebuild103
-rw-r--r--net-im/dino/dino-0.4.3.ebuild99
-rw-r--r--net-im/dino/dino-9999.ebuild78
-rw-r--r--net-im/dino/files/README.gentoo23
-rw-r--r--net-im/dino/files/dino-0.4.3-c99.patch57
-rw-r--r--net-im/dino/metadata.xml9
-rw-r--r--net-im/discord-bin/Manifest1
-rw-r--r--net-im/discord-bin/discord-bin-0.0.10.ebuild92
-rw-r--r--net-im/discord-bin/metadata.xml8
-rw-r--r--net-im/discord/Manifest1
-rw-r--r--net-im/discord/discord-0.0.52.ebuild135
-rw-r--r--net-im/discord/metadata.xml16
-rw-r--r--net-im/ejabberd/Manifest11
-rw-r--r--net-im/ejabberd/ejabberd-17.04-r2.ebuild331
-rw-r--r--net-im/ejabberd/ejabberd-20.03.ebuild292
-rw-r--r--net-im/ejabberd/ejabberd-20.04.ebuild292
-rw-r--r--net-im/ejabberd/ejabberd-23.01.ebuild219
-rw-r--r--net-im/ejabberd/ejabberd-23.04.ebuild216
-rw-r--r--net-im/ejabberd/ejabberd-23.10-r1.ebuild223
-rw-r--r--net-im/ejabberd/ejabberd-24.02-r1.ebuild221
-rw-r--r--net-im/ejabberd/files/adjust-ejabberd.service.template-to-Gentoo.patch39
-rw-r--r--net-im/ejabberd/files/ejabberd-17.04-0001-Don-t-configure-or-compile-deps.patch53
-rw-r--r--net-im/ejabberd/files/ejabberd-17.04-0002-Dont-overwrite-service-file.patch15
-rw-r--r--net-im/ejabberd/files/ejabberd-17.04-ejabberdctl.patch62
-rw-r--r--net-im/ejabberd/files/ejabberd-19.08-ejabberdctl.patch38
-rw-r--r--net-im/ejabberd/files/ejabberd-22.05.initd (renamed from net-im/ejabberd/files/ejabberd.initd)4
-rw-r--r--net-im/ejabberd/files/ejabberd-22.05.logrotate (renamed from net-im/ejabberd/files/ejabberd.logrotate)4
-rw-r--r--net-im/ejabberd/files/ejabberd-22.10-adjust-ejabberd.service.template-to-Gentoo.patch16
-rw-r--r--net-im/ejabberd/files/ejabberd.tmpfiles.conf2
-rw-r--r--net-im/ejabberd/metadata.xml7
-rw-r--r--net-im/ekg2/Manifest1
-rw-r--r--net-im/ekg2/ekg2-0.4_pre20190315.ebuild110
-rw-r--r--net-im/ekg2/ekg2-9999.ebuild107
-rw-r--r--net-im/ekg2/metadata.xml19
-rw-r--r--net-im/element-desktop-bin/Manifest1
-rw-r--r--net-im/element-desktop-bin/element-desktop-bin-1.11.54.ebuild83
-rw-r--r--net-im/element-desktop-bin/metadata.xml8
-rw-r--r--net-im/empathy/Manifest1
-rw-r--r--net-im/empathy/empathy-3.12.14.ebuild116
-rw-r--r--net-im/empathy/metadata.xml23
-rw-r--r--net-im/err/Manifest2
-rw-r--r--net-im/err/err-6.1.9.ebuild (renamed from net-im/err/err-5.2.0-r1.ebuild)74
-rw-r--r--net-im/err/metadata.xml19
-rw-r--r--net-im/fractal/Manifest9
-rw-r--r--net-im/fractal/fractal-6.ebuild95
-rw-r--r--net-im/fractal/fractal-7_rc.ebuild115
-rw-r--r--net-im/fractal/metadata.xml11
-rw-r--r--net-im/gajim/Manifest5
-rw-r--r--net-im/gajim/gajim-1.1.3-r1.ebuild88
-rw-r--r--net-im/gajim/gajim-1.7.3-r1.ebuild102
-rw-r--r--net-im/gajim/gajim-1.7.3.ebuild (renamed from net-im/gajim/gajim-1.1.3-r2.ebuild)45
-rw-r--r--net-im/gajim/gajim-1.8.0.ebuild105
-rw-r--r--net-im/gajim/gajim-1.8.1.ebuild105
-rw-r--r--net-im/gajim/gajim-1.8.4.ebuild105
-rw-r--r--net-im/gajim/metadata.xml11
-rw-r--r--net-im/gg-transport/Manifest1
-rw-r--r--net-im/gg-transport/files/jggtrans-2.2.419
-rw-r--r--net-im/gg-transport/gg-transport-2.2.6.ebuild50
-rw-r--r--net-im/gg-transport/metadata.xml12
-rw-r--r--net-im/gitter-bin/Manifest4
-rw-r--r--net-im/gitter-bin/gitter-bin-3.1.0.ebuild88
-rw-r--r--net-im/gitter-bin/gitter-bin-4.1.0-r1.ebuild (renamed from net-im/gitter-bin/gitter-bin-4.1.0.ebuild)30
-rw-r--r--net-im/gitter-bin/gitter-bin-5.0.1-r1.ebuild105
-rw-r--r--net-im/gitter-bin/gitter-bin-5.0.1.ebuild103
-rw-r--r--net-im/gitter-bin/metadata.xml9
-rw-r--r--net-im/jabber-base/jabber-base-0.01-r1.ebuild51
-rw-r--r--net-im/jabber-base/metadata.xml11
-rw-r--r--net-im/kadu/Manifest1
-rw-r--r--net-im/kadu/files/kadu-4.3-do-not-force-ccache.patch17
-rw-r--r--net-im/kadu/files/kadu-4.3-find-x11-with-newer-cmake-modules.patch48
-rw-r--r--net-im/kadu/files/kadu-4.3-fix-plugins-rpath.patch12
-rw-r--r--net-im/kadu/files/kadu-4.3-gcc7.patch10
-rw-r--r--net-im/kadu/kadu-4.3-r2.ebuild148
-rw-r--r--net-im/kadu/metadata.xml15
-rw-r--r--net-im/kouchat/Manifest2
-rw-r--r--net-im/kouchat/kouchat-1.1.0.ebuild29
-rw-r--r--net-im/kouchat/metadata.xml11
-rw-r--r--net-im/libcommuni/Manifest2
-rw-r--r--net-im/libcommuni/libcommuni-3.7.0.ebuild (renamed from net-im/libcommuni/libcommuni-3.5.0_p20190110-r1.ebuild)21
-rw-r--r--net-im/libcommuni/metadata.xml5
-rw-r--r--net-im/librvp/librvp-0.9.7.ebuild17
-rw-r--r--net-im/librvp/metadata.xml2
-rw-r--r--net-im/mattermost-desktop-bin/Manifest7
-rw-r--r--net-im/mattermost-desktop-bin/mattermost-desktop-bin-4.4.0.ebuild93
-rw-r--r--net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.7.0.ebuild95
-rw-r--r--net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.8.0_rc2.ebuild95
-rw-r--r--net-im/mattermost-desktop-bin/metadata.xml7
-rw-r--r--net-im/mcabber/Manifest2
-rw-r--r--net-im/mcabber/files/README.gentoo17
-rw-r--r--net-im/mcabber/mcabber-1.1.0-r1.ebuild99
-rw-r--r--net-im/mcabber/mcabber-1.1.0-r2.ebuild107
-rw-r--r--net-im/mcabber/mcabber-9999.ebuild99
-rw-r--r--net-im/mcabber/metadata.xml21
-rw-r--r--net-im/metadata.xml3
-rw-r--r--net-im/minbif/Manifest1
-rw-r--r--net-im/minbif/files/minbif-1.0.5-gcc47.patch76
-rw-r--r--net-im/minbif/files/minbif-1.0.5-glib-single-includes.patch26
-rw-r--r--net-im/minbif/files/minbif-1.0.5-rename-imlib-load-error.patch13
-rw-r--r--net-im/minbif/files/minbif.initd23
-rw-r--r--net-im/minbif/metadata.xml5
-rw-r--r--net-im/minbif/minbif-1.0.5-r2.ebuild91
-rw-r--r--net-im/neochat/Manifest2
-rw-r--r--net-im/neochat/metadata.xml11
-rw-r--r--net-im/neochat/neochat-23.08.5.ebuild54
-rw-r--r--net-im/neochat/neochat-24.02.2.ebuild56
-rw-r--r--net-im/openmittsu/Manifest3
-rw-r--r--net-im/openmittsu/files/openmittsu-0.10.0.0-musl.patch25
-rw-r--r--net-im/openmittsu/files/openmittsu-0.9.13.32-fix-tests.patch11
-rw-r--r--net-im/openmittsu/metadata.xml2
-rw-r--r--net-im/openmittsu/openmittsu-0.10.0.0.ebuild (renamed from net-im/openmittsu/openmittsu-0.9.15.0.ebuild)23
-rw-r--r--net-im/openmittsu/openmittsu-0.9.13.46.ebuild63
-rw-r--r--net-im/pidgin/Manifest6
-rw-r--r--net-im/pidgin/files/pidgin-2.10.0-gold.patch30
-rw-r--r--net-im/pidgin/files/pidgin-2.10.10-eds-3.6-configure.ac.patch23
-rw-r--r--net-im/pidgin/files/pidgin-2.10.11-tinfo.patch24
-rw-r--r--net-im/pidgin/files/pidgin-2.10.9-fix-gtkmedia.patch10
-rw-r--r--net-im/pidgin/files/pidgin-2.10.9-irc_join_sleep.patch11
-rw-r--r--net-im/pidgin/files/pidgin-2.13.0-disable-one-jid-test.patch24
-rw-r--r--net-im/pidgin/files/pidgin-2.13.0-fix-build-against-nm-1.0.patch54
-rw-r--r--net-im/pidgin/files/pidgin-2.13.0-gnutls_sni_support.patch33
-rw-r--r--net-im/pidgin/files/pidgin-2.13.0-metainfo.patch11
-rw-r--r--net-im/pidgin/files/pidgin-2.13.0-python3_support.patch37
-rw-r--r--net-im/pidgin/metadata.xml11
-rw-r--r--net-im/pidgin/pidgin-2.14.10-r1.ebuild (renamed from net-im/pidgin/pidgin-2.13.0-r8.ebuild)173
-rw-r--r--net-im/pidgin/pidgin-2.14.12.ebuild (renamed from net-im/pidgin/pidgin-2.13.0-r7.ebuild)227
-rw-r--r--net-im/pidgin/pidgin-2.14.13.ebuild297
-rw-r--r--net-im/poezio/Manifest2
-rw-r--r--net-im/poezio/files/Do-not-install-man-pages-and-files-in-usr-share-poez.patch22
-rw-r--r--net-im/poezio/metadata.xml7
-rw-r--r--net-im/poezio/poezio-0.12.ebuild51
-rw-r--r--net-im/poezio/poezio-0.14.ebuild77
-rw-r--r--net-im/poezio/poezio-9999.ebuild62
-rw-r--r--net-im/profanity/Manifest8
-rw-r--r--net-im/profanity/metadata.xml17
-rw-r--r--net-im/profanity/profanity-0.13.1.ebuild71
-rw-r--r--net-im/profanity/profanity-0.14.0-r1.ebuild96
-rw-r--r--net-im/profanity/profanity-0.14.0-r2.ebuild102
-rw-r--r--net-im/profanity/profanity-0.14.0.ebuild71
-rw-r--r--net-im/profanity/profanity-0.6.0.ebuild39
-rw-r--r--net-im/profanity/profanity-0.7.1.ebuild44
-rw-r--r--net-im/prosody-modules/Manifest1
-rw-r--r--net-im/prosody-modules/metadata.xml17
-rw-r--r--net-im/prosody-modules/prosody-modules-0_pre20230221.ebuild56
-rw-r--r--net-im/prosody-modules/prosody-modules-9999.ebuild56
-rw-r--r--net-im/prosody/Manifest2
-rw-r--r--net-im/prosody/files/prosody-0.12.0-gentoo.patch29
-rw-r--r--net-im/prosody/files/prosody-0.9.2-cfg.lua.patch52
-rw-r--r--net-im/prosody/files/prosody.initd-r246
-rw-r--r--net-im/prosody/files/prosody.initd-r646
-rw-r--r--net-im/prosody/files/prosody.service13
-rw-r--r--net-im/prosody/files/prosody.service-r317
-rw-r--r--net-im/prosody/files/prosody.tmpfilesd1
-rw-r--r--net-im/prosody/files/prosody.tmpfilesd-r21
-rw-r--r--net-im/prosody/files/prosody_cfg-0.11.2-r1.patch16
-rw-r--r--net-im/prosody/metadata.xml25
-rw-r--r--net-im/prosody/prosody-0.11.5.ebuild72
-rw-r--r--net-im/prosody/prosody-0.12.4.ebuild164
-rw-r--r--net-im/psi/Manifest4
-rw-r--r--net-im/psi/metadata.xml8
-rw-r--r--net-im/psi/psi-1.5-r2.ebuild (renamed from net-im/psi/psi-1.4.ebuild)37
-rw-r--r--net-im/psi/psi-9999.ebuild26
-rw-r--r--net-im/psimedia/metadata.xml6
-rw-r--r--net-im/psimedia/psimedia-9999.ebuild4
-rw-r--r--net-im/purple-events/metadata.xml2
-rw-r--r--net-im/purple-events/purple-events-0.99.1.ebuild20
-rw-r--r--net-im/qtox/Manifest2
-rw-r--r--net-im/qtox/files/qtox-1.16.3-qt-5.13.patch18
-rw-r--r--net-im/qtox/metadata.xml11
-rw-r--r--net-im/qtox/qtox-1.16.3-r1.ebuild76
-rw-r--r--net-im/qtox/qtox-1.17.6-r2.ebuild90
-rw-r--r--net-im/qtox/qtox-9999.ebuild66
-rw-r--r--net-im/ricochet/Manifest1
-rw-r--r--net-im/ricochet/metadata.xml12
-rw-r--r--net-im/ricochet/ricochet-1.1.4.ebuild56
-rw-r--r--net-im/ricochet/ricochet-9999.ebuild64
-rw-r--r--net-im/rocketchat-desktop-bin/Manifest2
-rw-r--r--net-im/rocketchat-desktop-bin/metadata.xml9
-rw-r--r--net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.8.16.ebuild105
-rw-r--r--net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.9.10.ebuild105
-rw-r--r--net-im/sendxmpp-amm/Manifest1
-rw-r--r--net-im/sendxmpp-amm/metadata.xml12
-rw-r--r--net-im/sendxmpp-amm/sendxmpp-amm-1.1.1-r1.ebuild42
-rw-r--r--net-im/sendxmpp-amm/sendxmpp-amm-9999.ebuild42
-rw-r--r--net-im/sendxmpp/metadata.xml2
-rw-r--r--net-im/sendxmpp/sendxmpp-1.24.ebuild7
-rw-r--r--net-im/signal-cli-bin/Manifest6
-rw-r--r--net-im/signal-cli-bin/files/signal-cli-bin-0.13.1-use-working-java-version.patch33
-rw-r--r--net-im/signal-cli-bin/metadata.xml22
-rw-r--r--net-im/signal-cli-bin/signal-cli-bin-0.13.1-r1.ebuild57
-rw-r--r--net-im/signal-cli-bin/signal-cli-bin-0.13.2-r1.ebuild57
-rw-r--r--net-im/signal-desktop-bin/Manifest2
-rw-r--r--net-im/signal-desktop-bin/metadata.xml9
-rw-r--r--net-im/signal-desktop-bin/signal-desktop-bin-1.34.0.ebuild82
-rw-r--r--net-im/signal-desktop-bin/signal-desktop-bin-7.6.0.ebuild96
-rw-r--r--net-im/skype-dbus-mock/Manifest1
-rw-r--r--net-im/skype-dbus-mock/metadata.xml12
-rw-r--r--net-im/skype-dbus-mock/skype-dbus-mock-0_pre20181011.ebuild40
-rw-r--r--net-im/skypeforlinux/Manifest3
-rw-r--r--net-im/skypeforlinux/metadata.xml7
-rw-r--r--net-im/skypeforlinux/skypeforlinux-8.108.0.205.ebuild (renamed from net-im/skypeforlinux/skypeforlinux-8.59.0.77.ebuild)21
-rw-r--r--net-im/skypeforlinux/skypeforlinux-8.110.76.107.ebuild103
-rw-r--r--net-im/slack/Manifest4
-rw-r--r--net-im/slack/metadata.xml12
-rw-r--r--net-im/slack/slack-4.37.101.ebuild (renamed from net-im/slack/slack-4.3.2-r2.ebuild)80
-rw-r--r--net-im/slack/slack-4.38.115.ebuild (renamed from net-im/slack/slack-4.4.2.ebuild)96
-rw-r--r--net-im/spectrum2/Manifest2
-rw-r--r--net-im/spectrum2/files/spectrum2-2.0.12-boost-173-compatibility.patch21
-rw-r--r--net-im/spectrum2/files/spectrum2-2.0.12-gcc-10-compatibility.patch54
-rw-r--r--net-im/spectrum2/files/spectrum2.initd4
-rw-r--r--net-im/spectrum2/metadata.xml9
-rw-r--r--net-im/spectrum2/spectrum2-2.2.1.ebuild (renamed from net-im/spectrum2/spectrum2-2.0.12-r2.ebuild)80
-rw-r--r--net-im/swift/Manifest3
-rw-r--r--net-im/swift/files/swift-4.0.2-make-generated-files-handle-unicode-characters.patch38
-rw-r--r--net-im/swift/files/swift-4.0.2-qt-5.11-compatibility.patch35
-rw-r--r--net-im/swift/files/swift-4.0.2-qt-5.15-compatibility.patch10
-rw-r--r--net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch13
-rw-r--r--net-im/swift/files/swift-4.0.3-libxml2-2.12-compatibility.patch11
-rw-r--r--net-im/swift/files/swift-4.0.3-reproducible-build.patch21
-rw-r--r--net-im/swift/metadata.xml10
-rw-r--r--net-im/swift/swift-4.0.3-r2.ebuild (renamed from net-im/swift/swift-4.0.2-r1.ebuild)113
-rw-r--r--net-im/synapse/Manifest88
-rw-r--r--net-im/synapse/files/synapse.initd-r110
-rw-r--r--net-im/synapse/files/synapse.service22
-rw-r--r--net-im/synapse/metadata.xml12
-rw-r--r--net-im/synapse/synapse-1.105.1.ebuild211
-rw-r--r--net-im/synapse/synapse-1.106.0.ebuild237
-rw-r--r--net-im/teams/Manifest2
-rw-r--r--net-im/teams/metadata.xml8
-rw-r--r--net-im/teams/teams-1.3.00.5153.ebuild96
-rw-r--r--net-im/teams/teams-1.3.00.958.ebuild66
-rw-r--r--net-im/telegram-desktop-bin/Manifest12
-rw-r--r--net-im/telegram-desktop-bin/files/telegram-desktop-bin9
-rw-r--r--net-im/telegram-desktop-bin/metadata.xml11
-rw-r--r--net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.1.ebuild51
-rw-r--r--net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.3.ebuild51
-rw-r--r--net-im/telegram-desktop-bin/telegram-desktop-bin-4.15.2.ebuild64
-rw-r--r--net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.6.ebuild64
-rw-r--r--net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.8.ebuild64
-rw-r--r--net-im/telegram-desktop/Manifest11
-rw-r--r--net-im/telegram-desktop/files/2.1.0-kde-dir.patch51
-rw-r--r--net-im/telegram-desktop/files/tdesktop-4.10.0-system-cppgir.patch32
-rw-r--r--net-im/telegram-desktop/files/tdesktop-4.10.5-qt_compare.patch12
-rw-r--r--net-im/telegram-desktop/files/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch43
-rw-r--r--net-im/telegram-desktop/metadata.xml31
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.0.1-r1.ebuild134
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.0.ebuild136
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.1.ebuild145
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.2.ebuild145
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.3.ebuild145
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.4.ebuild145
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.6.ebuild145
-rw-r--r--net-im/telegram-desktop/telegram-desktop-4.15.0-r2.ebuild237
-rw-r--r--net-im/telegram-desktop/telegram-desktop-4.15.2-r1.ebuild237
-rw-r--r--net-im/telegram-desktop/telegram-desktop-4.16.6.ebuild246
-rw-r--r--net-im/telegram-desktop/telegram-desktop-4.16.8.ebuild246
-rw-r--r--net-im/telepathy-connection-managers/metadata.xml7
-rw-r--r--net-im/telepathy-connection-managers/telepathy-connection-managers-2-r2.ebuild10
-rw-r--r--net-im/telepathy-logger/Manifest1
-rw-r--r--net-im/telepathy-logger/metadata.xml13
-rw-r--r--net-im/telepathy-logger/telepathy-logger-0.8.2-r1.ebuild (renamed from net-im/telepathy-logger/telepathy-logger-0.8.2.ebuild)21
-rw-r--r--net-im/telepathy-mission-control/Manifest3
-rw-r--r--net-im/telepathy-mission-control/files/5.16.5-account-fix-property-name.patch25
-rw-r--r--net-im/telepathy-mission-control/metadata.xml25
-rw-r--r--net-im/telepathy-mission-control/telepathy-mission-control-5.16.5.ebuild48
-rw-r--r--net-im/telepathy-mission-control/telepathy-mission-control-5.16.6.ebuild (renamed from net-im/telepathy-mission-control/telepathy-mission-control-5.16.4.ebuild)25
-rw-r--r--net-im/tkabber/metadata.xml4
-rw-r--r--net-im/tokodon/Manifest2
-rw-r--r--net-im/tokodon/metadata.xml12
-rw-r--r--net-im/tokodon/tokodon-23.08.5.ebuild44
-rw-r--r--net-im/tokodon/tokodon-24.02.2.ebuild45
-rw-r--r--net-im/toxic/Manifest5
-rw-r--r--net-im/toxic/files/toxic-0.11.1-NAME_MAX-and-PATH_MAX.patch48
-rw-r--r--net-im/toxic/files/toxic-0.11.3-NAME_MAX-and-PATH_MAX.patch39
-rw-r--r--net-im/toxic/metadata.xml9
-rw-r--r--net-im/toxic/toxic-0.11.1-r1.ebuild117
-rw-r--r--net-im/toxic/toxic-0.11.3-r1.ebuild117
-rw-r--r--net-im/toxic/toxic-0.8.2.ebuild99
-rw-r--r--net-im/toxic/toxic-0.8.3.ebuild84
-rw-r--r--net-im/transwhat/metadata.xml2
-rw-r--r--net-im/transwhat/transwhat-0.2.2_p20190426-r3.ebuild (renamed from net-im/transwhat/transwhat-0.2.2_p20190426.ebuild)15
-rw-r--r--net-im/vacuum/Manifest1
-rw-r--r--net-im/vacuum/metadata.xml63
-rw-r--r--net-im/vacuum/vacuum-1.3.0_pre20180105.ebuild104
-rw-r--r--net-im/vacuum/vacuum-9999.ebuild97
-rw-r--r--net-im/whatsapp-desktop-bin/Manifest2
-rw-r--r--net-im/whatsapp-desktop-bin/metadata.xml12
-rw-r--r--net-im/whatsapp-desktop-bin/whatsapp-desktop-bin-0.5.2-r3.ebuild112
-rw-r--r--net-im/whatsie/Manifest1
-rw-r--r--net-im/whatsie/metadata.xml11
-rw-r--r--net-im/whatsie/whatsie-4.14.2.ebuild39
-rw-r--r--net-im/yowsup/Manifest2
-rw-r--r--net-im/yowsup/metadata.xml2
-rw-r--r--net-im/yowsup/yowsup-3.2.3_p20190905.ebuild50
-rw-r--r--net-im/yowsup/yowsup-3.3.0.ebuild43
-rw-r--r--net-im/ysm/files/ysm-2.9.9.1-dont-strip-binary.patch17
-rw-r--r--net-im/ysm/files/ysm-2.9.9.1-fix-bashism.patch17
-rw-r--r--net-im/ysm/files/ysm-2.9.9.1-fix-configure.patch163
-rw-r--r--net-im/ysm/metadata.xml2
-rw-r--r--net-im/ysm/ysm-2.9.9.1-r1.ebuild25
-rw-r--r--net-im/ysm/ysm-2.9.9.1-r2.ebuild46
-rw-r--r--net-im/zoom/Manifest6
-rw-r--r--net-im/zoom/files/README.gentoo5
-rw-r--r--net-im/zoom/files/zoom-videocam.svg4
-rw-r--r--net-im/zoom/files/zoom-videocam.xpm32
-rw-r--r--net-im/zoom/metadata.xml10
-rw-r--r--net-im/zoom/zoom-5.0.403652.0509.ebuild106
-rw-r--r--net-im/zoom/zoom-5.0.408598.0517.ebuild106
-rw-r--r--net-im/zoom/zoom-5.17.11.3835.ebuild181
-rw-r--r--net-im/zoom/zoom-6.0.2.4680.ebuild181
356 files changed, 10383 insertions, 7753 deletions
diff --git a/net-im/biboumi/Manifest b/net-im/biboumi/Manifest
new file mode 100644
index 000000000000..aebf9822cad1
--- /dev/null
+++ b/net-im/biboumi/Manifest
@@ -0,0 +1,2 @@
+DIST biboumi-9.0-fix-missing-include.patch 663 BLAKE2B b81558e1b85bb7612e68e4e4723234e1fe51fd23a3941c59865ad94e922e095ddccc7a62d04ca73295fd0845a854010e98ac2aa6c67a63980b3e7ceb3a917375 SHA512 923f3333ae5bbaeccd0690a063e20206a18f1b7a65d829c6a04df52e7c2cc3549d0da592f0021538f080a119cb80390f8fc517d0d4c15d96fc76a1fb5fc32f84
+DIST biboumi-9.0.tar.xz 161192 BLAKE2B 27c19f5c44e23caae07bd579b01d663e73cd8b432203ac95ae77e651936eea7cc443f389e589acebe5b36c32e96f215fdf0a86c97193726d601b53b709a2d66e SHA512 cfaacd831b56031906922472275c55fd6f1a5307ebe54959d21e3799ad4612499e8beeb34e8736df9eabc9fec1a861d17567250d64f316ace47395fd6c8f3c18
diff --git a/net-im/biboumi/biboumi-9.0-r4.ebuild b/net-im/biboumi/biboumi-9.0-r4.ebuild
new file mode 100644
index 000000000000..0383c5bd9893
--- /dev/null
+++ b/net-im/biboumi/biboumi-9.0-r4.ebuild
@@ -0,0 +1,129 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_PV="${PV/_/-}"
+
+DESCRIPTION="XMPP gateway to IRC"
+HOMEPAGE="https://biboumi.louiz.org/"
+SRC_URI="
+ https://git.louiz.org/biboumi/snapshot/biboumi-${MY_PV}.tar.xz
+ https://lab.louiz.org/flow/biboumi/-/commit/f9d58a44871931ef9b60354fade6f8d7b24cc668.patch ->
+ ${PN}-9.0-fix-missing-include.patch
+"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="amd64"
+IUSE="+idn postgres +sqlite +ssl systemd test udns"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dev-libs/expat
+ virtual/libiconv
+ sys-apps/util-linux
+ sqlite? ( dev-db/sqlite:3 )
+ postgres? ( dev-db/postgresql:* )
+ idn? ( net-dns/libidn:= )
+ udns? ( net-libs/udns )
+ ssl? ( dev-libs/botan:2= )
+ !ssl? ( dev-libs/libgcrypt )
+ systemd? ( sys-apps/systemd:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ test? ( <dev-cpp/catch-3:0 )
+"
+BDEPEND="dev-python/sphinx"
+RDEPEND="
+ ${COMMON_DEPEND}
+ acct-user/biboumi
+"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+DOCS=( README.rst CHANGELOG.rst doc/user.rst )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-9.0-do-not-use-as-a-namespace-separator-with-expat.patch"
+ "${FILESDIR}/${PN}-9.0-use-system-catch2.patch"
+ "${DISTDIR}/${PN}-9.0-fix-missing-include.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DSERVICE_USER="${PN}"
+ -DSERVICE_GROUP="${PN}"
+ )
+
+ # Account for biboumi's atypical configuration system.
+ if use systemd; then
+ mycmakeargs+=(-DWITH_SYSTEMD=yes)
+ else
+ mycmakeargs+=(-DWITHOUT_SYSTEMD=yes)
+ fi
+
+ if use idn; then
+ mycmakeargs+=(-DWITH_LIBIDN=yes)
+ else
+ mycmakeargs+=(-DWITHOUT_LIBIDN=yes)
+ fi
+
+ if use ssl; then
+ mycmakeargs+=(-DWITH_BOTAN=yes)
+ else
+ mycmakeargs+=(-DWITHOUT_BOTAN=yes)
+ fi
+
+ if use udns; then
+ mycmakeargs+=(-DWITH_UDNS=yes)
+ else
+ mycmakeargs+=(-DWITHOUT_UDNS=yes)
+ fi
+
+ if use sqlite; then
+ mycmakeargs+=(-DWITH_SQLITE3=yes)
+ else
+ mycmakeargs+=(-DWITHOUT_SQLITE3=yes)
+ fi
+
+ if use postgres; then
+ mycmakeargs+=(-DWITH_POSTGRESQL=yes)
+ else
+ mycmakeargs+=(-DWITHOUT_POSTGRESQL=yes)
+ fi
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ cmake_build man
+}
+
+src_test() {
+ cmake_build check
+}
+
+src_install() {
+ cmake_src_install
+
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotate" "${PN}"
+
+ diropts --owner=biboumi --group=biboumi --mode=750
+ if use sqlite; then
+ keepdir /var/lib/biboumi
+ fi
+ keepdir /var/log/biboumi
+
+ insinto /etc/biboumi
+ insopts --group=biboumi --mode=640
+ newins conf/biboumi.cfg biboumi.cfg.example
+}
diff --git a/net-im/biboumi/files/biboumi-9.0-do-not-use-as-a-namespace-separator-with-expat.patch b/net-im/biboumi/files/biboumi-9.0-do-not-use-as-a-namespace-separator-with-expat.patch
new file mode 100644
index 000000000000..f82cbae81928
--- /dev/null
+++ b/net-im/biboumi/files/biboumi-9.0-do-not-use-as-a-namespace-separator-with-expat.patch
@@ -0,0 +1,301 @@
+From 0061298dd0945f7f67e7fa340c6649b179c804d5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?louiz=E2=80=99?= <louiz@louiz.org>
+Date: Thu, 10 Mar 2022 23:23:47 +0100
+Subject: [PATCH] Do not use ':' as a namespace separator with expat
+
+Instead use \1, and build our own nodes by explicitely separating the
+namespace and the node name.
+---
+ src/xmpp/adhoc_command.cpp | 6 +++---
+ src/xmpp/adhoc_commands_handler.cpp | 12 ++++++------
+ src/xmpp/biboumi_adhoc_commands.cpp | 28 ++++++++++++++--------------
+ src/xmpp/xmpp_component.cpp | 2 +-
+ src/xmpp/xmpp_parser.cpp | 2 +-
+ src/xmpp/xmpp_parser.hpp | 4 ++--
+ src/xmpp/xmpp_stanza.cpp | 14 +++++++++++++-
+ src/xmpp/xmpp_stanza.hpp | 6 ++++++
+ tests/xmpp.cpp | 2 ++
+ 9 files changed, 48 insertions(+), 28 deletions(-)
+
+diff --git a/src/xmpp/adhoc_command.cpp b/src/xmpp/adhoc_command.cpp
+index fbf4ce200b82..f8c8e4f146d6 100644
+--- a/src/xmpp/adhoc_command.cpp
++++ b/src/xmpp/adhoc_command.cpp
+@@ -26,7 +26,7 @@ void PingStep1(XmppComponent&, AdhocSession&, XmlNode& command_node)
+
+ void HelloStep1(XmppComponent&, AdhocSession&, XmlNode& command_node)
+ {
+- XmlSubNode x(command_node, "jabber:x:data:x");
++ XmlSubNode x(command_node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Configure your name.");
+@@ -65,9 +65,9 @@ void HelloStep2(XmppComponent&, AdhocSession& session, XmlNode& command_node)
+ }
+ }
+ command_node.delete_all_children();
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "modify";
+- XmlSubNode condition(error, STANZA_NS":bad-request");
++ XmlSubNode condition(error, STANZA_NS, "bad-request");
+ session.terminate();
+ }
+
+diff --git a/src/xmpp/adhoc_commands_handler.cpp b/src/xmpp/adhoc_commands_handler.cpp
+index ff4c1e5506fb..7a84b2e11a45 100644
+--- a/src/xmpp/adhoc_commands_handler.cpp
++++ b/src/xmpp/adhoc_commands_handler.cpp
+@@ -36,16 +36,16 @@ XmlNode AdhocCommandsHandler::handle_request(const std::string& executor_jid, co
+ auto command_it = this->commands.find(node);
+ if (command_it == this->commands.end())
+ {
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "cancel";
+- XmlSubNode condition(error, STANZA_NS":item-not-found");
++ XmlSubNode condition(error, STANZA_NS, "item-not-found");
+ }
+ else if (command_it->second.is_admin_only() &&
+ !Config::is_in_list("admin", jid.bare()))
+ {
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "cancel";
+- XmlSubNode condition(error, STANZA_NS":forbidden");
++ XmlSubNode condition(error, STANZA_NS, "forbidden");
+ }
+ else
+ {
+@@ -94,9 +94,9 @@ XmlNode AdhocCommandsHandler::handle_request(const std::string& executor_jid, co
+ }
+ else // unsupported action
+ {
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "modify";
+- XmlSubNode condition(error, STANZA_NS":bad-request");
++ XmlSubNode condition(error, STANZA_NS, "bad-request");
+ }
+ }
+ return command_node;
+diff --git a/src/xmpp/biboumi_adhoc_commands.cpp b/src/xmpp/biboumi_adhoc_commands.cpp
+index 792955c37ec7..aea316d64042 100644
+--- a/src/xmpp/biboumi_adhoc_commands.cpp
++++ b/src/xmpp/biboumi_adhoc_commands.cpp
+@@ -34,7 +34,7 @@ void DisconnectUserStep1(XmppComponent& xmpp_component, AdhocSession&, XmlNode&
+ {
+ auto& biboumi_component = dynamic_cast<BiboumiComponent&>(xmpp_component);
+
+- XmlSubNode x(command_node, "jabber:x:data:x");
++ XmlSubNode x(command_node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Disconnect a user from the gateway");
+@@ -108,9 +108,9 @@ void DisconnectUserStep2(XmppComponent& xmpp_component, AdhocSession& session, X
+ return;
+ }
+ }
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "modify";
+- XmlSubNode condition(error, STANZA_NS":bad-request");
++ XmlSubNode condition(error, STANZA_NS, "bad-request");
+ session.terminate();
+ }
+
+@@ -124,7 +124,7 @@ void ConfigureGlobalStep1(XmppComponent&, AdhocSession& session, XmlNode& comman
+ auto options = Database::get_global_options(owner.bare());
+
+ command_node.delete_all_children();
+- XmlSubNode x(command_node, "jabber:x:data:x");
++ XmlSubNode x(command_node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Configure some global default settings.");
+@@ -220,9 +220,9 @@ void ConfigureGlobalStep2(XmppComponent& xmpp_component, AdhocSession& session,
+ note.set_inner("Configuration successfully applied.");
+ return;
+ }
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "modify";
+- XmlSubNode condition(error, STANZA_NS":bad-request");
++ XmlSubNode condition(error, STANZA_NS, "bad-request");
+ session.terminate();
+ }
+
+@@ -238,7 +238,7 @@ void ConfigureIrcServerStep1(XmppComponent&, AdhocSession& session, XmlNode& com
+ auto commands = Database::get_after_connection_commands(options);
+
+ command_node.delete_all_children();
+- XmlSubNode x(command_node, "jabber:x:data:x");
++ XmlSubNode x(command_node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Configure the IRC server " + server_domain);
+@@ -565,9 +565,9 @@ void ConfigureIrcServerStep2(XmppComponent& xmpp_component, AdhocSession& sessio
+ note.set_inner("Configuration successfully applied.");
+ return;
+ }
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "modify";
+- XmlSubNode condition(error, STANZA_NS":bad-request");
++ XmlSubNode condition(error, STANZA_NS, "bad-request");
+ session.terminate();
+ }
+
+@@ -586,7 +586,7 @@ void insert_irc_channel_configuration_form(XmlNode& node, const Jid& requester,
+ auto options = Database::get_irc_channel_options_with_server_default(requester.local + "@" + requester.domain,
+ iid.get_server(), iid.get_local());
+ node.delete_all_children();
+- XmlSubNode x(node, "jabber:x:data:x");
++ XmlSubNode x(node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Configure the IRC channel " + iid.get_local() + " on server " + iid.get_server());
+@@ -671,9 +671,9 @@ void ConfigureIrcChannelStep2(XmppComponent& xmpp_component, AdhocSession& sessi
+ }
+ else
+ {
+- XmlSubNode error(command_node, ADHOC_NS":error");
++ XmlSubNode error(command_node, ADHOC_NS, "error");
+ error["type"] = "modify";
+- XmlSubNode condition(error, STANZA_NS":bad-request");
++ XmlSubNode condition(error, STANZA_NS, "bad-request");
+ session.terminate();
+ }
+ }
+@@ -749,7 +749,7 @@ void DisconnectUserFromServerStep1(XmppComponent& xmpp_component, AdhocSession&
+ { // Send a form to select the user to disconnect
+ auto& biboumi_component = dynamic_cast<BiboumiComponent&>(xmpp_component);
+
+- XmlSubNode x(command_node, "jabber:x:data:x");
++ XmlSubNode x(command_node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Disconnect a user from selected IRC servers");
+@@ -794,7 +794,7 @@ void DisconnectUserFromServerStep2(XmppComponent& xmpp_component, AdhocSession&
+ command_node.delete_all_children();
+ auto& biboumi_component = dynamic_cast<BiboumiComponent&>(xmpp_component);
+
+- XmlSubNode x(command_node, "jabber:x:data:x");
++ XmlSubNode x(command_node, "jabber:x:data", "x");
+ x["type"] = "form";
+ XmlSubNode title(x, "title");
+ title.set_inner("Disconnect a user from selected IRC servers");
+diff --git a/src/xmpp/xmpp_component.cpp b/src/xmpp/xmpp_component.cpp
+index de9a7a631be6..62a98ce3bb2c 100644
+--- a/src/xmpp/xmpp_component.cpp
++++ b/src/xmpp/xmpp_component.cpp
+@@ -175,7 +175,7 @@ void XmppComponent::on_stanza(const Stanza& stanza)
+
+ void XmppComponent::send_stream_error(const std::string& name, const std::string& explanation)
+ {
+- Stanza node("stream:error");
++ Stanza node("stream", "error");
+ {
+ XmlSubNode error(node, name);
+ error["xmlns"] = STREAM_NS;
+diff --git a/src/xmpp/xmpp_parser.cpp b/src/xmpp/xmpp_parser.cpp
+index 781fe4cd94b0..1f25fa6f982b 100644
+--- a/src/xmpp/xmpp_parser.cpp
++++ b/src/xmpp/xmpp_parser.cpp
+@@ -38,7 +38,7 @@ XmppParser::XmppParser():
+ void XmppParser::init_xml_parser()
+ {
+ // Create the expat parser
+- this->parser = XML_ParserCreateNS("UTF-8", ':');
++ this->parser = XML_ParserCreateNS("UTF-8", '\1');
+ XML_SetUserData(this->parser, static_cast<void*>(this));
+
+ // Install Expat handlers
+diff --git a/src/xmpp/xmpp_parser.hpp b/src/xmpp/xmpp_parser.hpp
+index ec42f9a326e1..1e5e4e55a875 100644
+--- a/src/xmpp/xmpp_parser.hpp
++++ b/src/xmpp/xmpp_parser.hpp
+@@ -18,9 +18,9 @@
+ * stanza is reasonnably short.
+ *
+ * The element names generated by expat contain the namespace of the
+- * element, a colon (':') and then the actual name of the element. To get
++ * element, a \1 separator and then the actual name of the element. To get
+ * an element "x" with a namespace of "http://jabber.org/protocol/muc", you
+- * just look for an XmlNode named "http://jabber.org/protocol/muc:x"
++ * just look for an XmlNode named "http://jabber.org/protocol/muc\1x"
+ *
+ * TODO: enforce the size-limit for the stanza (limit the number of childs
+ * it can contain). For example forbid the parser going further than level
+diff --git a/src/xmpp/xmpp_stanza.cpp b/src/xmpp/xmpp_stanza.cpp
+index 435f33313b09..0103dd71a357 100644
+--- a/src/xmpp/xmpp_stanza.cpp
++++ b/src/xmpp/xmpp_stanza.cpp
+@@ -52,7 +52,7 @@ XmlNode::XmlNode(const std::string& name, XmlNode* parent):
+ parent(parent)
+ {
+ // split the namespace and the name
+- auto n = name.rfind(':');
++ auto n = name.rfind('\1');
+ if (n == std::string::npos)
+ this->name = name;
+ else
+@@ -67,6 +67,18 @@ XmlNode::XmlNode(const std::string& name):
+ {
+ }
+
++XmlNode::XmlNode(const std::string& xmlns, const std::string& name, XmlNode* parent):
++ name(name),
++ parent(parent)
++{
++ this->attributes["xmlns"] = xmlns;
++}
++
++XmlNode::XmlNode(const std::string& xmlns, const std::string& name):
++ XmlNode(xmlns, name, nullptr)
++{
++}
++
+ void XmlNode::delete_all_children()
+ {
+ this->children.clear();
+diff --git a/src/xmpp/xmpp_stanza.hpp b/src/xmpp/xmpp_stanza.hpp
+index f4b394814e5b..a706337baca0 100644
+--- a/src/xmpp/xmpp_stanza.hpp
++++ b/src/xmpp/xmpp_stanza.hpp
+@@ -25,6 +25,8 @@ class XmlNode
+ public:
+ explicit XmlNode(const std::string& name, XmlNode* parent);
+ explicit XmlNode(const std::string& name);
++ explicit XmlNode(const std::string& xmlns, const std::string& name, XmlNode* parent);
++ explicit XmlNode(const std::string& xmlns, const std::string& name);
+ /**
+ * The copy constructor does not copy the parent attribute. The children
+ * nodes are all copied recursively.
+@@ -150,6 +152,10 @@ public:
+ XmlNode(name),
+ parent_to_add(parent_ref)
+ {}
++ XmlSubNode(XmlNode& parent_ref, const std::string& xmlns, const std::string& name):
++ XmlNode(xmlns, name),
++ parent_to_add(parent_ref)
++ {}
+
+ ~XmlSubNode()
+ {
+diff --git a/tests/xmpp.cpp b/tests/xmpp.cpp
+index 14c51daa460f..c49c2fda94ea 100644
+--- a/tests/xmpp.cpp
++++ b/tests/xmpp.cpp
+@@ -67,6 +67,8 @@ TEST_CASE("substanzas")
+ CHECK(!d.has_children());
+ }
+ CHECK(b.has_children());
++ XmlSubNode e(a, "namespace", "name");
++ CHECK(e.get_tag("xmlns") == "namespace");
+ }
+ CHECK(a.has_children());
+ }
+--
+2.34.1
+
diff --git a/net-im/biboumi/files/biboumi-9.0-use-system-catch2.patch b/net-im/biboumi/files/biboumi-9.0-use-system-catch2.patch
new file mode 100644
index 000000000000..edda7a37c50b
--- /dev/null
+++ b/net-im/biboumi/files/biboumi-9.0-use-system-catch2.patch
@@ -0,0 +1,229 @@
+From 414ab9e13fc9e9fa79f7f0a8e1b4a46cd3bd92fd Mon Sep 17 00:00:00 2001
+From: Florian Schmaus <flo@geekplace.eu>
+Date: Sun, 27 Feb 2022 11:06:42 +0100
+Subject: [PATCH] Use the system installation of catch2 if possible
+
+---
+ CMakeLists.txt | 41 ++++++++++++++++++++++++-----------------
+ tests/colors.cpp | 2 +-
+ tests/config.cpp | 2 +-
+ tests/database.cpp | 2 +-
+ tests/encoding.cpp | 2 +-
+ tests/iid.cpp | 2 +-
+ tests/io_tester.cpp | 2 +-
+ tests/irc.cpp | 2 +-
+ tests/jid.cpp | 2 +-
+ tests/logger.cpp | 2 +-
+ tests/network.cpp | 2 +-
+ tests/test.cpp | 2 +-
+ tests/timed_events.cpp | 2 +-
+ tests/utils.cpp | 2 +-
+ tests/uuid.cpp | 2 +-
+ tests/xmpp.cpp | 2 +-
+ 16 files changed, 39 insertions(+), 32 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f07b97feb57b..8175012fe070 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -288,24 +288,31 @@ foreach(file ${source_all})
+ endforeach()
+
+ #
+-## Add a rule to download the catch unit test framework
++## Catch unit test framework
+ #
+-include(ExternalProject)
+-ExternalProject_Add(catch
+- GIT_REPOSITORY "https://lab.louiz.org/louiz/Catch.git"
+- PREFIX "external"
+- UPDATE_COMMAND ""
+- CONFIGURE_COMMAND ""
+- BUILD_COMMAND ""
+- INSTALL_COMMAND ""
+- )
+-set_target_properties(catch PROPERTIES EXCLUDE_FROM_ALL TRUE)
+-ExternalProject_Get_Property(catch SOURCE_DIR)
+-if(NOT EXISTS ${CMAKE_SOURCE_DIR}/tests/catch.hpp)
+- target_include_directories(test_suite
+- PUBLIC "${SOURCE_DIR}/single_include/"
+- )
+- add_dependencies(test_suite catch)
++find_package(Catch2 2.2.1)
++if(Catch2_FOUND)
++ target_link_libraries(test_suite Catch2::Catch2)
++else()
++ # No system-wide installation of the catch unit test framework was
++ # found, download it.
++ include(ExternalProject)
++ ExternalProject_Add(catch
++ GIT_REPOSITORY "https://lab.louiz.org/louiz/Catch.git"
++ PREFIX "external"
++ UPDATE_COMMAND ""
++ CONFIGURE_COMMAND ""
++ BUILD_COMMAND ""
++ INSTALL_COMMAND ""
++ )
++ set_target_properties(catch PROPERTIES EXCLUDE_FROM_ALL TRUE)
++ ExternalProject_Get_Property(catch SOURCE_DIR)
++ if(NOT EXISTS ${CMAKE_SOURCE_DIR}/tests/catch.hpp)
++ target_include_directories(test_suite
++ PUBLIC "${SOURCE_DIR}/single_include/"
++ )
++ add_dependencies(test_suite catch)
++ endif()
+ endif()
+
+ #
+diff --git a/tests/colors.cpp b/tests/colors.cpp
+index bf529896dce7..a9761dfff648 100644
+--- a/tests/colors.cpp
++++ b/tests/colors.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <bridge/colors.hpp>
+ #include <xmpp/xmpp_stanza.hpp>
+diff --git a/tests/config.cpp b/tests/config.cpp
+index ec9844fbd5f6..76cfe92e3e51 100644
+--- a/tests/config.cpp
++++ b/tests/config.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+ #include "io_tester.hpp"
+
+ #include <iostream>
+diff --git a/tests/database.cpp b/tests/database.cpp
+index 070a46013997..bf6bc20324cb 100644
+--- a/tests/database.cpp
++++ b/tests/database.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <biboumi.h>
+
+diff --git a/tests/encoding.cpp b/tests/encoding.cpp
+index b5192ffbdb8d..8129abc9230e 100644
+--- a/tests/encoding.cpp
++++ b/tests/encoding.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <utils/encoding.hpp>
+
+diff --git a/tests/iid.cpp b/tests/iid.cpp
+index 63b2ba38ca55..7e61f35e348b 100644
+--- a/tests/iid.cpp
++++ b/tests/iid.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <irc/iid.hpp>
+ #include <irc/irc_user.hpp>
+diff --git a/tests/io_tester.cpp b/tests/io_tester.cpp
+index 19c97c91aff8..34f89fdac603 100644
+--- a/tests/io_tester.cpp
++++ b/tests/io_tester.cpp
+@@ -1,5 +1,5 @@
+ #include "io_tester.hpp"
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+ #include <iostream>
+
+ /**
+diff --git a/tests/irc.cpp b/tests/irc.cpp
+index 0f30f15e2fdf..cb53e3f226ff 100644
+--- a/tests/irc.cpp
++++ b/tests/irc.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <irc/irc_message.hpp>
+
+diff --git a/tests/jid.cpp b/tests/jid.cpp
+index 592d6f3d0b78..516f961fabbb 100644
+--- a/tests/jid.cpp
++++ b/tests/jid.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <xmpp/jid.hpp>
+ #include <biboumi.h>
+diff --git a/tests/logger.cpp b/tests/logger.cpp
+index 1e3392a4bd43..b4736da3648d 100644
+--- a/tests/logger.cpp
++++ b/tests/logger.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <logger/logger.hpp>
+ #include <config/config.hpp>
+diff --git a/tests/network.cpp b/tests/network.cpp
+index a52eb6acfef8..790190f8d0bf 100644
+--- a/tests/network.cpp
++++ b/tests/network.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+ #include <network/tls_policy.hpp>
+ #include <sstream>
+
+diff --git a/tests/test.cpp b/tests/test.cpp
+index 0c7c351f437f..62bf7476a189 100644
+--- a/tests/test.cpp
++++ b/tests/test.cpp
+@@ -1,2 +1,2 @@
+ #define CATCH_CONFIG_MAIN
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+diff --git a/tests/timed_events.cpp b/tests/timed_events.cpp
+index fece422e99d5..6eaf99b3e1b9 100644
+--- a/tests/timed_events.cpp
++++ b/tests/timed_events.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <utils/timed_events.hpp>
+
+diff --git a/tests/utils.cpp b/tests/utils.cpp
+index 6151733e7cf4..22b45cf3113b 100644
+--- a/tests/utils.cpp
++++ b/tests/utils.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <utils/tolower.hpp>
+ #include <utils/revstr.hpp>
+diff --git a/tests/uuid.cpp b/tests/uuid.cpp
+index 12c6c32adbeb..7720e3aaee30 100644
+--- a/tests/uuid.cpp
++++ b/tests/uuid.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <xmpp/xmpp_component.hpp>
+
+diff --git a/tests/xmpp.cpp b/tests/xmpp.cpp
+index 14c51daa460f..01508a63481d 100644
+--- a/tests/xmpp.cpp
++++ b/tests/xmpp.cpp
+@@ -1,4 +1,4 @@
+-#include "catch.hpp"
++#include "catch2/catch.hpp"
+
+ #include <xmpp/xmpp_parser.hpp>
+ #include <xmpp/auth.hpp>
+--
+2.34.1
+
diff --git a/net-im/biboumi/files/biboumi.initd b/net-im/biboumi/files/biboumi.initd
new file mode 100644
index 000000000000..665db9120c9c
--- /dev/null
+++ b/net-im/biboumi/files/biboumi.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="XMPP gateway to IRC"
+pidfile="/var/run/biboumi.pid"
+command="/usr/bin/biboumi"
+command_args="${BIBOUMI_CONFIG:-/etc/biboumi/biboumi.cfg}"
+command_user="${BIBOUMI_USER:-biboumi}"
+command_background="true"
+extra_commands="reload"
+
+depend() {
+ use jabber-server
+}
+
+reload() {
+ ebegin "Reloading configuration of Biboumi"
+ start-stop-daemon --pidfile ${pidfile} --signal USR1
+ eend $?
+}
diff --git a/net-im/biboumi/files/biboumi.logrotate b/net-im/biboumi/files/biboumi.logrotate
new file mode 100644
index 000000000000..19964cf60f3f
--- /dev/null
+++ b/net-im/biboumi/files/biboumi.logrotate
@@ -0,0 +1,10 @@
+/var/log/biboumi/*.log {
+ missingok
+ notifempty
+ sharedscripts
+ postrotate
+ for service in /etc/init.d/biboumi*; do
+ rc-service $(basename ${service}) reload > /dev/null
+ done
+ endscript
+}
diff --git a/net-im/biboumi/metadata.xml b/net-im/biboumi/metadata.xml
new file mode 100644
index 000000000000..1ba5005dccac
--- /dev/null
+++ b/net-im/biboumi/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Florian Schmaus</name>
+ <email>flow@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+ Biboumi is an XMPP gateway that connects to IRC servers and translates
+ between the two protocols. It can be used to access IRC channels using
+ any XMPP client as if these channels were XMPP MUCs.
+ </longdescription>
+ <upstream>
+ <remote-id type="codeberg">poezio/biboumi</remote-id>
+ <doc>https://doc.biboumi.louiz.org</doc>
+ <bugs-to>https://codeberg.org/poezio/biboumi/issues</bugs-to>
+ </upstream>
+ <use>
+ <flag name="udns">Asynchronously resolve domain names using
+ <pkg>net-libs/udns</pkg></flag>
+ </use>
+</pkgmetadata>
diff --git a/net-im/bitlbee-facebook/Manifest b/net-im/bitlbee-facebook/Manifest
index dc3c19b4b191..44f387fbfa4e 100644
--- a/net-im/bitlbee-facebook/Manifest
+++ b/net-im/bitlbee-facebook/Manifest
@@ -1 +1 @@
-DIST bitlbee-facebook-1.2.0.tar.gz 71718 BLAKE2B 967e2f4250e92c88a74e32b1ddda8d96327a6e190e4b17e416f20e27e7a07083ae8ff2e2006de6ab114a98d7f81deccf515aec9206a7f0a2470ae67f5c787662 SHA512 b815dcaceb9ee12a68cfe7401da503139ba92cb0396e8d52e5491fed04431d2c6e4cf667bcc6f457bc51b916c8dc1dc43dc277ff0a683a1c0d72a65e819fe5b4
+DIST bitlbee-facebook-1.2.2.tar.gz 71918 BLAKE2B 674cb8565f88faff695d5b14010036f6d3c65bcdab9a6fba84c5f0d775a59d02abfd863be5af4ddc7c3361a49c6345d0ef57bbd8b02202b7e24e62b31c2c6844 SHA512 534e7e704e7ddd296c810819171b9c4770747dde109a9bbdfb41fc05602b1d9ad9bfd2ec6c7a62ffb0c85ec61252b1597217cdee7ccffd191da897a7d40085cc
diff --git a/net-im/bitlbee-facebook/bitlbee-facebook-1.2.0.ebuild b/net-im/bitlbee-facebook/bitlbee-facebook-1.2.2.ebuild
index 79bb0580ebe6..f220232e1764 100644
--- a/net-im/bitlbee-facebook/bitlbee-facebook-1.2.0.ebuild
+++ b/net-im/bitlbee-facebook/bitlbee-facebook-1.2.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2017-2019 Gentoo Authors
+# Copyright 2017-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
diff --git a/net-im/bitlbee-facebook/metadata.xml b/net-im/bitlbee-facebook/metadata.xml
index 6aab9ecf858d..1edcb6c6986c 100644
--- a/net-im/bitlbee-facebook/metadata.xml
+++ b/net-im/bitlbee-facebook/metadata.xml
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>arkamar@atlas.cz</email>
+ <email>arkamar@gentoo.org</email>
<name>Petr Vaněk</name>
</maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <longdescription lang="en">
- The Facebook protocol plugin for bitlbee. This plugin uses the Facebook
- Mobile API.
- </longdescription>
<upstream>
<maintainer status="active">
<email>jgeboski@gmail.com</email>
diff --git a/net-im/bitlbee-steam/bitlbee-steam-1.4.2.ebuild b/net-im/bitlbee-steam/bitlbee-steam-1.4.2.ebuild
index c0ec7c0ca9c8..e49b0bf478ea 100644
--- a/net-im/bitlbee-steam/bitlbee-steam-1.4.2.ebuild
+++ b/net-im/bitlbee-steam/bitlbee-steam-1.4.2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit ltprune autotools
+inherit autotools
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/bitlbee/bitlbee-steam.git"
@@ -23,8 +23,8 @@ RDEPEND="
dev-libs/glib:2
dev-libs/libgcrypt:0=
>=net-im/bitlbee-3.4[plugins]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
default
@@ -33,5 +33,6 @@ src_prepare() {
src_install() {
default
- prune_libtool_files --modules
+
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/net-im/bitlbee-steam/bitlbee-steam-9999.ebuild b/net-im/bitlbee-steam/bitlbee-steam-9999.ebuild
index c0ec7c0ca9c8..e49b0bf478ea 100644
--- a/net-im/bitlbee-steam/bitlbee-steam-9999.ebuild
+++ b/net-im/bitlbee-steam/bitlbee-steam-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit ltprune autotools
+inherit autotools
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/bitlbee/bitlbee-steam.git"
@@ -23,8 +23,8 @@ RDEPEND="
dev-libs/glib:2
dev-libs/libgcrypt:0=
>=net-im/bitlbee-3.4[plugins]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
default
@@ -33,5 +33,6 @@ src_prepare() {
src_install() {
default
- prune_libtool_files --modules
+
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/net-im/bitlbee-steam/metadata.xml b/net-im/bitlbee-steam/metadata.xml
index af61b42a1bcb..5e02b3f0fed5 100644
--- a/net-im/bitlbee-steam/metadata.xml
+++ b/net-im/bitlbee-steam/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<longdescription lang="en">
diff --git a/net-im/bitlbee/Manifest b/net-im/bitlbee/Manifest
index 89d1716f8e66..062d56d7000d 100644
--- a/net-im/bitlbee/Manifest
+++ b/net-im/bitlbee/Manifest
@@ -1,2 +1 @@
-DIST bitlbee-3.5.1.tar.gz 680351 BLAKE2B 952a12975d4f95020a5b577603aea791fca754006dc96af3c500d3885b6f2c50cabe51ab698625acb717524a729ef03d18a29aa25bd4815bae2f18fa6298aeea SHA512 4eb3b0d3a92910c8dd789cd23338cc6296bf40212c5244fcb27a88ede10e86424ea59c78e719841863701a7fdd8c61819f2775f7b58833e287d9110e49d036f3
DIST bitlbee-3.6.tar.gz 534961 BLAKE2B 007681a384fcb2c0736b901dfdc213ba0829ca006ad3204aca1bc4520a3874760867df6165a9218a9deeabb13bc06f118c9e2f804a97e671a348734f6cb7e963 SHA512 ccbf0f23e228de2de147241f36f59744b2256cba958e2fabfba0cfa60935e55bbb7d7e20fffa54da9a345e55ffa9ca82cb62e9b99dc738ba35c6e268c6561a8d
diff --git a/net-im/bitlbee/bitlbee-3.5.1.ebuild b/net-im/bitlbee/bitlbee-3.5.1.ebuild
deleted file mode 100644
index 5bae1f674e26..000000000000
--- a/net-im/bitlbee/bitlbee-3.5.1.ebuild
+++ /dev/null
@@ -1,160 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit systemd toolchain-funcs
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/bitlbee/bitlbee.git"
- inherit git-r3
-else
- SRC_URI="https://get.bitlbee.org/src/${P}.tar.gz"
- KEYWORDS="amd64 ppc ~ppc64 x86"
-fi
-
-DESCRIPTION="irc to IM gateway that support multiple IM protocols"
-HOMEPAGE="https://www.bitlbee.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE_PROTOCOLS="msn oscar purple twitter +xmpp"
-IUSE="debug +gnutls ipv6 libevent libressl nss otr +plugins selinux test xinetd
- ${IUSE_PROTOCOLS}"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="
- || ( purple xmpp msn oscar )
- xmpp? ( !nss )
- test? ( plugins )
-"
-
-COMMON_DEPEND="
- acct-group/bitlbee
- acct-user/bitlbee
- >=dev-libs/glib-2.16
- purple? ( net-im/pidgin )
- libevent? ( dev-libs/libevent:= )
- otr? ( >=net-libs/libotr-4 )
- gnutls? ( net-libs/gnutls:= )
- !gnutls? (
- nss? ( dev-libs/nss )
- !nss? (
- libressl? ( dev-libs/libressl:= )
- !libressl? ( dev-libs/openssl:0= )
- )
- )
-"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- selinux? ( sec-policy/selinux-bitlbee )
- test? ( dev-libs/check )"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/logger
- xinetd? ( sys-apps/xinetd )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.5-systemd-user.patch
- "${FILESDIR}"/${PN}-3.5-verbose-build.patch
- "${FILESDIR}"/${PN}-3.5-libcheck.patch
- "${FILESDIR}"/${PN}-3.5-libevent.patch
-)
-
-src_configure() {
- local myconf
-
- # setup plugins, protocol, ipv6 and debug
- myconf+=( --jabber=$(usex xmpp 1 0) )
- for flag in debug ipv6 plugins ${IUSE_PROTOCOLS/+xmpp/} ; do
- myconf+=( --${flag}=$(usex ${flag} 1 0) )
- done
-
- # set otr
- if use otr && use plugins ; then
- myconf+=( --otr=plugin )
- else
- if use otr ; then
- ewarn "OTR support has been disabled automatically because it"
- ewarn "requires the plugins USE flag."
- fi
- myconf+=( --otr=0 )
- fi
-
- # setup ssl use flags
- if use gnutls ; then
- myconf+=( --ssl=gnutls )
- einfo "Using gnutls for SSL support"
- else
- ewarn "Only gnutls is officially supported by upstream."
- if use nss ; then
- myconf+=( --ssl=nss )
- einfo "Using nss for SSL support"
- else
- myconf+=( --ssl=openssl )
- einfo "Using openssl for SSL support"
- fi
- fi
-
- # set event handler
- if use libevent ; then
- myconf+=( --events=libevent )
- else
- myconf+=( --events=glib )
- fi
-
- # not autotools-based
- ./configure \
- --prefix=/usr \
- --datadir=/usr/share/bitlbee \
- --etcdir=/etc/bitlbee \
- --plugindir=/usr/$(get_libdir)/bitlbee \
- --pcdir=/usr/$(get_libdir)/pkgconfig \
- --systemdsystemunitdir=$(systemd_get_systemunitdir) \
- --doc=1 \
- --strip=0 \
- --verbose=1 \
- "${myconf[@]}" || die
-
- sed -i \
- -e "/^EFLAGS/s:=:&${LDFLAGS} :" \
- Makefile.settings || die
-}
-
-src_compile() {
- emake CC="$(tc-getCC)" LD="$(tc-getLD)"
-}
-
-src_install() {
- emake DESTDIR="${D}" install install-etc install-doc install-dev install-systemd
-
- keepdir /var/lib/bitlbee
- fperms 700 /var/lib/bitlbee
- fowners bitlbee:bitlbee /var/lib/bitlbee
-
- dodoc doc/{AUTHORS,CHANGES,CREDITS,FAQ,README}
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins doc/bitlbee.xinetd bitlbee
- fi
-
- newinitd "${FILESDIR}"/bitlbee.initd-r1 bitlbee
- newconfd "${FILESDIR}"/bitlbee.confd-r1 bitlbee
-
- exeinto /usr/share/bitlbee
- doexe utils/{convert_purple.py,bitlbee-ctl.pl}
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- einfo
- elog "The bitlbee init script will now attempt to stop all processes owned by the"
- elog "bitlbee user, including per-client forks."
- elog
- elog "Tell the init script not to touch anything besides the main bitlbee process"
- elog "by changing the BITLBEE_STOP_ALL variable in"
- elog " /etc/conf.d/bitlbee"
- einfo
- fi
-}
diff --git a/net-im/bitlbee/bitlbee-3.6-r1.ebuild b/net-im/bitlbee/bitlbee-3.6-r3.ebuild
index 28e2ef6bf5e2..5978987e6e22 100644
--- a/net-im/bitlbee/bitlbee-3.6-r1.ebuild
+++ b/net-im/bitlbee/bitlbee-3.6-r3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6..8} )
+PYTHON_COMPAT=( python3_{10..12} )
inherit python-any-r1 systemd toolchain-funcs
@@ -12,7 +12,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
else
SRC_URI="https://get.bitlbee.org/src/${P}.tar.gz"
- KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+ KEYWORDS="amd64 ~arm64 ppc ~ppc64 x86"
fi
DESCRIPTION="irc to IM gateway that support multiple IM protocols"
@@ -20,21 +20,22 @@ HOMEPAGE="https://www.bitlbee.org/"
LICENSE="GPL-2"
SLOT="0"
-IUSE_PROTOCOLS="msn oscar purple twitter +xmpp"
-IUSE="debug +gnutls ipv6 libevent libressl nss otr +plugins selinux test xinetd
+IUSE_PROTOCOLS="purple twitter +xmpp"
+IUSE="debug +gnutls ipv6 libevent nss otr +plugins selinux test xinetd
${IUSE_PROTOCOLS}"
RESTRICT="!test? ( test )"
REQUIRED_USE="
- || ( purple xmpp msn oscar )
- xmpp? ( !nss )
- test? ( plugins )
+ || ( purple xmpp )
+ purple? ( plugins )
+ test? ( xmpp )
"
COMMON_DEPEND="
acct-group/bitlbee
acct-user/bitlbee
dev-libs/glib:2
+ dev-libs/json-parser:=
purple? ( net-im/pidgin )
libevent? ( dev-libs/libevent:= )
otr? ( >=net-libs/libotr-4 )
@@ -42,8 +43,7 @@ COMMON_DEPEND="
!gnutls? (
nss? ( dev-libs/nss )
!nss? (
- libressl? ( dev-libs/libressl:= )
- !libressl? ( dev-libs/openssl:0= )
+ dev-libs/openssl:0=
)
)
"
@@ -61,9 +61,11 @@ BDEPEND="${PYTHON_DEPS}
"
PATCHES=(
- "${FILESDIR}"/${PN}-3.5-systemd-user.patch
- "${FILESDIR}"/${PN}-3.5-libcheck.patch
- "${FILESDIR}"/${PN}-3.5-libevent.patch
+ "${FILESDIR}/${PN}-3.5-systemd-user.patch"
+ "${FILESDIR}/${PN}-3.5-libcheck.patch"
+ "${FILESDIR}/${PN}-3.5-libevent.patch"
+ "${FILESDIR}/${P}-disabled-plugins-use.patch"
+ "${FILESDIR}/${P}-system-json-parser.patch"
)
src_configure() {
@@ -113,8 +115,10 @@ src_configure() {
--prefix=/usr \
--datadir=/usr/share/bitlbee \
--etcdir=/etc/bitlbee \
- --plugindir=/usr/$(get_libdir)/bitlbee \
+ --libdir=/usr/$(get_libdir) \
--pcdir=/usr/$(get_libdir)/pkgconfig \
+ --plugindir=/usr/$(get_libdir)/bitlbee \
+ --externaljsonparser=1 \
--systemdsystemunitdir=$(systemd_get_systemunitdir) \
--doc=1 \
--strip=0 \
diff --git a/net-im/bitlbee/bitlbee-9999.ebuild b/net-im/bitlbee/bitlbee-9999.ebuild
index b76660b5f28b..8fe3918c4465 100644
--- a/net-im/bitlbee/bitlbee-9999.ebuild
+++ b/net-im/bitlbee/bitlbee-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6..8} )
+PYTHON_COMPAT=( python3_{10..12} )
inherit python-any-r1 systemd toolchain-funcs
@@ -12,7 +12,7 @@ if [[ ${PV} == "9999" ]]; then
inherit git-r3
else
SRC_URI="https://get.bitlbee.org/src/${P}.tar.gz"
- KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+ KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
fi
DESCRIPTION="irc to IM gateway that support multiple IM protocols"
@@ -20,21 +20,22 @@ HOMEPAGE="https://www.bitlbee.org/"
LICENSE="GPL-2"
SLOT="0"
-IUSE_PROTOCOLS="msn oscar purple twitter +xmpp"
-IUSE="debug +gnutls ipv6 libevent libressl nss otr +plugins selinux test xinetd
+IUSE_PROTOCOLS="purple twitter +xmpp"
+IUSE="debug +gnutls ipv6 libevent nss otr +plugins selinux test xinetd
${IUSE_PROTOCOLS}"
RESTRICT="!test? ( test )"
REQUIRED_USE="
- || ( purple xmpp msn oscar )
- xmpp? ( !nss )
- test? ( plugins )
+ || ( purple xmpp )
+ purple? ( plugins )
+ test? ( xmpp )
"
COMMON_DEPEND="
acct-group/bitlbee
acct-user/bitlbee
dev-libs/glib:2
+ dev-libs/json-parser:=
purple? ( net-im/pidgin )
libevent? ( dev-libs/libevent:= )
otr? ( >=net-libs/libotr-4 )
@@ -42,8 +43,7 @@ COMMON_DEPEND="
!gnutls? (
nss? ( dev-libs/nss )
!nss? (
- libressl? ( dev-libs/libressl:= )
- !libressl? ( dev-libs/openssl:0= )
+ dev-libs/openssl:0=
)
)
"
@@ -61,7 +61,7 @@ BDEPEND="${PYTHON_DEPS}
"
PATCHES=(
- "${FILESDIR}"/${PN}-3.5-systemd-user.patch
+ "${FILESDIR}/${PN}-3.5-systemd-user.patch"
)
src_configure() {
@@ -111,8 +111,10 @@ src_configure() {
--prefix=/usr \
--datadir=/usr/share/bitlbee \
--etcdir=/etc/bitlbee \
- --plugindir=/usr/$(get_libdir)/bitlbee \
+ --libdir=/usr/$(get_libdir) \
--pcdir=/usr/$(get_libdir)/pkgconfig \
+ --plugindir=/usr/$(get_libdir)/bitlbee \
+ --external_json_parser=1 \
--systemdsystemunitdir=$(systemd_get_systemunitdir) \
--doc=1 \
--strip=0 \
diff --git a/net-im/bitlbee/files/bitlbee-3.5-verbose-build.patch b/net-im/bitlbee/files/bitlbee-3.5-verbose-build.patch
deleted file mode 100644
index 7501963cb5de..000000000000
--- a/net-im/bitlbee/files/bitlbee-3.5-verbose-build.patch
+++ /dev/null
@@ -1,200 +0,0 @@
-Add a --verbose configure flag to enable verbose build output.
-
---- bitlbee-3.5/configure
-+++ bitlbee-3.5/configure
-@@ -38,6 +38,7 @@
- twitter=1
- purple=0
-
-+verbose=0
- doc=1
- debug=0
- strip=0
-@@ -125,6 +126,8 @@
- --pidfile=... $pidfile
- --config=... $config
-
-+--verbose=0/1 Disable/enable verbose build $verbose
-+
- --msn=0/1 Disable/enable MSN part $msn
- --jabber=0/1 Disable/enable Jabber part $jabber
- --oscar=0/1 Disable/enable Oscar part (ICQ, AIM) $oscar
-@@ -282,6 +285,12 @@
- debug=1
- fi
-
-+if [ "$verbose" = "0" ]; then
-+ echo 'VERBOSE=@' >> Makefile.settings
-+else
-+ echo 'VERBOSE=' >> Makefile.settings
-+fi
-+
- if [ "$debug" = "1" ]; then
- echo 'DEBUG=1' >> Makefile.settings
- CFLAGS="$CFLAGS -g3 -DDEBUG -O0"
---- bitlbee-3.5/lib/Makefile
-+++ bitlbee-3.5/lib/Makefile
-@@ -35,12 +35,12 @@
-
- lib.o: $(objects) $(subdirs)
- @echo '*' Linking lib.o
-- @$(LD) $(LFLAGS) $(objects) -o lib.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) -o lib.o
-
- $(objects): ../Makefile.settings Makefile
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- -include .depend/*.d
---- bitlbee-3.5/Makefile
-+++ bitlbee-3.5/Makefile
-@@ -162,28 +162,28 @@
- tar czf $$x.tar.gz --exclude=debian --exclude=.git* --exclude=.depend $$x
-
- $(subdirs):
-- @$(MAKE) -C $@ $(MAKECMDGOALS)
-+ $(MAKE) -C $@ $(MAKECMDGOALS)
-
- $(OTR_PI): %.so: $(_SRCDIR_)%.c
- @echo '*' Building plugin $@
-- @$(CC) $(CFLAGS) -fPIC -shared $(LDFLAGS) $< -o $@ $(OTRFLAGS)
-+ $(VERBOSE) $(CC) $(CFLAGS) -fPIC -shared $(LDFLAGS) $< -o $@ $(OTRFLAGS)
-
- $(SKYPE_PI): $(_SRCDIR_)protocols/skype/skype.c
- @echo '*' Building plugin skype
-- @$(CC) $(CFLAGS) $(LDFLAGS) $(SKYPEFLAGS) $< -o $@
-+ $(VERBOSE) $(CC) $(CFLAGS) $(LDFLAGS) $(SKYPEFLAGS) $< -o $@
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- $(objects): Makefile Makefile.settings config.h
-
- $(OUTFILE): $(objects) $(subdirs)
- @echo '*' Linking $(OUTFILE)
-- @$(CC) $(objects) $(subdirobjs) -o $(OUTFILE) $(LDFLAGS_BITLBEE) $(LDFLAGS) $(EFLAGS)
-+ $(VERBOSE) $(CC) $(objects) $(subdirobjs) -o $(OUTFILE) $(LDFLAGS_BITLBEE) $(LDFLAGS) $(EFLAGS)
- ifneq ($(firstword $(STRIP)), \#)
- @echo '*' Stripping $(OUTFILE)
-- @-$(STRIP) $(OUTFILE)
-+ $(VERBOSE) -$(STRIP) $(OUTFILE)
- endif
-
- ctags:
---- bitlbee-3.5/protocols/jabber/Makefile
-+++ bitlbee-3.5/protocols/jabber/Makefile
-@@ -37,10 +37,10 @@
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- jabber_mod.o: $(objects)
- @echo '*' Linking jabber_mod.o
-- @$(LD) $(LFLAGS) $(objects) -o jabber_mod.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) -o jabber_mod.o
-
- -include .depend/*.d
---- bitlbee-3.5/protocols/Makefile
-+++ bitlbee-3.5/protocols/Makefile
-@@ -42,18 +42,18 @@
- rm -rf .depend
-
- $(subdirs):
-- @$(MAKE) -C $@ $(MAKECMDGOALS)
-+ $(MAKE) -C $@ $(MAKECMDGOALS)
-
- ### MAIN PROGRAM
-
- protocols.o: $(objects) $(subdirs)
- @echo '*' Linking protocols.o
-- @$(LD) $(LFLAGS) $(objects) $(subdirobjs) -o protocols.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) $(subdirobjs) -o protocols.o
-
- $(objects): ../Makefile.settings Makefile
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- -include .depend/*.d
---- bitlbee-3.5/protocols/msn/Makefile
-+++ bitlbee-3.5/protocols/msn/Makefile
-@@ -37,10 +37,10 @@
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- msn_mod.o: $(objects)
- @echo '*' Linking msn_mod.o
-- @$(LD) $(LFLAGS) $(objects) -o msn_mod.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) -o msn_mod.o
-
- -include .depend/*.d
---- bitlbee-3.5/protocols/oscar/Makefile
-+++ bitlbee-3.5/protocols/oscar/Makefile
-@@ -38,10 +38,10 @@
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- oscar_mod.o: $(objects)
- @echo '*' Linking oscar_mod.o
-- @$(LD) $(LFLAGS) $(objects) -o oscar_mod.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) -o oscar_mod.o
-
- -include .depend/*.d
---- bitlbee-3.5/protocols/purple/Makefile
-+++ bitlbee-3.5/protocols/purple/Makefile
-@@ -38,10 +38,10 @@
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- purple_mod.o: $(objects)
- @echo '*' Linking purple_mod.o
-- @$(LD) $(LFLAGS) $(objects) -o purple_mod.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) -o purple_mod.o
-
- -include .depend/*.d
---- bitlbee-3.5/protocols/twitter/Makefile
-+++ bitlbee-3.5/protocols/twitter/Makefile
-@@ -37,10 +37,10 @@
-
- $(objects): %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
-
- twitter_mod.o: $(objects)
- @echo '*' Linking twitter_mod.o
-- @$(LD) $(LFLAGS) $(objects) -o twitter_mod.o
-+ $(VERBOSE) $(LD) $(LFLAGS) $(objects) -o twitter_mod.o
-
- -include .depend/*.d
---- bitlbee-3.5/tests/Makefile
-+++ bitlbee-3.5/tests/Makefile
-@@ -20,8 +20,8 @@
-
- check: $(test_objs) $(addprefix ../, $(main_objs)) ../protocols/protocols.o ../lib/lib.o
- @echo '*' Linking $@
-- @$(CC) $(CFLAGS) -o $@ $^ $(LFLAGS) $(EFLAGS)
-+ $(VERBOSE) $(CC) $(CFLAGS) -o $@ $^ $(LFLAGS) $(EFLAGS)
-
- %.o: $(_SRCDIR_)%.c
- @echo '*' Compiling $<
-- @$(CC) -c $(CFLAGS) $< -o $@
-+ $(VERBOSE) $(CC) -c $(CFLAGS) $< -o $@
diff --git a/net-im/bitlbee/files/bitlbee-3.6-disabled-plugins-use.patch b/net-im/bitlbee/files/bitlbee-3.6-disabled-plugins-use.patch
new file mode 100644
index 000000000000..0973bd4bd5fa
--- /dev/null
+++ b/net-im/bitlbee/files/bitlbee-3.6-disabled-plugins-use.patch
@@ -0,0 +1,55 @@
+This patch is taken from upstrem https://github.com/bitlbee/bitlbee/pull/156
+where it was already merged.
+
+From a8196d6f72b44be9c315b9ad7dc45276d2aaca0c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20Van=C4=9Bk?= <arkamar@atlas.cz>
+Date: Tue, 23 Mar 2021 13:07:18 +0100
+Subject: [PATCH] root_commands: prevent linker error when plugins are disabled
+
+This commit fixes compilation issue with disabled plugin support
+(./configure --plugins=0), where get_plugins function is unavailable.
+The problem has been introduced with addition of new 'plugins info'
+subcommand, where get_plugins is used in cmd_plugins_info function,
+which should be conditionally available only if WITH_PLUGINS is defined.
+
+Bug: https://bugs.gentoo.org/739510
+Bug: https://bugs.gentoo.org/617604
+Fixes: 6908ab747d1e ("Add 'plugins info' subcommand, only show plugin details there")
+Signed-off-by: Petr Vaněk <arkamar@atlas.cz>
+---
+ root_commands.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/root_commands.c b/root_commands.c
+index 8358c030..a4e72f83 100644
+--- a/root_commands.c
++++ b/root_commands.c
+@@ -1168,6 +1168,7 @@ static void prplstr(GList *prpls, GString *gstr)
+ g_list_free(prpls);
+ }
+
++#ifdef WITH_PLUGINS
+ static void cmd_plugins_info(irc_t *irc, char **cmd)
+ {
+ GList *l;
+@@ -1201,6 +1202,7 @@ static void cmd_plugins_info(irc_t *irc, char **cmd)
+ irc_rootmsg(irc, " URL: %s", info->url);
+ }
+ }
++#endif
+
+ static void cmd_plugins(irc_t *irc, char **cmd)
+ {
+@@ -1208,7 +1210,9 @@ static void cmd_plugins(irc_t *irc, char **cmd)
+ GString *gstr;
+
+ if (cmd[1] && g_strcasecmp(cmd[1], "info") == 0) {
++#ifdef WITH_PLUGINS
+ cmd_plugins_info(irc, cmd);
++#endif
+ return;
+ }
+
+--
+2.26.3
+
diff --git a/net-im/bitlbee/files/bitlbee-3.6-system-json-parser.patch b/net-im/bitlbee/files/bitlbee-3.6-system-json-parser.patch
new file mode 100644
index 000000000000..0a9c197d763d
--- /dev/null
+++ b/net-im/bitlbee/files/bitlbee-3.6-system-json-parser.patch
@@ -0,0 +1,99 @@
+This is adapted patch from upstream PR 151. Original PR defines
+--external-json-parser which breaks configuration, see [1]. It was changed to
+--externaljsonparser and $external_json_parser to $externaljsonparser.
+Additionally, LDFLAGS_CHECK variable was introduced in order to make
+tests working, see [2] and #865667.
+
+[1] https://github.com/bitlbee/bitlbee/pull/151#issuecomment-1201181905
+[2] https://github.com/bitlbee/bitlbee/pull/151#issuecomment-1219254239
+
+Upstream-PR: https://github.com/bitlbee/bitlbee/pull/151
+
+diff --git a/configure b/configure
+index fd8d363a..39495515 100755
+--- a/configure
++++ b/configure
+@@ -47,6 +47,7 @@ plugins=1
+ otr=0
+
+ events=glib
++externaljsonparser=auto
+ ssl=auto
+
+ pam=0
+@@ -148,6 +149,7 @@ Option Description Default
+ --events=... Event handler (glib, libevent) $events
+ --ssl=... SSL library to use (gnutls, nss, openssl, auto)
+ $ssl
++--externaljsonparser=0/1/auto Use External JSON parser $externaljsonparser
+
+
+ --target=... Cross compilation target same as host
+@@ -398,6 +400,21 @@ else
+ fi
+ echo 'EVENT_HANDLER=events_'$events'.o' >> Makefile.settings
+
++if [ "$externaljsonparser" = "auto" ]; then
++ if pkg-config --exists json-parser; then
++ externaljsonparser=1
++ else
++ externaljsonparser=0
++ fi
++fi
++echo "EXTERNAL_JSON_PARSER=$externaljsonparser" >> Makefile.settings
++if [ "$externaljsonparser" = "1" ]; then
++ echo "CFLAGS+=$(pkg-config --cflags json-parser)" >> Makefile.settings
++ echo "LDFLAGS_BITLBEE+=$(pkg-config --libs json-parser)" >> Makefile.settings
++ echo "LDFLAGS_CHECK+=$(pkg-config --libs json-parser)" >> Makefile.settings
++fi
++
++
+ detect_gnutls()
+ {
+ if $PKG_CONFIG --exists gnutls; then
+@@ -979,6 +996,12 @@ else
+ echo ' systemd disabled.'
+ fi
+
++if [ "$externaljsonparser" = "1" ]; then
++ echo ' Using system JSON parser.'
++else
++ echo ' Using bundled JSON parser.'
++fi
++
+ echo ' Using event handler: '$events
+ echo ' Using SSL library: '$ssl
+ #echo ' Building with these storage backends: '$STORAGES
+diff --git a/lib/Makefile b/lib/Makefile
+index fc46aedc..ad95d9cb 100644
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -12,7 +12,11 @@ _SRCDIR_ := $(_SRCDIR_)lib/
+ endif
+
+ # [SH] Program variables
+-objects = arc.o base64.o canohost.o $(EVENT_HANDLER) ftutil.o http_client.o ini.o json.o json_util.o md5.o misc.o oauth.o oauth2.o proxy.o sha1.o $(SSL_CLIENT) url.o xmltree.o ns_parse.o
++objects = arc.o base64.o canohost.o $(EVENT_HANDLER) ftutil.o http_client.o ini.o json_util.o md5.o misc.o oauth.o oauth2.o proxy.o sha1.o $(SSL_CLIENT) url.o xmltree.o ns_parse.o
++
++ifneq ($(EXTERNAL_JSON_PARSER),1)
++objects += json.o
++endif
+
+ LFLAGS += -r
+
+diff --git a/tests/Makefile b/tests/Makefile
+index 76122a2f..2235bf1d 100644
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -20,7 +20,7 @@ test_objs = check.o check_util.o check_nick.o check_md5.o check_arc.o check_irc.
+
+ check: $(test_objs) $(addprefix ../, $(main_objs)) ../protocols/protocols.o ../lib/lib.o
+ @echo '*' Linking $@
+- $(VERBOSE) $(CC) $(CFLAGS) -o $@ $^ $(LFLAGS) $(EFLAGS)
++ $(VERBOSE) $(CC) $(CFLAGS) -o $@ $^ $(LFLAGS) $(LDFLAGS_CHECK) $(EFLAGS)
+
+ %.o: $(_SRCDIR_)%.c
+ @echo '*' Compiling $<
+--
+2.35.1
+
diff --git a/net-im/bitlbee/files/bitlbee.confd-r1 b/net-im/bitlbee/files/bitlbee.confd-r1
deleted file mode 100644
index d581222f9fb9..000000000000
--- a/net-im/bitlbee/files/bitlbee.confd-r1
+++ /dev/null
@@ -1,8 +0,0 @@
-# Bitlbee options (see /usr/sbin/bitlbee -h)
-BITLBEE_OPTS="-F"
-
-# By default, the bitlbee init script will attempt to stop
-# all bitlbee-owned processes, including per-client forks.
-# Setting this to "no" tells the init script to only
-# stop the main bitlbee process.
-BITLBEE_STOP_ALL="yes"
diff --git a/net-im/bitlbee/files/bitlbee.initd-r1 b/net-im/bitlbee/files/bitlbee.initd-r1
deleted file mode 100644
index 413bd45735ed..000000000000
--- a/net-im/bitlbee/files/bitlbee.initd-r1
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License, v2 or
-# later
-
-DAEMON=/usr/sbin/bitlbee
-PIDFILE=/var/run/bitlbee/bitlbee.pid
-
-depend() {
- need logger net
-}
-
-start () {
- ebegin "Starting bitlbee"
- checkpath -d -m 0755 -o bitlbee:bitlbee $(dirname ${PIDFILE})
- start-stop-daemon --start --quiet \
- -u bitlbee:bitlbee --exec ${DAEMON} --pidfile ${PIDFILE} \
- -- -P ${PIDFILE} ${BITLBEE_OPTS}
- eend $?
-}
-
-stop() {
- ebegin "Stopping bitlbee"
- local pidfile=
- yesno ${BITLBEE_STOP_ALL:-YES} ||
- pidfile="--pidfile ${PIDFILE}"
- start-stop-daemon --stop --quiet ${pidfile} -u bitlbee:bitlbee
- eend $?
-}
-
diff --git a/net-im/bitlbee/metadata.xml b/net-im/bitlbee/metadata.xml
index 6ecb78d56885..99fc3dd0270a 100644
--- a/net-im/bitlbee/metadata.xml
+++ b/net-im/bitlbee/metadata.xml
@@ -1,19 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>arkamar@atlas.cz</email>
+ <email>arkamar@gentoo.org</email>
<name>Petr Vaněk</name>
</maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
<use>
<flag name="libevent">Use libevent for event handling</flag>
- <flag name="msn">Enable MSN Messenger IM protocol support.</flag>
- <flag name="nss">Use NSS for SSL support in MSN and Jabber</flag>
- <flag name="oscar">Enable Oscar (AIM/ICQ) IM protocol support</flag>
+ <flag name="nss">Prefer <pkg>dev-libs/nss</pkg> as SSL/TLS provider</flag>
<flag name="otr">Enable support for encrypted conversations</flag>
<flag name="plugins">Enable support for plugins</flag>
<flag name="purple">Use libpurple instead of the built-in IM protocol support</flag>
@@ -21,7 +15,9 @@
</use>
<longdescription>
Bitlbee as an IRC to IM gateway. It provides an irc server that allows
- you to log on and then connect to various instant messaging protocols
- (AIM, MSN, Yahoo, Jabber, etc).
+ you to log on and then connect to various instant messaging protocols.
</longdescription>
+ <upstream>
+ <remote-id type="github">bitlbee/bitlbee</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/centerim/centerim-5.0.1.ebuild b/net-im/centerim/centerim-5.0.1-r2.ebuild
index e0696b895232..1b0105e0b4fd 100644
--- a/net-im/centerim/centerim-5.0.1.ebuild
+++ b/net-im/centerim/centerim-5.0.1-r2.ebuild
@@ -1,38 +1,39 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="6"
+EAPI=8
MY_P="${PN}5-${PV/_}"
-DESCRIPTION="CenterIM is a ncurses ICQ/Yahoo!/AIM/IRC/MSN/Jabber/GaduGadu/RSS/LiveJournal Client"
-SRC_URI="http://www.centerim.org/download/cim5/${MY_P}.tar.gz"
+DESCRIPTION="Ncurses ICQ/Yahoo!/AIM/IRC/MSN/Jabber/GaduGadu/RSS/LiveJournal client"
HOMEPAGE="http://www.centerim.org/"
-SLOT="0"
+SRC_URI="http://www.centerim.org/download/cim5/${MY_P}.tar.gz"
+
LICENSE="GPL-2"
+SLOT="0"
KEYWORDS="amd64 x86"
IUSE="debug nls"
DEPEND=">=sys-libs/ncurses-5.2:=
>=net-im/pidgin-2.7.0
>=dev-libs/glib-2.16.0
- >=dev-libs/libsigc++-2.2.0"
+ >=dev-libs/libsigc++-2.2.0:2"
RDEPEND="${DEPEND}
nls? ( sys-devel/gettext )"
-DEPEND="${DEPEND}
- virtual/pkgconfig"
+BDEPEND="virtual/pkgconfig"
S="${WORKDIR}"/${MY_P}
src_configure() {
- econf \
+ CONFIG_SHELL="${BROOT}"/bin/bash econf \
$(use_enable debug) \
$(use_enable nls)
}
src_install() {
emake DESTDIR="${D}" install
- rm -f "${D}"/usr/lib*/libcppconsui.{a,la}
+
+ find "${ED}" -name '*.la' -delete || die
dodoc AUTHORS HACKING NEWS README TODO
}
diff --git a/net-im/centerim/metadata.xml b/net-im/centerim/metadata.xml
index a5a5d9728be5..53d5fd602372 100644
--- a/net-im/centerim/metadata.xml
+++ b/net-im/centerim/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>swegener@gentoo.org</email>
diff --git a/net-im/choqok/Manifest b/net-im/choqok/Manifest
index 968126781e45..0b4997cb0391 100644
--- a/net-im/choqok/Manifest
+++ b/net-im/choqok/Manifest
@@ -1 +1,2 @@
+DIST choqok-1.7.0-patchset-1.tar.xz 3260 BLAKE2B 48612da4e92c9ed4a877858940f73075df4142d68da3854c42892bcfb13a59ab5dd45b06597c404badfb55ebaeddf7485bc0970e65ae29898a742742353d6caa SHA512 78e31f4d8de9d5294c8439959d8966b5b966bf6bc8f26d1b9cb1ffd12bf182d167269b26deb2dfa7d7dd8cf09bcaa0c77a560418075105f40a74fa50c96d48d0
DIST choqok-1.7.0.tar.xz 1202092 BLAKE2B 62e0c561579c36198f645bb550822d9bec583d8337b37e3336e4352199800b1807b80931f8c7c8141f74dfb91ade9f89b371723a8a3ea3e7bde97854634b82b2 SHA512 6f5998078e555f7b4a40270ad0a4defa2d15bb8440b810320fc4cfc38d78cb34bb9b2f6a38eb33eb3217b51a78a7fbc7f79224cd0ddb0fcbf8c9035d8e600e96
diff --git a/net-im/choqok/choqok-1.7.0.ebuild b/net-im/choqok/choqok-1.7.0-r1.ebuild
index dc005d25d769..907f34b30bfc 100644
--- a/net-im/choqok/choqok-1.7.0.ebuild
+++ b/net-im/choqok/choqok-1.7.0-r1.ebuild
@@ -1,28 +1,28 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
ECM_HANDBOOK="forceoptional"
-KFMIN=5.60.0
-QTMIN=5.12.3
+KFMIN=5.82.0
+QTMIN=5.15.2
inherit ecm kde.org
DESCRIPTION="Free/Open Source micro-blogging client by KDE"
-HOMEPAGE="https://choqok.kde.org/
-https://kde.org/applications/internet/org.kde.choqok"
+HOMEPAGE="https://choqok.kde.org/ https://apps.kde.org/choqok/"
if [[ ${KDE_BUILD_TYPE} != live ]]; then
- SRC_URI="mirror://kde/stable/${PN}/${PV%.0}/src/${P}.tar.xz"
+ SRC_URI="mirror://kde/stable/${PN}/${PV%.0}/src/${P}.tar.xz
+ https://dev.gentoo.org/~asturm/distfiles/${P}-patchset-1.tar.xz"
KEYWORDS="amd64 x86"
fi
LICENSE="GPL-2+"
SLOT="5"
-IUSE="attica konqueror share telepathy"
+IUSE="attica share telepathy"
DEPEND="
- app-crypt/qca[qt5(+)]
+ >=app-crypt/qca-2.3.0:2[qt5(+)]
>=dev-qt/qtdbus-${QTMIN}:5
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtnetworkauth-${QTMIN}:5
@@ -47,29 +47,26 @@ DEPEND="
>=kde-frameworks/kxmlgui-${KFMIN}:5
>=kde-frameworks/sonnet-${KFMIN}:5
attica? ( >=kde-frameworks/attica-${KFMIN}:5 )
- konqueror? (
- >=dev-qt/qtwebkit-5.212.0_pre20180120:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/kdewebkit-${KFMIN}:5
- )
share? ( >=kde-frameworks/purpose-${KFMIN}:5 )
- telepathy? ( net-libs/telepathy-qt[qt5(+)] )
+ telepathy? ( >=net-libs/telepathy-qt-0.9.8 )
"
RDEPEND="${DEPEND}"
DOCS=( AUTHORS README changelog )
-src_prepare() {
- ecm_src_prepare
- # TODO: quick fix for bug #708464
- sed -e "/find_package.*Purpose)/s/ COMPONENTS //" -i CMakeLists.txt || die
-}
+PATCHES=(
+ "${WORKDIR}/${P}-optional-purpose.patch" # bug 708464, upstream MR #11
+ "${WORKDIR}/${P}-fix-retrieve-twitter.patch" # KDE-bug 417193
+ "${WORKDIR}/${P}-choqokplugin.patch"
+ "${WORKDIR}/${P}-fix-layout-of-tweets.patch" # KDE-bug 424938
+ "${WORKDIR}/${P}-fix-partially-static-signatures.patch" # KDE-bug 417297
+ "${FILESDIR}/${P}-fix-KCModule-warning.patch" # bug 871546, git master
+)
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package attica KF5Attica)
- $(cmake_use_find_package konqueror KF5Parts)
- $(cmake_use_find_package konqueror KF5WebKit)
+ -DCMAKE_DISABLE_FIND_PACKAGE_KF5WebKit=ON
$(cmake_use_find_package share KF5Purpose)
$(cmake_use_find_package telepathy TelepathyQt5)
)
diff --git a/net-im/choqok/files/choqok-1.7.0-fix-KCModule-warning.patch b/net-im/choqok/files/choqok-1.7.0-fix-KCModule-warning.patch
new file mode 100644
index 000000000000..26721514ca04
--- /dev/null
+++ b/net-im/choqok/files/choqok-1.7.0-fix-KCModule-warning.patch
@@ -0,0 +1,43 @@
+From 9c488d8f776b5e7462e8e57dc2b15db5fe28815a Mon Sep 17 00:00:00 2001
+From: Andrea Scarpino <scarpino@kde.org>
+Date: Sat, 8 Feb 2020 16:06:18 +0100
+Subject: [PATCH] Fix warning about KCModule::changed
+
+---
+ choqok/config/behavior/behaviorconfig.cpp | 4 ++--
+ choqok/config/plugins/choqokpluginconfig.cpp | 3 +--
+ 2 files changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/choqok/config/behavior/behaviorconfig.cpp b/choqok/config/behavior/behaviorconfig.cpp
+index a25b0196..fb1d16b3 100644
+--- a/choqok/config/behavior/behaviorconfig.cpp
++++ b/choqok/config/behavior/behaviorconfig.cpp
+@@ -95,9 +95,9 @@ BehaviorConfig::BehaviorConfig(QWidget *parent, const QVariantList &args)
+ d->mBehaviorTabCtl->addTab(d->proxyModule, proxyInfo.moduleName());
+
+ connect(d->mPrfsShorten, (void (BehaviorConfig_Shorten::*)(bool))&BehaviorConfig_Shorten::changed,
+- this, (void (KCModule::*)())&KCModule::changed);
++ this, &BehaviorConfig::markAsChanged);
+ connect(d->proxyModule, (void (KCModuleProxy::*)(KCModuleProxy*))&KCModuleProxy::changed,
+- this, (void (KCModule::*)())&KCModule::changed);
++ this, &BehaviorConfig::markAsChanged);
+
+ load();
+
+diff --git a/choqok/config/plugins/choqokpluginconfig.cpp b/choqok/config/plugins/choqokpluginconfig.cpp
+index 1a5f4fc2..4f36d608 100644
+--- a/choqok/config/plugins/choqokpluginconfig.cpp
++++ b/choqok/config/plugins/choqokpluginconfig.cpp
+@@ -46,8 +46,7 @@ ChoqokPluginConfig::ChoqokPluginConfig(QWidget *parent, const QVariantList &args
+ mainLayout->setMargin(0);
+ mainLayout->addWidget(m_pluginSelector);
+
+- connect(m_pluginSelector, &KPluginSelector::changed, this,
+- (void (KCModule::*)())&KCModule::changed);
++ connect(m_pluginSelector, &KPluginSelector::changed, this, &ChoqokPluginConfig::markAsChanged);
+ connect(m_pluginSelector, &KPluginSelector::configCommitted,
+ this, &ChoqokPluginConfig::reparseConfiguration);
+
+--
+GitLab
+
diff --git a/net-im/choqok/metadata.xml b/net-im/choqok/metadata.xml
index 7606fdaab74d..1b71d886242e 100644
--- a/net-im/choqok/metadata.xml
+++ b/net-im/choqok/metadata.xml
@@ -1,13 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>kde@gentoo.org</email>
<name>Gentoo KDE Project</name>
</maintainer>
+ <upstream>
+ <bugs-to>https://bugs.kde.org/</bugs-to>
+ </upstream>
<use>
<flag name="attica">Build Open Collaboration Services plugin using <pkg>kde-frameworks/attica</pkg></flag>
- <flag name="konqueror">Build Konqueror Choqok plugin</flag>
<flag name="share">Enable support for a share menu using <pkg>kde-frameworks/purpose</pkg></flag>
<flag name="telepathy">Enable support for the real-time communication framework telepathy</flag>
</use>
diff --git a/net-im/corebird/Manifest b/net-im/corebird/Manifest
deleted file mode 100644
index 946446bfbe08..000000000000
--- a/net-im/corebird/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST corebird-1.7.4.tar.gz 555650 BLAKE2B 1c9ef4d81084a291726876a76b700fe556c0c8c803921c2df215db7e0c268029fcefa95ea6aabd8f4934ecbf70e70ee57988b6c7aefebfd0851d3cb73d16b3fc SHA512 7e88f73ef1fc36379172d30251065e7ee3df54eabfaf954015ed4e739c5ad2b1821b43a07e66bb9363b7daa59b5e981d459a4aef87be8a3dd80a7ed41e37e582
diff --git a/net-im/corebird/corebird-1.7.4-r1.ebuild b/net-im/corebird/corebird-1.7.4-r1.ebuild
deleted file mode 100644
index ff61481ab0a2..000000000000
--- a/net-im/corebird/corebird-1.7.4-r1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-VALA_MIN_API_VERSION=0.34
-
-inherit autotools gnome2 vala virtualx xdg-utils
-
-DESCRIPTION="Native GTK+3 Twitter client"
-HOMEPAGE="https://corebird.baedert.org/"
-SRC_URI="https://github.com/baedert/corebird/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="debug gstreamer spellcheck"
-
-RDEPEND="dev-db/sqlite:3
- dev-libs/glib:2
- dev-libs/json-glib
- gstreamer? ( media-plugins/gst-plugins-gtk:1.0
- media-libs/gst-plugins-base:1.0[X]
- media-libs/gst-plugins-good:1.0
- media-plugins/gst-plugins-hls:1.0
- media-plugins/gst-plugins-libav:1.0
- media-plugins/gst-plugins-meta:1.0[X]
- media-plugins/gst-plugins-soup:1.0 )
- spellcheck? ( app-text/gspell:=[vala] )
- net-libs/libsoup
- x11-libs/gtk+:3"
-DEPEND="${RDEPEND}
- $(vala_depend)
- dev-util/intltool
- sys-apps/sed
- virtual/pkgconfig"
-
-src_prepare() {
- # Disable that specific test because it would perform a download
- sed -i -e "/inlinemediadownloader/d" tests/Makefile.am || die
- eautoreconf
- gnome2_src_prepare
- vala_src_prepare
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable gstreamer video)
- --disable-gst-check
- $(use_enable spellcheck)
- )
- gnome2_src_configure "${myeconfargs[@]}"
-}
-
-src_test() {
- # Need to have $HOME/.config and friends for the tests to work
- xdg_environment_reset
- virtx emake check
-}
diff --git a/net-im/corebird/metadata.xml b/net-im/corebird/metadata.xml
deleted file mode 100644
index 5b4d772c5be8..000000000000
--- a/net-im/corebird/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <use>
- <flag name="spellcheck">Support spell checking</flag>
- </use>
- <upstream>
- <remote-id type="github">baedert/corebird</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/net-im/coturn/Manifest b/net-im/coturn/Manifest
index 0f48d31a5c5f..b7be62479570 100644
--- a/net-im/coturn/Manifest
+++ b/net-im/coturn/Manifest
@@ -1 +1,2 @@
-DIST coturn-4.5.1.1.tar.gz 420069 BLAKE2B fe0e0334658d2a69132d7a83667ee52927e888f8978bd03eb099e61f17a4516d10a36d2abb1c93e2b25bc4192c342fba581b85892e99b139016e09c77a365cc2 SHA512 a5e1aecdab5a7060ffbc73cc8dd294cafa701f2e0d2a827e40901cb6001af5a2c5ecbafdf14662410713818aad0ad259133f0dc9b34730bf7911863e1e255f70
+DIST coturn-4.5.2.tar.gz 442745 BLAKE2B c18d5f5cfedd600875c0bfa08b874ef6316a5aa9af34c27e2901825da412b794d437e08f0706f9651bdf6d3d19e151486af39a42f2326c7ab6bb802d33fd0ba4 SHA512 00e86a3a273a8e4e69deaefd338bdd6c44739a807f21a72a2d68efc089053e16efd1d5b34b0c6dea7a0fa2b66f70821d8c3e1107561e1f08dfac2c93933a6121
+DIST coturn-4.6.0.tar.gz 474423 BLAKE2B b70ecd1f333f4f9f37adcab6f5fd3406aa0eb962488b7cae4a30c9339cf7b11b2bfedd1fa70bd3b0c32bf82702d39eb22278506521f71e0cb6aaadee9d3c3d05 SHA512 a80ea1b8d9c78b8f9fc632517a0246cb0d2d4ff21c59d53827f026fb3a145a01b3bec637af94a96b525c35251cb5e9e209ba7f368f08e12ef61220bcb784637c
diff --git a/net-im/coturn/coturn-4.5.1.1.ebuild b/net-im/coturn/coturn-4.5.2-r1.ebuild
index 4a1fd7499733..d3a3c8813604 100644
--- a/net-im/coturn/coturn-4.5.1.1.ebuild
+++ b/net-im/coturn/coturn-4.5.2-r1.ebuild
@@ -1,16 +1,15 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils systemd tmpfiles
+
+inherit toolchain-funcs systemd tmpfiles
DESCRIPTION="coturn TURN server project"
HOMEPAGE="https://github.com/coturn/coturn"
if [ ${PV} = 9999 ]; then
- KEYWORDS=""
EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
inherit git-r3
- DEPEND="dev-vcs/git"
# S="${WORKDIR}/${PN}-master"
else
KEYWORDS="~amd64 ~x86"
@@ -21,21 +20,32 @@ LICENSE="BSD"
SLOT="0"
IUSE="mongodb mysql postgres redis sqlite"
RDEPEND="acct-group/turnserver
- acct-user/turnserver
- || ( dev-libs/libevent[-ssl,libressl] dev-libs/libevent[ssl,-libressl] >dev-libs/libevent-2.1.8[ssl,libressl] )
- mongodb? ( dev-libs/mongo-c-driver )
- mysql? ( dev-db/mysql-connector-c )
- postgres? ( dev-db/postgresql:* )
- redis? ( dev-libs/hiredis )
- sqlite? ( dev-db/sqlite )"
-
+ acct-user/turnserver
+ >dev-libs/libevent-2.1.8:=
+ dev-libs/openssl:=
+ mongodb? ( dev-libs/mongo-c-driver )
+ mysql? ( dev-db/mysql-connector-c:= )
+ postgres? ( dev-db/postgresql:* )
+ redis? ( dev-libs/hiredis:= )
+ sqlite? ( dev-db/sqlite )"
DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.5.2-respect-TMPDIR.patch
+)
src_configure() {
+ if [ -n "${AR}" ]; then
+ sed 's:ARCHIVERCMD="ar -r":ARCHIVERCMD="${AR} -r":g' -i "${S}/configure"
+ fi
+ sed 's:MANPREFIX}/man/:MANPREFIX}/:g' -i "${S}/Makefile.in" || die "sed for mandir failed"
sed 's:#log-file=/var/tmp/turn.log:log-file=/var/log/turnserver.log:' \
-i "${S}/examples/etc/turnserver.conf" || die "sed for logdir failed"
sed 's:#simple-log:simple-log:' -i "${S}/examples/etc/turnserver.conf" \
|| die "sed for simple-log failed"
+ sed '/INSTALL_DIR} examples\/script/a \ \${INSTALL_DIR} examples\/ca \${DESTDIR}${EXAMPLESDIR}' \
+ -i "${S}/Makefile.in" || die "sed for example ca failed"
if ! use mongodb; then
export TURN_NO_MONGO=yes
fi
@@ -52,6 +62,12 @@ src_configure() {
export TURN_NO_SQLITE=yes
fi
+ tc-export CC
+
+ export ARCHIVERCMD="$(tc-getAR) -r"
+ export PKGCONFIG="$(tc-getPKG_CONFIG)"
+ export DOCSDIR="/usr/share/doc/${PN}-${PV}"
+
econf $(use_with sqlite)
}
diff --git a/net-im/coturn/coturn-4.6.0.ebuild b/net-im/coturn/coturn-4.6.0.ebuild
new file mode 100644
index 000000000000..92b69c62eba0
--- /dev/null
+++ b/net-im/coturn/coturn-4.6.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs systemd tmpfiles
+
+DESCRIPTION="coturn TURN server project"
+HOMEPAGE="https://github.com/coturn/coturn"
+
+if [[ ${PV} == *9999 ]]; then
+ EGIT_REPO_URI="https://github.com/coturn/coturn.git"
+ inherit git-r3
+ #S="${WORKDIR}/${PN}-master"
+else
+ SRC_URI="https://github.com/coturn/coturn/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="mongodb mysql postgres redis sqlite"
+
+RDEPEND="
+ acct-group/turnserver
+ acct-user/turnserver
+ >dev-libs/libevent-2.1.8:=
+ dev-libs/openssl:=
+ mongodb? ( dev-libs/mongo-c-driver )
+ mysql? ( dev-db/mysql-connector-c:= )
+ postgres? ( dev-db/postgresql:* )
+ redis? ( dev-libs/hiredis:= )
+ sqlite? ( dev-db/sqlite )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.5.2-respect-TMPDIR.patch
+ "${FILESDIR}"/${P}-openssl3.patch
+)
+
+src_configure() {
+ if [[ -n "${AR}" ]]; then
+ sed 's:ARCHIVERCMD="ar -r":ARCHIVERCMD="${AR} -r":g' -i "${S}/configure"
+ fi
+
+ sed 's:MANPREFIX}/man/:MANPREFIX}/:g' -i "${S}/Makefile.in" || die "sed for mandir failed"
+ sed 's:#log-file=/var/tmp/turn.log:log-file=/var/log/turnserver.log:' \
+ -i "${S}/examples/etc/turnserver.conf" || die "sed for logdir failed"
+ sed 's:#simple-log:simple-log:' -i "${S}/examples/etc/turnserver.conf" \
+ || die "sed for simple-log failed"
+ sed '/INSTALL_DIR} examples\/script/a \ \${INSTALL_DIR} examples\/ca \${DESTDIR}${EXAMPLESDIR}' \
+ -i "${S}/Makefile.in" || die "sed for example ca failed"
+
+ if ! use mongodb; then
+ export TURN_NO_MONGO=yes
+ fi
+ if ! use mysql; then
+ export TURN_NO_MYSQL=yes
+ fi
+ if ! use postgres; then
+ export TURN_NO_PQ=yes
+ fi
+ if ! use redis; then
+ export TURN_NO_HIREDIS=yes
+ fi
+ if ! use sqlite; then
+ export TURN_NO_SQLITE=yes
+ fi
+
+ tc-export CC
+
+ export ARCHIVERCMD="$(tc-getAR) -r"
+ export PKGCONFIG="$(tc-getPKG_CONFIG)"
+ export DOCSDIR="/usr/share/doc/${PN}-${PV}"
+
+ econf $(use_with sqlite)
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/turnserver.init" turnserver
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/logrotate.${PN}" "${PN}"
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+ dotmpfiles "${FILESDIR}/${PN}.conf"
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+
+ elog "You need to copy ${EROOT}/etc/turnserver.conf.default to"
+ elog "${EROOT}/etc/turnserver.conf and do your settings there."
+}
diff --git a/net-im/coturn/coturn-9999.ebuild b/net-im/coturn/coturn-9999.ebuild
index 4a1fd7499733..8c10c10306aa 100644
--- a/net-im/coturn/coturn-9999.ebuild
+++ b/net-im/coturn/coturn-9999.ebuild
@@ -1,41 +1,58 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils systemd tmpfiles
+
+inherit toolchain-funcs systemd tmpfiles
+
DESCRIPTION="coturn TURN server project"
HOMEPAGE="https://github.com/coturn/coturn"
-if [ ${PV} = 9999 ]; then
- KEYWORDS=""
- EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+if [[ ${PV} == *9999 ]]; then
+ EGIT_REPO_URI="https://github.com/coturn/coturn.git"
inherit git-r3
- DEPEND="dev-vcs/git"
-# S="${WORKDIR}/${PN}-master"
+ #S="${WORKDIR}/${PN}-master"
else
+ SRC_URI="https://github.com/coturn/coturn/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
- SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
fi
LICENSE="BSD"
SLOT="0"
IUSE="mongodb mysql postgres redis sqlite"
-RDEPEND="acct-group/turnserver
- acct-user/turnserver
- || ( dev-libs/libevent[-ssl,libressl] dev-libs/libevent[ssl,-libressl] >dev-libs/libevent-2.1.8[ssl,libressl] )
- mongodb? ( dev-libs/mongo-c-driver )
- mysql? ( dev-db/mysql-connector-c )
- postgres? ( dev-db/postgresql:* )
- redis? ( dev-libs/hiredis )
- sqlite? ( dev-db/sqlite )"
+RDEPEND="
+ acct-group/turnserver
+ acct-user/turnserver
+ >dev-libs/libevent-2.1.8:=
+ dev-libs/openssl:=
+ mongodb? ( dev-libs/mongo-c-driver )
+ mysql? ( dev-db/mysql-connector-c:= )
+ postgres? ( dev-db/postgresql:* )
+ redis? ( dev-libs/hiredis:= )
+ sqlite? ( dev-db/sqlite )
+"
DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.5.2-respect-TMPDIR.patch
+ "${FILESDIR}"/${P}-openssl3.patch
+)
src_configure() {
+ if [[ -n "${AR}" ]]; then
+ sed 's:ARCHIVERCMD="ar -r":ARCHIVERCMD="${AR} -r":g' -i "${S}/configure"
+ fi
+
+ sed 's:MANPREFIX}/man/:MANPREFIX}/:g' -i "${S}/Makefile.in" || die "sed for mandir failed"
sed 's:#log-file=/var/tmp/turn.log:log-file=/var/log/turnserver.log:' \
-i "${S}/examples/etc/turnserver.conf" || die "sed for logdir failed"
sed 's:#simple-log:simple-log:' -i "${S}/examples/etc/turnserver.conf" \
|| die "sed for simple-log failed"
+ sed '/INSTALL_DIR} examples\/script/a \ \${INSTALL_DIR} examples\/ca \${DESTDIR}${EXAMPLESDIR}' \
+ -i "${S}/Makefile.in" || die "sed for example ca failed"
+
if ! use mongodb; then
export TURN_NO_MONGO=yes
fi
@@ -52,20 +69,30 @@ src_configure() {
export TURN_NO_SQLITE=yes
fi
+ tc-export CC
+
+ export ARCHIVERCMD="$(tc-getAR) -r"
+ export PKGCONFIG="$(tc-getPKG_CONFIG)"
+ export DOCSDIR="/usr/share/doc/${PN}-${PV}"
+
econf $(use_with sqlite)
}
src_install() {
default
+
newinitd "${FILESDIR}/turnserver.init" turnserver
+
insinto /etc/logrotate.d
newins "${FILESDIR}/logrotate.${PN}" "${PN}"
+
systemd_dounit "${FILESDIR}/${PN}.service"
dotmpfiles "${FILESDIR}/${PN}.conf"
}
pkg_postinst() {
- tmpfiles_process "${PN}.conf"
- elog "You need to copy /etc/turnserver.conf.default to"
- elog "/etc/turnserver.conf and do your settings there."
+ tmpfiles_process ${PN}.conf
+
+ elog "You need to copy ${EROOT}/etc/turnserver.conf.default to"
+ elog "${EROOT}/etc/turnserver.conf and do your settings there."
}
diff --git a/net-im/coturn/files/coturn-4.5.2-respect-TMPDIR.patch b/net-im/coturn/files/coturn-4.5.2-respect-TMPDIR.patch
new file mode 100644
index 000000000000..036705afc1f2
--- /dev/null
+++ b/net-im/coturn/files/coturn-4.5.2-respect-TMPDIR.patch
@@ -0,0 +1,24 @@
+diff --git a/configure b/configure
+index caf11f5..003da8d 100755
+--- a/configure
++++ b/configure
+@@ -513,12 +513,13 @@ fi
+ # Temporary DIR location:
+ #########################
+
+-TMPDIR="."
+-
+-if [ -d /var/tmp ] ; then
+- TMPDIR="/var/tmp"
+-elif [ -d /tmp ] ; then
+- TMPDIR=/tmp
++TMPDIR=${TMPDIR:-.}
++if test x"${TMPDIR}" = "." ; then
++ if [ -d /var/tmp ] ; then
++ TMPDIR="/var/tmp"
++ elif [ -d /tmp ] ; then
++ TMPDIR=/tmp
++ fi
+ fi
+
+ ${ECHO_CMD} Use TMP dir ${TMPDIR}
diff --git a/net-im/coturn/files/coturn-4.6.0-openssl3.patch b/net-im/coturn/files/coturn-4.6.0-openssl3.patch
new file mode 100644
index 000000000000..19b88048af50
--- /dev/null
+++ b/net-im/coturn/files/coturn-4.6.0-openssl3.patch
@@ -0,0 +1,356 @@
+https://github.com/coturn/coturn/commit/9af9f6306ab73c3403f9e11086b1936e9148f7de
+https://github.com/coturn/coturn/commit/4ce784a8781ab086c150e2b9f5641b1a37fd9b31
+https://github.com/coturn/coturn/commit/9370bb742d976166a51032760da1ecedefb92267
+https://github.com/coturn/coturn/commit/d72a2a8920b80ce66b36e22b2c22f308ad06c424
+
+From 9af9f6306ab73c3403f9e11086b1936e9148f7de Mon Sep 17 00:00:00 2001
+From: Pavel Punsky <eakraly@users.noreply.github.com>
+Date: Wed, 14 Sep 2022 03:29:26 -0700
+Subject: [PATCH] Fix renegotiation flag for older version of openssl (#978)
+
+`SSL_OP_NO_RENEGOTIATION` is only supported in openssl-1.1.0 and above
+Older versions have `SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS `
+
+Fixes #977 and #952
+
+Test:
+Build in a docker container running running openssl-1.0.2g (ubuntu
+16.04) successfully (without the fix getting the same errors)
+--- a/src/apps/relay/dtls_listener.c
++++ b/src/apps/relay/dtls_listener.c
+@@ -295,8 +295,17 @@ static ioa_socket_handle dtls_server_input_handler(dtls_listener_relay_server_ty
+ SSL_set_accept_state(connecting_ssl);
+
+ SSL_set_bio(connecting_ssl, NULL, wbio);
+- SSL_set_options(connecting_ssl, SSL_OP_COOKIE_EXCHANGE | SSL_OP_NO_RENEGOTIATION);
+-
++ SSL_set_options(connecting_ssl, SSL_OP_COOKIE_EXCHANGE
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if defined(SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS)
++ | SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS
++#endif
++#else
++#if defined(SSL_OP_NO_RENEGOTIATION)
++ | SSL_OP_NO_RENEGOTIATION
++#endif
++#endif
++ );
+ SSL_set_max_cert_list(connecting_ssl, 655350);
+
+ ioa_socket_handle rc = dtls_accept_client_connection(server, s, connecting_ssl,
+@@ -581,7 +590,17 @@ static int create_new_connected_udp_socket(
+
+ SSL_set_bio(connecting_ssl, NULL, wbio);
+
+- SSL_set_options(connecting_ssl, SSL_OP_COOKIE_EXCHANGE | SSL_OP_NO_RENEGOTIATION);
++ SSL_set_options(connecting_ssl, SSL_OP_COOKIE_EXCHANGE
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if defined(SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS)
++ | SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS
++#endif
++#else
++#if defined(SSL_OP_NO_RENEGOTIATION)
++ | SSL_OP_NO_RENEGOTIATION
++#endif
++#endif
++ );
+
+ SSL_set_max_cert_list(connecting_ssl, 655350);
+ int rc = ssl_read(ret->fd, connecting_ssl, server->sm.m.sm.nd.nbh,
+--- a/src/apps/relay/ns_ioalib_engine_impl.c
++++ b/src/apps/relay/ns_ioalib_engine_impl.c
+@@ -1428,7 +1428,17 @@ static void set_socket_ssl(ioa_socket_handle s, SSL *ssl)
+ if(ssl) {
+ SSL_set_app_data(ssl,s);
+ SSL_set_info_callback(ssl, (ssl_info_callback_t)ssl_info_callback);
+- SSL_set_options(ssl, SSL_OP_NO_RENEGOTIATION);
++ SSL_set_options(ssl,
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if defined(SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS)
++ SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS
++#endif
++#else
++#if defined(SSL_OP_NO_RENEGOTIATION)
++ SSL_OP_NO_RENEGOTIATION
++#endif
++#endif
++ );
+ }
+ }
+ }
+
+From 4ce784a8781ab086c150e2b9f5641b1a37fd9b31 Mon Sep 17 00:00:00 2001
+From: Pavel Punsky <eakraly@users.noreply.github.com>
+Date: Fri, 16 Sep 2022 00:46:45 -0700
+Subject: [PATCH] Improve openssl3 and FIPS support (#955)
+
+openssl-3.0 deprecated some APIs and introduced new APIs instead:
+
+`SSL_get_peer_certificate ` -> `SSL_get1_peer_certificate `
+`FIPS_mode()`->`EVP_default_properties_is_fips_enabled()`
+`EVP_MD_CTX_set_flags()`->`EVP_default_properties_enable_fips()`
+specifically for enabling FIPS mode
+
+This change should workaround that by ifdef-ing old/new versions of
+openssl and APIs - so pre-3.0 use existing APIs (so not change there)
+and >=3.0 will use new APIs (whether it actually works or not is still
+TBD as this is just a first step in openssl-3.0 support)
+
+Should fix #886
+
+Test Plan:
+Run CI build that supports ubuntu-20.04 (openssl-1.1.1) and ubuntu-22.04
+(openssl-3.0.2)
+Both builds pass
+None of them have FIPS support (which for 1.1.x stays the same as
+before)
+
+Co-authored-by: Pavel Punsky <pavel.punsky@epicgames.com>
+--- a/src/apps/relay/ns_ioalib_engine_impl.c
++++ b/src/apps/relay/ns_ioalib_engine_impl.c
+@@ -1868,7 +1868,11 @@ int ssl_read(evutil_socket_t fd, SSL* ssl, ioa_network_buffer_handle nbh, int ve
+
+ } else if (!if1 && if2) {
+
++#if (OPENSSL_VERSION_NUMBER >= 0x30000000L)
++ if(verbose && SSL_get1_peer_certificate(ssl)) {
++#else
+ if(verbose && SSL_get_peer_certificate(ssl)) {
++#endif
+ printf("\n------------------------------------------------------------\n");
+ X509_NAME_print_ex_fp(stdout, X509_get_subject_name(SSL_get_peer_certificate(ssl)), 1,
+ XN_FLAG_MULTILINE);
+--- a/src/apps/uclient/startuclient.c
++++ b/src/apps/uclient/startuclient.c
+@@ -138,7 +138,11 @@ static SSL* tls_connect(ioa_socket_raw fd, ioa_addr *remote_addr, int *try_again
+ if (rc > 0) {
+ TURN_LOG_FUNC(TURN_LOG_LEVEL_INFO,"%s: client session connected with cipher %s, method=%s\n",__FUNCTION__,
+ SSL_get_cipher(ssl),turn_get_ssl_method(ssl,NULL));
++#if (OPENSSL_VERSION_NUMBER >= 0x30000000L)
++ if(clnet_verbose && SSL_get1_peer_certificate(ssl)) {
++#else
+ if(clnet_verbose && SSL_get_peer_certificate(ssl)) {
++#endif
+ TURN_LOG_FUNC(TURN_LOG_LEVEL_INFO, "------------------------------------------------------------\n");
+ X509_NAME_print_ex_fp(stdout, X509_get_subject_name(SSL_get_peer_certificate(ssl)), 1,
+ XN_FLAG_MULTILINE);
+--- a/src/client/ns_turn_msg.c
++++ b/src/client/ns_turn_msg.c
+@@ -248,12 +248,22 @@ int stun_produce_integrity_key_str(const uint8_t *uname, const uint8_t *realm, c
+ if (FIPS_mode()) {
+ EVP_MD_CTX_set_flags(&ctx,EVP_MD_CTX_FLAG_NON_FIPS_ALLOW);
+ }
+-#endif
++#endif // defined EVP_MD_CTX_FLAG_NON_FIPS_ALLOW && !defined(LIBRESSL_VERSION_NUMBER)
+ EVP_DigestInit_ex(&ctx,EVP_md5(), NULL);
+ EVP_DigestUpdate(&ctx,str,strl);
+ EVP_DigestFinal(&ctx,key,&keylen);
+ EVP_MD_CTX_cleanup(&ctx);
+-#else
++#elif OPENSSL_VERSION_NUMBER >= 0x30000000L
++ unsigned int keylen = 0;
++ EVP_MD_CTX *ctx = EVP_MD_CTX_new();
++ if (EVP_default_properties_is_fips_enabled(NULL)) {
++ EVP_default_properties_enable_fips(NULL, 0);
++ }
++ EVP_DigestInit_ex(ctx,EVP_md5(), NULL);
++ EVP_DigestUpdate(ctx,str,strl);
++ EVP_DigestFinal(ctx,key,&keylen);
++ EVP_MD_CTX_free(ctx);
++#else // OPENSSL_VERSION_NUMBER < 0x10100000L
+ unsigned int keylen = 0;
+ EVP_MD_CTX *ctx = EVP_MD_CTX_new();
+ #if defined EVP_MD_CTX_FLAG_NON_FIPS_ALLOW && ! defined(LIBRESSL_VERSION_NUMBER)
+@@ -265,7 +275,7 @@ int stun_produce_integrity_key_str(const uint8_t *uname, const uint8_t *realm, c
+ EVP_DigestUpdate(ctx,str,strl);
+ EVP_DigestFinal(ctx,key,&keylen);
+ EVP_MD_CTX_free(ctx);
+-#endif
++#endif // OPENSSL_VERSION_NUMBER < 0X10100000L
+ ret = 0;
+ }
+
+
+From 9370bb742d976166a51032760da1ecedefb92267 Mon Sep 17 00:00:00 2001
+From: Pavel Punsky <eakraly@users.noreply.github.com>
+Date: Fri, 16 Sep 2022 23:29:32 -0700
+Subject: [PATCH] Fix a warning (#988)
+
+There are too many defines that are, eventually, used in one place so
+just inlining.
+
+Current code generates following warning:
+```
+warning: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined]
+```
+
+With the fix there is no warning
+
+Co-authored-by: Pavel Punsky <pavel.punsky@epicgames.com>
+--- a/src/apps/relay/netengine.c
++++ b/src/apps/relay/netengine.c
+@@ -31,13 +31,7 @@
+ #include "mainrelay.h"
+
+ //////////// Backward compatibility with OpenSSL 1.0.x //////////////
+-#define HAVE_OPENSSL11_API (!(OPENSSL_VERSION_NUMBER < 0x10100001L || defined LIBRESSL_VERSION_NUMBER))
+-
+-#ifndef HAVE_SSL_CTX_UP_REF
+-#define HAVE_SSL_CTX_UP_REF HAVE_OPENSSL11_API
+-#endif
+-
+-#if !HAVE_SSL_CTX_UP_REF
++#if (OPENSSL_VERSION_NUMBER < 0x10100001L || defined LIBRESSL_VERSION_NUMBER)
+ #define SSL_CTX_up_ref(ctx) CRYPTO_add(&(ctx)->references, 1, CRYPTO_LOCK_SSL_CTX)
+ #endif
+
+
+From d72a2a8920b80ce66b36e22b2c22f308ad06c424 Mon Sep 17 00:00:00 2001
+From: Pavel Punsky <eakraly@users.noreply.github.com>
+Date: Mon, 24 Oct 2022 13:06:35 -0700
+Subject: [PATCH] Cleanup openssl initialization (#1012)
+
+Rewriting openssl initialization code (threading support to make it
+cleaner
+
+- Regroup functions so that there is one ifdef (for old code and new
+code)
+- Modern openssl (>1.0.2) does not need any synchornization routines so
+they are empty
+- Old openssl (<=1.0.2) now require `OPENSSL_THREADS` which allows
+running multiple threads in turnserver. Not having turnserver
+multi-threaded is a huge waste. `OPENSSL_THREADS` is now a requirement.
+
+
+Test Plan:
+- CI builds pass for openssl versions 1.0.2, 1.1.1, 3.0, including tests
+--- a/src/apps/relay/mainrelay.c
++++ b/src/apps/relay/mainrelay.c
+@@ -1345,7 +1345,6 @@ static void set_option(int c, char *value)
+ STRCPY(turn_params.relay_ifname, value);
+ break;
+ case 'm':
+-#if defined(OPENSSL_THREADS)
+ if(atoi(value)>MAX_NUMBER_OF_GENERAL_RELAY_SERVERS) {
+ TURN_LOG_FUNC(TURN_LOG_LEVEL_WARNING, "WARNING: max number of relay threads is 128.\n");
+ turn_params.general_relay_servers_number = MAX_NUMBER_OF_GENERAL_RELAY_SERVERS;
+@@ -1354,9 +1353,6 @@ static void set_option(int c, char *value)
+ } else {
+ turn_params.general_relay_servers_number = atoi(value);
+ }
+-#else
+- TURN_LOG_FUNC(TURN_LOG_LEVEL_WARNING, "WARNING: OpenSSL version is too old OR does not support threading,\n I am using single thread for relaying.\n");
+-#endif
+ break;
+ case 'd':
+ STRCPY(turn_params.listener_ifname, value);
+@@ -2645,9 +2641,8 @@ int main(int argc, char **argv)
+
+ ////////// OpenSSL locking ////////////////////////////////////////
+
+-#if defined(OPENSSL_THREADS)
+-
+-static char some_buffer[65536];
++#if defined(OPENSSL_THREADS)
++#if OPENSSL_VERSION_NUMBER < OPENSSL_VERSION_1_1_0
+
+ //array larger than anything that OpenSSL may need:
+ static pthread_mutex_t mutex_buf[256];
+@@ -2665,76 +2660,52 @@ void coturn_locking_function(int mode, int n, const char *file, int line) {
+ }
+ }
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+ void coturn_id_function(CRYPTO_THREADID *ctid);
+ void coturn_id_function(CRYPTO_THREADID *ctid)
+ {
+ UNUSED_ARG(ctid);
+ CRYPTO_THREADID_set_numeric(ctid, (unsigned long)pthread_self());
+ }
+-#else
+-unsigned long coturn_id_function(void);
+-unsigned long coturn_id_function(void)
+-{
+- return (unsigned long)pthread_self();
+-}
+-#endif
+-
+-#endif
+
+ static int THREAD_setup(void) {
+-
+-#if defined(OPENSSL_THREADS)
+-
+- int i;
+-
+- some_buffer[0] = 0;
+-
++ int i;
+ for (i = 0; i < CRYPTO_num_locks(); i++) {
+ pthread_mutex_init(&(mutex_buf[i]), NULL);
+ }
+
+ mutex_buf_initialized = 1;
+-
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L && OPENSSL_VERSION_NUMBER <= OPENSSL_VERSION_1_1_1
+ CRYPTO_THREADID_set_callback(coturn_id_function);
+-#else
+- CRYPTO_set_id_callback(coturn_id_function);
+-#endif
+-
+ CRYPTO_set_locking_callback(coturn_locking_function);
+-#endif
+-
+ return 1;
+ }
+
+ int THREAD_cleanup(void);
+ int THREAD_cleanup(void) {
++ int i;
+
+-#if defined(OPENSSL_THREADS)
++ if (!mutex_buf_initialized)
++ return 0;
+
+- int i;
+-
+- if (!mutex_buf_initialized)
+- return 0;
++ CRYPTO_THREADID_set_callback(NULL);
++ CRYPTO_set_locking_callback(NULL);
++ for (i = 0; i < CRYPTO_num_locks(); i++) {
++ pthread_mutex_destroy(&(mutex_buf[i]));
++ }
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10000000L && OPENSSL_VERSION_NUMBER <= OPENSSL_VERSION_1_1_1
+- CRYPTO_THREADID_set_callback(NULL);
++ mutex_buf_initialized = 0;
++ return 1;
++}
+ #else
+- CRYPTO_set_id_callback(NULL);
+-#endif
+-
+- CRYPTO_set_locking_callback(NULL);
+- for (i = 0; i < CRYPTO_num_locks(); i++) {
+- pthread_mutex_destroy(&(mutex_buf[i]));
+- }
+-
+- mutex_buf_initialized = 0;
+-
+-#endif
++static int THREAD_setup(void) {
++ return 1;
++}
+
+- return 1;
++int THREAD_cleanup(void);
++int THREAD_cleanup(void){
++ return 1;
+ }
++#endif /* OPENSSL_VERSION_NUMBER < OPENSSL_VERSION_1_1_0 */
++#endif /* defined(OPENSSL_THREADS) */
+
+ static void adjust_key_file_name(char *fn, const char* file_title, int critical)
+ {
+
diff --git a/net-im/coturn/metadata.xml b/net-im/coturn/metadata.xml
index 2baddb2216a4..1801b91d9921 100644
--- a/net-im/coturn/metadata.xml
+++ b/net-im/coturn/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>nativemad@gentoo.org</email>
- <name>Andreas Schuerch</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">coturn/coturn</remote-id>
</upstream>
diff --git a/net-im/cpop/cpop-0.0.4-r1.ebuild b/net-im/cpop/cpop-0.0.4-r2.ebuild
index b86f14d8e51d..77c21027edcc 100644
--- a/net-im/cpop/cpop-0.0.4-r1.ebuild
+++ b/net-im/cpop/cpop-0.0.4-r2.ebuild
@@ -1,8 +1,9 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-inherit eutils
+EAPI=8
+
+inherit autotools
DESCRIPTION="GTK+ network popup message client. Compatible with the jpop protocol"
HOMEPAGE="http://www.draxil.uklinux.net/hip/index.pl?page=cpop"
@@ -11,14 +12,23 @@ SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-RDEPEND="dev-libs/glib:2
- x11-libs/gtk+:2"
+RDEPEND="
+ dev-libs/glib:2
+ x11-libs/gtk+:2
+"
DEPEND="${RDEPEND}"
+PATCHES=(
+ "${FILESDIR}"/${P}-implicit-exit_memset_strlen.patch
+ "${FILESDIR}"/${P}-implicit-func-decls.patch
+)
+
src_prepare() {
- epatch "${FILESDIR}"/${P}-implicit-exit_memset_strlen.patch
+ default
+
+ # Clang 16, bug #900072
+ eautoreconf
}
src_install() {
diff --git a/net-im/cpop/files/cpop-0.0.4-implicit-exit_memset_strlen.patch b/net-im/cpop/files/cpop-0.0.4-implicit-exit_memset_strlen.patch
index 3ce224c2910a..d47bfcde9d84 100644
--- a/net-im/cpop/files/cpop-0.0.4-implicit-exit_memset_strlen.patch
+++ b/net-im/cpop/files/cpop-0.0.4-implicit-exit_memset_strlen.patch
@@ -5,8 +5,8 @@ pop_gui_client.c:58:4: warning: incompatible implicit declaration of built-in fu
pop_gui_client.c:72:27: warning: incompatible implicit declaration of built-in function ‘strlen’
pop_gui_client.c:128:3: warning: incompatible implicit declaration of built-in function ‘exit’
---- pop_client.c
-+++ pop_client.c
+--- a/pop_client.c
++++ b/pop_client.c
@@ -1,11 +1,11 @@
#include <stdio.h>
+#include <stdlib.h>
@@ -20,16 +20,16 @@ pop_gui_client.c:128:3: warning: incompatible implicit declaration of built-in f
#include <netdb.h>
#include "pop_common.h"
#include "pop_client.h"
---- pop_common.c
-+++ pop_common.c
+--- a/pop_common.c
++++ b/pop_common.c
@@ -1,4 +1,5 @@
#include <stdio.h>
+#include <stdlib.h>
void errquit(char *message)
{
perror(message);
---- pop_gui_client.c
-+++ pop_gui_client.c
+--- a/pop_gui_client.c
++++ b/pop_gui_client.c
@@ -1,3 +1,5 @@
+#include <stdlib.h>
+#include <string.h>
diff --git a/net-im/cpop/files/cpop-0.0.4-implicit-func-decls.patch b/net-im/cpop/files/cpop-0.0.4-implicit-func-decls.patch
new file mode 100644
index 000000000000..ff3977e18055
--- /dev/null
+++ b/net-im/cpop/files/cpop-0.0.4-implicit-func-decls.patch
@@ -0,0 +1,19 @@
+https://bugs.gentoo.org/885705
+--- a/pop_client.c
++++ b/pop_client.c
+@@ -2,6 +2,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/socket.h>
++#include <unistd.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ #include <errno.h>
+--- a/pop_common.h
++++ b/pop_common.h
+@@ -3,4 +3,5 @@
+ #define CP_MSGSIZE 2048
+ #define CP_PORT 3233
+ void errquit(char *message);
++void printquit(char *message);
+ #endif
diff --git a/net-im/cpop/metadata.xml b/net-im/cpop/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/net-im/cpop/metadata.xml
+++ b/net-im/cpop/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/net-im/dianara/metadata.xml b/net-im/dianara/metadata.xml
index f33e939c94d9..87eb3c5383c3 100644
--- a/net-im/dianara/metadata.xml
+++ b/net-im/dianara/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <bugs-to>https://savannah.nongnu.org/bugs/?group=dianara</bugs-to>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://savannah.nongnu.org/bugs/?group=dianara</bugs-to>
+ <remote-id type="savannah-nongnu">dianara</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/dino/Manifest b/net-im/dino/Manifest
index f126436b1b32..674adcabd18e 100644
--- a/net-im/dino/Manifest
+++ b/net-im/dino/Manifest
@@ -1 +1,2 @@
-DIST dino-0.1.0.tar.gz 441638 BLAKE2B 08f332d38af866eed1049fae7d0e207da5a3486fdaf07eb5327e7abf614ac4adc130fd8f2d9465d6cb248ecfe4b809e022a69c72df5879d98719d24635771b33 SHA512 b63bf87dbf7f728f038f22d0dba34770a06d7eb1be2ec249293ff876e16c151165add895ff3cb20a3216c3581d20e10634d454ee8b024b895012efb34f9d7de8
+DIST dino-0.4.2.tar.gz 882421 BLAKE2B 36c0487a19202506e4de69afd923991c912e82c974f61e787ff4af37a40133fdbdb02315e82f7e85ccb8b3cd7d734aed7f8508ca31c1ffec49674ef68f71793b SHA512 b5d5b9e2ab2ff24f53778303e5428ed0613537944cf5d9139aa7e13558ee40ffb1566c6e9267dd802938a6abf0f0d5fbe94ef17fb3e18a11d47cc0d040928d19
+DIST dino-0.4.3.tar.gz 883558 BLAKE2B 31ea5eafedcaabbc1ec99c72b5a0c1a6f80462ce3f8288b2d54d68106cfb9a31d3ac525660cd1ff7bf0faf2fbfdb2f47dd37672cc0f2b3283121fd364f670092 SHA512 c3e5e3ba05d7190206a8a3144002eac94f162525ab229edd420215eff3d5644293d0c8737266f0ed9f112313b2e6e83fb02fcc10d0f568fb5b2295238ebe78ea
diff --git a/net-im/dino/dino-0.1.0.ebuild b/net-im/dino/dino-0.1.0.ebuild
deleted file mode 100644
index 107f28ed4d27..000000000000
--- a/net-im/dino/dino-0.1.0.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-VALA_MIN_API_VERSION="0.34"
-inherit cmake-utils gnome2-utils vala xdg-utils
-
-DESCRIPTION="Modern Jabber/XMPP Client using GTK+/Vala"
-HOMEPAGE="https://dino.im"
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="+gpg +http +omemo"
-
-MY_REPO_URI="https://github.com/dino/dino"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="${MY_REPO_URI}.git"
- inherit git-r3
-else
- KEYWORDS="~amd64"
- SRC_URI="${MY_REPO_URI}/releases/download/v${PV}/${P}.tar.gz"
-fi
-
-RDEPEND="
- dev-db/sqlite:3
- dev-libs/glib:2
- dev-libs/icu
- dev-libs/libgee:0.8
- net-libs/glib-networking
- ~net-libs/libsignal-protocol-c-2.3.2
- x11-libs/cairo
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3
- x11-libs/pango
- gpg? ( app-crypt/gpgme:1 )
- http? ( net-libs/libsoup:2.4 )
- omemo? (
- dev-libs/libgcrypt:0
- media-gfx/qrencode
- )
-"
-DEPEND="
- $(vala_depend)
- ${RDEPEND}
- sys-devel/gettext
-"
-
-src_prepare() {
- cmake-utils_src_prepare
- vala_src_prepare
-}
-
-src_configure() {
- local disabled_plugins=(
- $(usex gpg "" "openpgp")
- $(usex omemo "" "omemo")
- $(usex http "" "http-files")
- )
- local mycmakeargs+=(
- "-DDISABLED_PLUGINS=$(local IFS=";"; echo "${disabled_plugins[*]}")"
- "-DVALA_EXECUTABLE=${VALAC}"
- )
-
- if has test ${FEATURES}; then
- mycmakeargs+=("-DBUILD_TESTS=yes")
- fi
-
- cmake-utils_src_configure
-}
-
-src_test() {
- "${BUILD_DIR}"/xmpp-vala-test || die
-}
-
-update_caches() {
- gnome2_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- update_caches
-}
-
-pkg_postrm() {
- update_caches
-}
diff --git a/net-im/dino/dino-0.4.2-r2.ebuild b/net-im/dino/dino-0.4.2-r2.ebuild
new file mode 100644
index 000000000000..de4977426bc8
--- /dev/null
+++ b/net-im/dino/dino-0.4.2-r2.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake vala xdg readme.gentoo-r1
+
+DESCRIPTION="Modern Jabber/XMPP Client using GTK+/Vala"
+HOMEPAGE="https://dino.im"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+gpg +http +omemo +notification-sound +rtp test"
+RESTRICT="!test? ( test )"
+
+MY_REPO_URI="https://github.com/dino/dino"
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="${MY_REPO_URI}.git"
+ inherit git-r3
+else
+ KEYWORDS="amd64 ~arm64"
+ SRC_URI="${MY_REPO_URI}/releases/download/v${PV}/${P}.tar.gz"
+fi
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/icu:=
+ dev-libs/libgee:0.8=
+ gui-libs/gtk:4
+ >=gui-libs/libadwaita-1.2.0:1[vala]
+ media-libs/graphene
+ net-libs/glib-networking
+ net-libs/gnutls:=
+ >=net-libs/libnice-0.1.15
+ net-libs/libsignal-protocol-c
+ net-libs/libsrtp:2=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango
+ gpg? ( app-crypt/gpgme:= )
+ http? ( net-libs/libsoup:2.4 )
+ notification-sound? ( media-libs/libcanberra:0[sound] )
+ omemo? (
+ dev-libs/libgcrypt:=
+ media-gfx/qrencode:=
+ )
+ rtp? (
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ media-libs/webrtc-audio-processing:0
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ media-libs/gst-plugins-base
+ media-libs/gstreamer
+"
+BDEPEND="
+ sys-devel/gettext
+ $(vala_depend)
+"
+
+src_configure() {
+ vala_setup
+
+ local disabled_plugins=(
+ $(usex gpg "" "openpgp")
+ $(usex omemo "" "omemo")
+ $(usex http "" "http-files")
+ $(usex rtp "" rtp)
+ )
+ local enabled_plugins=(
+ $(usex notification-sound "notification-sound" "")
+ )
+ local mycmakeargs=(
+ "-DENABLED_PLUGINS=$(local IFS=";"; echo "${enabled_plugins[*]}")"
+ "-DDISABLED_PLUGINS=$(local IFS=";"; echo "${disabled_plugins[*]}")"
+ "-DVALA_EXECUTABLE=${VALAC}"
+ "-DSOUP_VERSION=2"
+ "-DBUILD_TESTS=$(usex test)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ "${BUILD_DIR}"/xmpp-vala-test || die
+}
+
+src_install() {
+ cmake_src_install
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+}
diff --git a/net-im/dino/dino-0.4.3-r1.ebuild b/net-im/dino/dino-0.4.3-r1.ebuild
new file mode 100644
index 000000000000..0badcf1fd992
--- /dev/null
+++ b/net-im/dino/dino-0.4.3-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake vala xdg readme.gentoo-r1
+
+DESCRIPTION="Modern Jabber/XMPP Client using GTK+/Vala"
+HOMEPAGE="https://dino.im"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+gpg +http +omemo +notification-sound +rtp test"
+RESTRICT="!test? ( test )"
+
+MY_REPO_URI="https://github.com/dino/dino"
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="${MY_REPO_URI}.git"
+ inherit git-r3
+else
+ KEYWORDS="~amd64 ~arm64"
+ SRC_URI="${MY_REPO_URI}/releases/download/v${PV}/${P}.tar.gz"
+fi
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/icu:=
+ dev-libs/libgee:0.8=
+ gui-libs/gtk:4
+ >=gui-libs/libadwaita-1.2.0:1[vala]
+ media-libs/graphene
+ net-libs/glib-networking
+ net-libs/gnutls:=
+ >=net-libs/libnice-0.1.15
+ net-libs/libsignal-protocol-c
+ net-libs/libsrtp:2=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango
+ gpg? ( app-crypt/gpgme:= )
+ http? ( net-libs/libsoup:2.4 )
+ notification-sound? ( media-libs/libcanberra:0[sound] )
+ omemo? (
+ dev-libs/libgcrypt:=
+ media-gfx/qrencode:=
+ )
+ rtp? (
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ media-libs/webrtc-audio-processing:0
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ media-libs/gst-plugins-base
+ media-libs/gstreamer
+"
+BDEPEND="
+ sys-devel/gettext
+ $(vala_depend)
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-c99.patch
+)
+
+src_configure() {
+ vala_setup
+
+ local disabled_plugins=(
+ $(usex gpg "" "openpgp")
+ $(usex omemo "" "omemo")
+ $(usex http "" "http-files")
+ $(usex rtp "" rtp)
+ )
+ local enabled_plugins=(
+ $(usex notification-sound "notification-sound" "")
+ )
+ local mycmakeargs=(
+ "-DENABLED_PLUGINS=$(local IFS=";"; echo "${enabled_plugins[*]}")"
+ "-DDISABLED_PLUGINS=$(local IFS=";"; echo "${disabled_plugins[*]}")"
+ "-DVALA_EXECUTABLE=${VALAC}"
+ "-DSOUP_VERSION=2"
+ "-DBUILD_TESTS=$(usex test)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ "${BUILD_DIR}"/xmpp-vala-test || die
+}
+
+src_install() {
+ cmake_src_install
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+}
diff --git a/net-im/dino/dino-0.4.3.ebuild b/net-im/dino/dino-0.4.3.ebuild
new file mode 100644
index 000000000000..443a60ca974f
--- /dev/null
+++ b/net-im/dino/dino-0.4.3.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake vala xdg readme.gentoo-r1
+
+DESCRIPTION="Modern Jabber/XMPP Client using GTK+/Vala"
+HOMEPAGE="https://dino.im"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+gpg +http +omemo +notification-sound +rtp test"
+RESTRICT="!test? ( test )"
+
+MY_REPO_URI="https://github.com/dino/dino"
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="${MY_REPO_URI}.git"
+ inherit git-r3
+else
+ KEYWORDS="~amd64 ~arm64"
+ SRC_URI="${MY_REPO_URI}/releases/download/v${PV}/${P}.tar.gz"
+fi
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/icu:=
+ dev-libs/libgee:0.8=
+ gui-libs/gtk:4
+ >=gui-libs/libadwaita-1.2.0:1[vala]
+ media-libs/graphene
+ net-libs/glib-networking
+ net-libs/gnutls:=
+ >=net-libs/libnice-0.1.15
+ net-libs/libsignal-protocol-c
+ net-libs/libsrtp:2=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango
+ gpg? ( app-crypt/gpgme:= )
+ http? ( net-libs/libsoup:2.4 )
+ notification-sound? ( media-libs/libcanberra:0[sound] )
+ omemo? (
+ dev-libs/libgcrypt:=
+ media-gfx/qrencode:=
+ )
+ rtp? (
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ media-libs/webrtc-audio-processing:0
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ media-libs/gst-plugins-base
+ media-libs/gstreamer
+"
+BDEPEND="
+ sys-devel/gettext
+ $(vala_depend)
+"
+
+src_configure() {
+ vala_setup
+
+ local disabled_plugins=(
+ $(usex gpg "" "openpgp")
+ $(usex omemo "" "omemo")
+ $(usex http "" "http-files")
+ $(usex rtp "" rtp)
+ )
+ local enabled_plugins=(
+ $(usex notification-sound "notification-sound" "")
+ )
+ local mycmakeargs=(
+ "-DENABLED_PLUGINS=$(local IFS=";"; echo "${enabled_plugins[*]}")"
+ "-DDISABLED_PLUGINS=$(local IFS=";"; echo "${disabled_plugins[*]}")"
+ "-DVALA_EXECUTABLE=${VALAC}"
+ "-DSOUP_VERSION=2"
+ "-DBUILD_TESTS=$(usex test)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ "${BUILD_DIR}"/xmpp-vala-test || die
+}
+
+src_install() {
+ cmake_src_install
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+}
diff --git a/net-im/dino/dino-9999.ebuild b/net-im/dino/dino-9999.ebuild
index 937678aeb91c..443a60ca974f 100644
--- a/net-im/dino/dino-9999.ebuild
+++ b/net-im/dino/dino-9999.ebuild
@@ -1,87 +1,99 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-CMAKE_MAKEFILE_GENERATOR="ninja"
-VALA_MIN_API_VERSION="0.34"
-inherit cmake-utils gnome2-utils vala xdg-utils
+inherit cmake vala xdg readme.gentoo-r1
DESCRIPTION="Modern Jabber/XMPP Client using GTK+/Vala"
HOMEPAGE="https://dino.im"
+
LICENSE="GPL-3"
SLOT="0"
-IUSE="+gpg +http +omemo"
+IUSE="+gpg +http +omemo +notification-sound +rtp test"
+RESTRICT="!test? ( test )"
MY_REPO_URI="https://github.com/dino/dino"
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="${MY_REPO_URI}.git"
inherit git-r3
else
- KEYWORDS="~amd64"
+ KEYWORDS="~amd64 ~arm64"
SRC_URI="${MY_REPO_URI}/releases/download/v${PV}/${P}.tar.gz"
fi
RDEPEND="
dev-db/sqlite:3
dev-libs/glib:2
- dev-libs/icu
- dev-libs/libgee:0.8
+ dev-libs/icu:=
+ dev-libs/libgee:0.8=
+ gui-libs/gtk:4
+ >=gui-libs/libadwaita-1.2.0:1[vala]
+ media-libs/graphene
net-libs/glib-networking
+ net-libs/gnutls:=
+ >=net-libs/libnice-0.1.15
net-libs/libsignal-protocol-c
+ net-libs/libsrtp:2=
x11-libs/cairo
x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3
x11-libs/pango
- gpg? ( app-crypt/gpgme:1 )
+ gpg? ( app-crypt/gpgme:= )
http? ( net-libs/libsoup:2.4 )
+ notification-sound? ( media-libs/libcanberra:0[sound] )
omemo? (
- dev-libs/libgcrypt:0
- media-gfx/qrencode
+ dev-libs/libgcrypt:=
+ media-gfx/qrencode:=
+ )
+ rtp? (
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ media-libs/webrtc-audio-processing:0
)
"
DEPEND="
- $(vala_depend)
${RDEPEND}
+ media-libs/gst-plugins-base
+ media-libs/gstreamer
+"
+BDEPEND="
sys-devel/gettext
+ $(vala_depend)
"
-src_prepare() {
- cmake-utils_src_prepare
- vala_src_prepare
-}
-
src_configure() {
+ vala_setup
+
local disabled_plugins=(
$(usex gpg "" "openpgp")
$(usex omemo "" "omemo")
$(usex http "" "http-files")
+ $(usex rtp "" rtp)
+ )
+ local enabled_plugins=(
+ $(usex notification-sound "notification-sound" "")
)
- local mycmakeargs+=(
+ local mycmakeargs=(
+ "-DENABLED_PLUGINS=$(local IFS=";"; echo "${enabled_plugins[*]}")"
"-DDISABLED_PLUGINS=$(local IFS=";"; echo "${disabled_plugins[*]}")"
"-DVALA_EXECUTABLE=${VALAC}"
+ "-DSOUP_VERSION=2"
+ "-DBUILD_TESTS=$(usex test)"
)
- if has test ${FEATURES}; then
- mycmakeargs+=("-DBUILD_TESTS=yes")
- fi
-
- cmake-utils_src_configure
+ cmake_src_configure
}
src_test() {
"${BUILD_DIR}"/xmpp-vala-test || die
}
-update_caches() {
- gnome2_icon_cache_update
- xdg_desktop_database_update
+src_install() {
+ cmake_src_install
+ readme.gentoo_create_doc
}
pkg_postinst() {
- update_caches
-}
-
-pkg_postrm() {
- update_caches
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
}
diff --git a/net-im/dino/files/README.gentoo b/net-im/dino/files/README.gentoo
new file mode 100644
index 000000000000..b51e4391562e
--- /dev/null
+++ b/net-im/dino/files/README.gentoo
@@ -0,0 +1,23 @@
+To enable video calls, install the following packages.
+
+Transport level security:
+- gst-plugins-srtp
+- gst-plugins-dtls
+
+Peer to peer connection reliability:
+- gst-plugins-libnice
+
+Video output into a window:
+- gst-plugins-gtk
+
+At least one codec is needed in common with the other end of the call, as they
+are negotiated when the call begins.
+
+Video codecs:
+- gst-plugins-x264
+- gst-plugins-vpx
+
+Audio codecs:
+- gst-plugins-good
+- gst-plugins-speex
+- gst-plugins-opus
diff --git a/net-im/dino/files/dino-0.4.3-c99.patch b/net-im/dino/files/dino-0.4.3-c99.patch
new file mode 100644
index 000000000000..d21ff5e4adec
--- /dev/null
+++ b/net-im/dino/files/dino-0.4.3-c99.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/926073
+https://github.com/dino/dino/commit/0c45387bf903e5b0d02502d27642dd2a78aa6539
+
+From 0c45387bf903e5b0d02502d27642dd2a78aa6539 Mon Sep 17 00:00:00 2001
+From: fiaxh <git@lightrise.org>
+Date: Sat, 7 Oct 2023 13:56:38 +0200
+Subject: [PATCH] Fix implicit-function-declaration compiler warnings
+
+--- a/xmpp-vala/src/module/xep/0384_omemo/omemo_encryptor.vala
++++ b/xmpp-vala/src/module/xep/0384_omemo/omemo_encryptor.vala
+@@ -72,27 +72,27 @@ namespace Xmpp.Xep.Omemo {
+ }
+
+ public class EncryptionResult {
+- public int lost { get; internal set; }
+- public int success { get; internal set; }
+- public int unknown { get; internal set; }
+- public int failure { get; internal set; }
++ public int lost { get; set; }
++ public int success { get; set; }
++ public int unknown { get; set; }
++ public int failure { get; set; }
+ }
+
+ public class EncryptState {
+- public bool encrypted { get; internal set; }
+- public int other_devices { get; internal set; }
+- public int other_success { get; internal set; }
+- public int other_lost { get; internal set; }
+- public int other_unknown { get; internal set; }
+- public int other_failure { get; internal set; }
+- public int other_waiting_lists { get; internal set; }
+-
+- public int own_devices { get; internal set; }
+- public int own_success { get; internal set; }
+- public int own_lost { get; internal set; }
+- public int own_unknown { get; internal set; }
+- public int own_failure { get; internal set; }
+- public bool own_list { get; internal set; }
++ public bool encrypted { get; set; }
++ public int other_devices { get; set; }
++ public int other_success { get; set; }
++ public int other_lost { get; set; }
++ public int other_unknown { get; set; }
++ public int other_failure { get; set; }
++ public int other_waiting_lists { get; set; }
++
++ public int own_devices { get; set; }
++ public int own_success { get; set; }
++ public int own_lost { get; set; }
++ public int own_unknown { get; set; }
++ public int own_failure { get; set; }
++ public bool own_list { get; set; }
+
+ public void add_result(EncryptionResult enc_res, bool own) {
+ if (own) {
+
diff --git a/net-im/dino/metadata.xml b/net-im/dino/metadata.xml
index 05d64fd0a3f9..8798c1dab8d4 100644
--- a/net-im/dino/metadata.xml
+++ b/net-im/dino/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>andrey_utkin@gentoo.org</email>
- <name>Andrey Utkin</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<bugs-to>https://github.com/dino/dino/issues</bugs-to>
<remote-id type="github">dino/dino</remote-id>
@@ -13,5 +10,7 @@
<flag name="gpg">Enable OpenPGP encryption plugin</flag>
<flag name="http">Enable HTTP file upload plugin</flag>
<flag name="omemo">Enable OMEMO encryption plugin</flag>
+ <flag name="notification-sound">notification sounds plugin</flag>
+ <flag name="rtp">Enable Audio/Video calls over XMPP using RTP</flag>
</use>
</pkgmetadata>
diff --git a/net-im/discord-bin/Manifest b/net-im/discord-bin/Manifest
deleted file mode 100644
index 3b928a6bdd27..000000000000
--- a/net-im/discord-bin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST discord-0.0.10.deb 68310032 BLAKE2B d7b192e78ab0f7ec1ca9c2d2358d5a4a32e543507b3a7553de618af322feaf180228569489d8e14e8316234067dcbd4aaff0cb32adb60b43bbd51a321ab0b7ec SHA512 f9b901b0a8ee2b0fb70e6671231ea8fcc41b60d7499e03d29026896a96f5c2d2e3ec992b5d0db7f9ee44fefccc2c5457a76c64a643a7d51a4c9d4f994b9c5d8d
diff --git a/net-im/discord-bin/discord-bin-0.0.10.ebuild b/net-im/discord-bin/discord-bin-0.0.10.ebuild
deleted file mode 100644
index 8299f57aaacf..000000000000
--- a/net-im/discord-bin/discord-bin-0.0.10.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN=${PN/-bin/}
-MY_BIN="D${MY_PN/d/}"
-
-inherit desktop pax-utils unpacker xdg-utils
-
-DESCRIPTION="All-in-one voice and text chat for gamers"
-HOMEPAGE="https://discordapp.com"
-SRC_URI="https://dl.discordapp.net/apps/linux/${PV}/${MY_PN}-${PV}.deb"
-
-LICENSE="all-rights-reserved"
-SLOT="0"
-KEYWORDS="~amd64"
-RESTRICT="mirror bindist"
-
-RDEPEND="
- dev-libs/atk
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/nspr
- dev-libs/nss
- media-libs/alsa-lib
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- net-print/cups
- sys-apps/dbus
- sys-libs/libcxx
- x11-libs/cairo
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3
- x11-libs/libX11
- x11-libs/libXScrnSaver
- x11-libs/libxcb
- x11-libs/libXcomposite
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXtst
- x11-libs/pango
-"
-
-S=${WORKDIR}
-
-QA_PREBUILT="
- opt/discord/${MY_BIN}
- opt/discord/libEGL.so
- opt/discord/libGLESv2.so
- opt/discord/swiftshader/libEGL.so
- opt/discord/swiftshader/libGLESv2.so
- opt/discord/libVkICD_mock_icd.so
- opt/discord/libffmpeg.so
-"
-
-src_prepare() {
- default
-
- sed -i \
- -e "s:/usr/share/discord/Discord:/opt/${MY_PN}/${MY_BIN}:g" \
- usr/share/${MY_PN}/${MY_PN}.desktop || die
-}
-
-src_install() {
- doicon usr/share/${MY_PN}/${MY_PN}.png
- domenu usr/share/${MY_PN}/${MY_PN}.desktop
-
- insinto /opt/${MY_PN}
- doins -r usr/share/${MY_PN}/.
- fperms +x /opt/${MY_PN}/${MY_BIN}
- dosym ../../opt/${MY_PN}/${MY_BIN} usr/bin/${MY_PN}
-
- pax-mark -m "${ED}"/opt/${MY_PN}/${MY_PN}
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_mimeinfo_database_update
- xdg_icon_cache_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_mimeinfo_database_update
- xdg_icon_cache_update
-}
diff --git a/net-im/discord-bin/metadata.xml b/net-im/discord-bin/metadata.xml
deleted file mode 100644
index 15fd2f3a22be..000000000000
--- a/net-im/discord-bin/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>johu@gentoo.org</email>
- <name>Johannes Huber</name>
- </maintainer>
-</pkgmetadata>
diff --git a/net-im/discord/Manifest b/net-im/discord/Manifest
new file mode 100644
index 000000000000..a8dd8ec9b5d2
--- /dev/null
+++ b/net-im/discord/Manifest
@@ -0,0 +1 @@
+DIST discord-0.0.52.tar.gz 101426470 BLAKE2B 631c85111a29b12227835485c94f0f0c443132f5fb613fcf3a1749271257f95ca4ea9cdcdac16181f764d24f50b4206c3a3523d93dccc793d2a7aa48464b1f2e SHA512 42ff4b59a0dd846f06a297a1a8b5a1e28f37daa6951b4ce597d103492458c5ae90f69545908cd41238c5ed91b249ad2dd9b9cec3ef4feeb9ad22245c692eaa72
diff --git a/net-im/discord/discord-0.0.52.ebuild b/net-im/discord/discord-0.0.52.ebuild
new file mode 100644
index 000000000000..fefed5b524d7
--- /dev/null
+++ b/net-im/discord/discord-0.0.52.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN/-bin/}"
+MY_PV="${PV/-r*/}"
+
+CHROMIUM_LANGS="
+ af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
+ hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
+ sw ta te th tr uk ur vi zh-CN zh-TW
+"
+
+inherit chromium-2 desktop linux-info optfeature unpacker xdg
+
+DESCRIPTION="All-in-one voice and text chat for gamers"
+HOMEPAGE="https://discordapp.com"
+SRC_URI="https://dl.discordapp.net/apps/linux/${MY_PV}/${MY_PN}-${MY_PV}.tar.gz"
+S="${WORKDIR}/${MY_PN^}"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="amd64"
+
+IUSE="appindicator +seccomp"
+RESTRICT="bindist mirror strip test"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/libsecret
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/mesa[gbm(+)]
+ net-print/cups
+ sys-apps/dbus
+ sys-apps/util-linux
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/libdrm
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ x11-libs/libXScrnSaver
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/libxshmfence
+ x11-libs/pango
+ appindicator? ( dev-libs/libayatana-appindicator )
+"
+
+DESTDIR="/opt/${MY_PN}"
+
+QA_PREBUILT="*"
+
+CONFIG_CHECK="~USER_NS"
+
+src_unpack() {
+ unpack ${MY_PN}-${MY_PV}.tar.gz
+}
+
+src_configure() {
+ default
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_prepare() {
+ default
+ # remove post-install script
+ rm postinst.sh || die "the removal of the unneeded post-install script failed"
+ # cleanup languages
+ pushd "locales/" >/dev/null || die "location change for language cleanup failed"
+ chromium_remove_language_paks
+ popd >/dev/null || die "location reset for language cleanup failed"
+ # fix .desktop exec location
+ sed -i "/Exec/s:/usr/share/discord/Discord:${DESTDIR}/${MY_PN^}:" \
+ "${MY_PN}.desktop" ||
+ die "fixing of exec location on .desktop failed"
+ # USE seccomp
+ if ! use seccomp; then
+ sed -i '/Exec/s/Discord/Discord --disable-seccomp-filter-sandbox/' \
+ "${MY_PN}.desktop" ||
+ die "sed failed for seccomp"
+ fi
+}
+
+src_install() {
+ doicon -s 256 "${MY_PN}.png"
+
+ # install .desktop file
+ domenu "${MY_PN}.desktop"
+
+ exeinto "${DESTDIR}"
+
+ doexe "${MY_PN^}" chrome-sandbox libEGL.so libffmpeg.so libGLESv2.so libvk_swiftshader.so
+
+ insinto "${DESTDIR}"
+ doins chrome_100_percent.pak chrome_200_percent.pak icudtl.dat resources.pak snapshot_blob.bin v8_context_snapshot.bin
+ insopts -m0755
+ doins -r locales resources
+
+ # Chrome-sandbox requires the setuid bit to be specifically set.
+ # see https://github.com/electron/electron/issues/17972
+ fowners root "${DESTDIR}/chrome-sandbox"
+ fperms 4711 "${DESTDIR}/chrome-sandbox"
+
+ # Crashpad is included in the package once in a while and when it does, it must be installed.
+ # See #903616 and #890595
+ [[ -x chrome_crashpad_handler ]] && doins chrome_crashpad_handler
+
+ dosym "${DESTDIR}/${MY_PN^}" "/usr/bin/${MY_PN}"
+
+ # https://bugs.gentoo.org/898912
+ if use appindicator; then
+ dosym ../../usr/lib64/libayatana-appindicator3.so /opt/discord/libappindicator3.so
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ optfeature_header "Install the following packages for additional support:"
+ optfeature "sound support" \
+ media-sound/pulseaudio media-sound/apulse[sdk] media-video/pipewire
+ optfeature "emoji support" media-fonts/noto-emoji
+}
diff --git a/net-im/discord/metadata.xml b/net-im/discord/metadata.xml
new file mode 100644
index 000000000000..f5ecac7fcf8c
--- /dev/null
+++ b/net-im/discord/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>ran.dall@icloud.com</email>
+ <name>Randall T. Vasquez</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sarnex@gentoo.org</email>
+ <name>Nick Sarnie</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-im/ejabberd/Manifest b/net-im/ejabberd/Manifest
index 42042e3e5ded..87fa8a24c949 100644
--- a/net-im/ejabberd/Manifest
+++ b/net-im/ejabberd/Manifest
@@ -1,3 +1,8 @@
-DIST ejabberd-17.04.tar.gz 1690441 BLAKE2B 2d31f1f0a393c6531653a55021b9deb729357bb53e86e85b85796a65f505257bcf7a14b0d168af2d13a6820e1524e1164ea7f17797df23ae41d7a8379f9e2066 SHA512 03467434dba92bd1ff2f70d78aa8fcf86fc73cb52aaaa73e4947229e1d14225e7b0d0133c3da7c8efe4c9db13aab932f40f757be46b120d0f280f96d62c203d7
-DIST ejabberd-20.03.tar.gz 2006603 BLAKE2B 67fa7d86e6802f24e783e91a8cb498375ca615bf22422ebe8bf630eb721e50574f468cfe25271172ebdfdca0c1df24dc6dd7f96a289153a017c32eb82af06d82 SHA512 f3ab666d9ffa596386ef121161dc7eeedca85cb7f5d290ad0882cd9557ea4166467bce9c082bdb423f932b44999c8e887d6a386d53564febf360f306feda3952
-DIST ejabberd-20.04.tar.gz 2022319 BLAKE2B 02ce782bc58a808f38dff58715204059c51762187abff7f5c77ff08eb13330b66485234eb2204c4336770d75303417ee74077466a07e701aa512158ff641a578 SHA512 7c478bbd73577e06f21e26804f4eb57deb52a0ebdd12e45034e810314cb73bb2ec60b55c6f266271eb45d5ebc135a39c498a29706d6d1f5087fd2b509a8844ca
+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
+DIST ejabberd-24.02-fix-ejabberdctl.patch 1945 BLAKE2B 3e9e690802dd201aaba50b16435c98e64b52bfa2c77dd054c4db538f8bd9035386282e43b3c51fa444119901addeb2c3174d55d66a515847f80771e350e0a808 SHA512 0a6780915177fa4012a194d3fa755a812f0bed5d446df630c46834953aad54679450ff9fdaa1aa7fb415de5bb905a3dc2b28c65b7b32f0fd83cd99634bb5073d
+DIST ejabberd-24.02-set-ejabberd-opts.patch 1508 BLAKE2B 1692fb54b3aeb9838f057d32ebebffbcca5761c820d95a377b257966094e973465740b224d17bebdae0a4f3d0b5ebe35c9c1b005217a3e9baae69fc2511c69aa SHA512 aa7f13be15ec4cb0a9c17e5c1519d5fd94ccee75b46e3a8ee1de39e23000c7faad530208c049dd4a290be18b8b9f1c866584a9abf3f288a8f2fd66c2d72e4fa5
+DIST ejabberd-24.02.tar.gz 2531049 BLAKE2B 6d18393dd909ef580fdcc173fb927a1302f7d444e5587c30f36e5bbfe7634b61c14e06d31f386123ec8732f0c49180a10b0abbd7dea42589d1d0ec9df54ca0f4 SHA512 43dcf1c0f1a2a0390de9edfa24705be6b5bcfdc83b307c175effeae043b4a67dd00c4930c5e43fda98c7c3e0060fac7198313cd27b7962a8997e006ef255df0c
diff --git a/net-im/ejabberd/ejabberd-17.04-r2.ebuild b/net-im/ejabberd/ejabberd-17.04-r2.ebuild
deleted file mode 100644
index 6a2041af6c58..000000000000
--- a/net-im/ejabberd/ejabberd-17.04-r2.ebuild
+++ /dev/null
@@ -1,331 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-SSL_CERT_MANDATORY=1
-
-inherit autotools eutils pam rebar ssl-cert systemd
-
-DESCRIPTION="Robust, scalable and extensible XMPP server"
-HOMEPAGE="https://www.ejabberd.im/ https://github.com/processone/ejabberd/"
-SRC_URI="https://www.process-one.net/downloads/${PN}/${PV}/${P}.tgz
- -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~ia64 ppc ~sparc x86"
-REQUIRED_USE="mssql? ( odbc )"
-# TODO: Add 'tools' flag.
-IUSE="captcha debug full-xml hipe ldap mssql mysql nls odbc pam postgres redis
- riak roster-gw sqlite zlib"
-
-RESTRICT="test"
-
-# TODO: Add dependencies for 'tools' flag enabled.
-# TODO: tools? (
-# TODO: >=dev-erlang/meck-0.8.4
-# TODO: >=dev-erlang/moka-1.0.5b
-# TODO: )
-CDEPEND="
- >=dev-erlang/cache_tab-1.0.7
- >=dev-erlang/esip-1.0.11
- >=dev-erlang/fast_tls-1.0.11
- >=dev-erlang/fast_xml-1.1.21
- >=dev-erlang/fast_yaml-1.0.9
- >=dev-erlang/jiffy-0.14.8
- >=dev-erlang/lager-3.2.1
- >=dev-erlang/luerl-0.2
- >=dev-erlang/p1_oauth2-0.6.1
- >=dev-erlang/p1_utils-1.0.8
- >=dev-erlang/stringprep-1.0.8
- >=dev-erlang/stun-1.0.10
- >=dev-erlang/xmpp-1.1.9
- <dev-erlang/xmpp-1.2.0
- >=dev-lang/erlang-17.1[hipe?,odbc?,ssl]
- >=net-im/jabber-base-0.01
- ldap? ( =net-nds/openldap-2* )
- mysql? ( >=dev-erlang/p1_mysql-1.0.2 )
- nls? ( >=dev-erlang/iconv-1.0.4 )
- odbc? ( dev-db/unixODBC )
- pam? ( >=dev-erlang/epam-1.0.2 )
- postgres? ( >=dev-erlang/p1_pgsql-1.1.2 )
- redis? ( >=dev-erlang/eredis-1.0.8 )
- riak? (
- >=dev-erlang/hamcrest-0.1.0_p20150103
- >=dev-erlang/riakc-2.4.1
- )
- sqlite? ( >=dev-erlang/sqlite3-1.1.5 )
- zlib? ( >=dev-erlang/ezlib-1.0.2 )"
-DEPEND="${CDEPEND}
- >=sys-apps/gawk-4.1"
-RDEPEND="${CDEPEND}
- captcha? ( media-gfx/imagemagick[truetype,png] )"
-
-DOCS=( README )
-PATCHES=( "${FILESDIR}/${P}-ejabberdctl.patch"
- "${FILESDIR}/${P}-0001-Don-t-configure-or-compile-deps.patch"
- "${FILESDIR}/${P}-0002-Dont-overwrite-service-file.patch" )
-
-EJABBERD_CERT="${EPREFIX}/etc/ssl/ejabberd/server.pem"
-# Paths in net-im/jabber-base
-JABBER_ETC="${EPREFIX}/etc/jabber"
-JABBER_LOG="${EPREFIX}/var/log/jabber"
-JABBER_SPOOL="${EPREFIX}/var/spool/jabber"
-
-# Adjust example configuration file to Gentoo.
-# - Use our sample certificates.
-# - Correct PAM service name.
-adjust_config() {
- sed -e "s|\"/path/to/ssl.pem\"|\"${EJABBERD_CERT}\"|g" \
- -e "s|\"pamservicename\"|\"xmpp\"|" \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to adjust example config'
-}
-
-# Set paths to ejabberd lib directory consistently to point always to directory
-# suffixed with version.
-correct_ejabberd_paths() {
- sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${P}:}" \
- -i "${S}/Makefile.in" \
- || die 'failed to set ejabberd path in Makefile.in'
- sed -e "/EJABBERD_BIN_PATH=/{s:ejabberd:${P}:}" \
- -i "${S}/ejabberdctl.template" \
- || die 'failed to set ejabberd path in ejabberdctl.template'
- sed -e 's|\(captcha_cmd:[[:space:]]*"\).\+"|\1'$(get_ejabberd_path)'/priv/bin/captcha.sh"|' \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to correct path to captcha.sh in example config'
-}
-
-# 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.
-customize_epam_wrapper() {
- local epam_wrapper_src="$1"
- 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'
-}
-
-# Disable mod_irc in example configuration file.
-disable_mod_irc() {
- local needs_iconv='needs dev-erlang/iconv (+nls USE flag)'
- sed -r \
- -e "s@^(\s*)(mod_irc\s*:.*$)@\1## \2 # ${needs_iconv}@" \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to modify example config'
-}
-
-# Check if there already exists a certificate.
-ejabberd_cert_exists() {
- local cert
-
- for cert in $(gawk -- \
- 'match($0, /^[[:space:]]*certfile: "([^"]+)"/, m) {print m[1];}' \
- "${EROOT%/}${JABBER_ETC}/ejabberd.yml"); do
- [[ -f ${cert} ]] && return 0
- done
-
- return 1
-}
-
-# Generate and install sample ejabberd certificate. It's installed into
-# EJABBERD_CERT path.
-ejabberd_cert_install() {
- SSL_ORGANIZATION="${SSL_ORGANIZATION:-ejabberd XMPP Server}"
- install_cert "${EJABBERD_CERT%.*}"
- chown root:jabber "${EROOT%/}${EJABBERD_CERT}" || die
- chmod 0440 "${EROOT%/}${EJABBERD_CERT}" || die
-}
-
-# 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}"
-}
-
-# Check whether mod_irc is enabled in ejabberd configuration on target system.
-is_mod_irc_enabled() {
- egrep '^(\s*)(mod_irc\s*:.*$)' \
- "${EROOT%/}${JABBER_ETC}/ejabberd.yml"
-}
-
-# Make ejabberd.service for systemd from upstream provided template.
-make_ejabberd_service() {
- sed -r \
- -e 's!@ctlscriptpath@!/usr/sbin!g' \
- -e 's!(User|Group)=(.*)!\1=jabber!' \
- "${PN}.service.template" >"${PN}.service" \
- || die 'failed to make ejabberd.service'
-}
-
-# Set paths to defined by net-im/jabber-base.
-set_jabberbase_paths() {
- sed -e "/^ETCDIR[[:space:]]*=/{s:@sysconfdir@/ejabberd:${JABBER_ETC}:}" \
- -e "/^LOGDIR[[:space:]]*=/{s:@localstatedir@/log/ejabberd:${JABBER_LOG}:}" \
- -e "/^SPOOLDIR[[:space:]]*=/{s:@localstatedir@/lib/ejabberd:${JABBER_SPOOL}:}" \
- -i "${S}/Makefile.in" \
- || die 'failed to set paths in Makefile.in'
- sed -e "s|\(ETC_DIR=\){{sysconfdir}}.*|\1${JABBER_ETC}|" \
- -e "s|\(LOGS_DIR=\){{localstatedir}}.*|\1${JABBER_LOG}|" \
- -e "s|\(SPOOL_DIR=\){{localstatedir}}.*|\1${JABBER_SPOOL}|" \
- -i "${S}/ejabberdctl.template" \
- || die 'failed to set paths ejabberdctl.template'
-}
-
-# Skip installing docs because it's only COPYING that's installed by Makefile.
-skip_docs() {
- gawk -i inplace '
-/# Documentation/, /^[[:space:]]*#?[[:space:]]*$/ {
- if ($0 ~ /^[[:space:]]*#?[[:space:]]*$/) {
- print $0;
- } else {
- next;
- }
-}
-1
-' "${S}/Makefile.in" || die 'failed to remove docs section from Makefile.in'
-}
-
-pkg_setup() {
- if use pam; then
- einfo "Adding jabber user to epam group to allow ejabberd to use PAM" \
- "authentication"
- # See
- # <https://docs.ejabberd.im/admin/configuration/#pam-authentication>.
- # epam binary is installed by dev-erlang/epam package, therefore SUID
- # is set by that package. Instead of jabber group it uses epam group,
- # therefore we need to add jabber user to epam group.
- usermod -a -G epam jabber || die
- fi
-}
-
-src_prepare() {
- default
-
- rebar_remove_deps
- correct_ejabberd_paths
- set_jabberbase_paths
- make_ejabberd_service
- skip_docs
- adjust_config
- use nls || disable_mod_irc
- customize_epam_wrapper "${FILESDIR}/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'
-
- # https://github.com/processone/ejabberd/commit/58110e4bc152100078dbc0cb66d4a5257ae645e0,
- # bug #651932, drop in next version
- sed -i -e 's/REQUIRE_ERLANG_MAX="9.0.0 (No Max)"/REQUIRE_ERLANG_MAX="100.0.0 (No Max)"/' configure.ac || die
- eautoreconf
-}
-
-src_configure() {
- econf \
- --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --enable-user=jabber \
- $(use_enable debug) \
- $(use_enable full-xml) \
- $(use_enable hipe) \
- $(use_enable mssql) \
- $(use_enable mysql) \
- $(use_enable nls iconv) \
- $(use_enable odbc) \
- $(use_enable pam) \
- $(use_enable postgres pgsql) \
- $(use_enable redis) \
- $(use_enable riak) \
- $(use_enable roster-gw roster-gateway-workaround) \
- $(use_enable sqlite) \
- $(use_enable zlib)
-}
-
-src_compile() {
- emake REBAR='rebar -v' src
-}
-
-src_install() {
- default
-
- if use pam; then
- local epam_path="$(get_ejabberd_path)/priv/bin/epam"
-
- pamd_mimic_system xmpp auth account || die "cannot create pam.d file"
- into "$(get_ejabberd_path)/priv"
- newbin epam-wrapper epam
- fi
-
- newconfd "${FILESDIR}/${PN}.confd" "${PN}"
- newinitd "${FILESDIR}/${PN}.initd" "${PN}"
- systemd_dounit "${PN}.service"
- systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf"
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}/${PN}.logrotate" "${PN}"
-}
-
-pkg_postinst() {
- if [[ ! ${REPLACING_VERSIONS} ]]; then
- echo
- elog "For configuration instructions, please see"
- elog " https://docs.ejabberd.im/"
- echo
- if [[ " ${REPLACING_VERSIONS} " =~ \ 2\. ]]; then
- ewarn "If you have used pubsub in ejabberd-2.* you may encounter issues after"
- ewarn "migration to ${PV}. pubsub data may not be migrated automatically and"
- ewarn "you may need to run migration script manually, see:"
- ewarn
- ewarn " https://github.com/processone/ejabberd/issues/479#issuecomment-124497456"
- ewarn
- ewarn "In case you don't care about all stored moods, activities, geoinfo and you"
- ewarn "know you don't store in pubsub anything important, you can just remove"
- ewarn "pubsub tables:"
- ewarn
- ewarn " rm ${EROOT%/}${JABBER_SPOOL}/pubsub_*"
- ewarn
- ewarn "See also: https://bugs.gentoo.org/show_bug.cgi?id=588244"
- echo
- fi
- elif [[ -f ${EROOT}etc/jabber/ejabberd.cfg ]]; then
- elog "Ejabberd now defaults to using a YAML format for its config file."
- elog "The old ejabberd.cfg file can be converted using the following instructions:"
- echo
- elog "1. Make sure all processes related to the previous version of ejabberd aren't"
- elog " running. Usually this just means the ejabberd and epmd daemons and possibly"
- elog " the pam-related process (epam) if pam support is enabled."
- elog "2. Run \`ejabberdctl start\` with sufficient permissions. Note that this can"
- elog " fail to start ejabberd properly for various reasons. Check ejabberd's main"
- elog " log file at /var/log/jabber/ejabberd.log to confirm it started successfully."
- elog "3. Run"
- elog " \`ejabberdctl convert_to_yaml /etc/jabber/ejabberd.cfg /etc/jabber/ejabberd.yml.new\`"
- elog " with sufficient permissions, edit and rename /etc/jabber/ejabberd.yml.new to"
- elog " /etc/jabber/ejabberd.yml, and finally restart ejabberd with the new config"
- elog " file."
- echo
- fi
-
- if ! ejabberd_cert_exists; then
- ejabberd_cert_install
- fi
-
- if ! use nls && is_mod_irc_enabled; then
- ewarn "nls support (dev-erlang/iconv) is required by mod_irc. Either rebuild ejabberd"
- ewarn "with nls enabled or disable mod_irc in ${EROOT%/}${JABBER_ETC}/ejabberd.yml."
- fi
-}
diff --git a/net-im/ejabberd/ejabberd-20.03.ebuild b/net-im/ejabberd/ejabberd-20.03.ebuild
deleted file mode 100644
index 7ed076748bb0..000000000000
--- a/net-im/ejabberd/ejabberd-20.03.ebuild
+++ /dev/null
@@ -1,292 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-SSL_CERT_MANDATORY=1
-
-inherit eutils pam rebar ssl-cert systemd
-
-DESCRIPTION="Robust, scalable and extensible XMPP server"
-HOMEPAGE="https://www.ejabberd.im/ https://github.com/processone/ejabberd/"
-SRC_URI="https://static.process-one.net/${PN}/downloads/${PV}/${P}.tgz
- -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-REQUIRED_USE="mssql? ( odbc )"
-# TODO: Add 'tools' flag.
-IUSE="captcha debug full-xml hipe ldap mssql mysql odbc pam postgres redis
- roster-gw 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-19.3[hipe?,odbc?,ssl]
- >=dev-erlang/cache_tab-1.0.22
- >=dev-erlang/eimp-1.0.14
- >=dev-erlang/fast_tls-1.1.4
- >=dev-erlang/fast_xml-1.1.39
- >=dev-erlang/fast_yaml-1.0.24
- >=dev-erlang/yconf-1.0.4
- >=dev-erlang/jiffy-1.0.1
- >=dev-erlang/jose-1.9.0
- >=dev-erlang/lager-3.6.10
- >=dev-erlang/p1_oauth2-0.6.6
- >=dev-erlang/p1_utils-1.0.18
- >=dev-erlang/stringprep-1.0.19
- >=dev-erlang/xmpp-1.4.5
- >=dev-erlang/pkix-1.0.5
- >=dev-erlang/mqtree-1.0.7
- >=dev-erlang/idna-6.0.0
- >=dev-erlang/p1_acme-1.0.5
- >=dev-erlang/base64url-1.0
- >=net-im/jabber-base-0.01
- ldap? ( =net-nds/openldap-2* )
- mysql? ( >=dev-erlang/p1_mysql-1.0.14 )
- odbc? ( dev-db/unixODBC )
- pam? ( >=dev-erlang/epam-1.0.7 )
- postgres? ( >=dev-erlang/p1_pgsql-1.1.9 )
- redis? ( >=dev-erlang/eredis-1.0.8 )
- sip? ( >=dev-erlang/esip-1.0.32 )
- sqlite? ( >=dev-erlang/sqlite3-1.1.6 )
- stun? ( >=dev-erlang/stun-1.0.31 )
- zlib? ( >=dev-erlang/ezlib-1.0.7 )"
-RDEPEND="${DEPEND}
- captcha? ( media-gfx/imagemagick[truetype,png] )"
-
-DOCS=( CHANGELOG.md README.md )
-PATCHES=( "${FILESDIR}/${PN}-19.08-ejabberdctl.patch"
- "${FILESDIR}/${PN}-17.04-0002-Dont-overwrite-service-file.patch")
-
-EJABBERD_CERT="${EPREFIX}/etc/ssl/ejabberd/server.pem"
-# Paths in net-im/jabber-base
-JABBER_ETC="${EPREFIX}/etc/jabber"
-JABBER_LOG="${EPREFIX}/var/log/jabber"
-JABBER_SPOOL="${EPREFIX}/var/spool/jabber"
-
-# Adjust example configuration file to Gentoo.
-# - Use our sample certificate.
-adjust_config() {
- sed -rne "/^#?\s+certfiles:/{p;a\ - ${EJABBERD_CERT}" -e ":a;n;/^#?\s+-/ba};p" \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to adjust example config'
- sed -re 's/^#\s+(certfiles)/\1/' \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to adjust example config'
-}
-
-# Set paths to ejabberd lib directory consistently to point always to directory
-# suffixed with version.
-correct_ejabberd_paths() {
- sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${P}:}" \
- -i "${S}/Makefile.in" \
- || die 'failed to set ejabberd path in Makefile.in'
- sed -e "/EJABBERD_BIN_PATH=/{s:ejabberd:${P}:}" \
- -i "${S}/ejabberdctl.template" \
- || die 'failed to set ejabberd path in ejabberdctl.template'
-}
-
-# 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.
-customize_epam_wrapper() {
- local epam_wrapper_src="$1"
- 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'
-}
-
-# Check if we are missing a default certificate.
-ejabberd_cert_missing() {
- if grep -qs "^\s\+- ${EJABBERD_CERT}" "${EROOT%/}${JABBER_ETC}/ejabberd.yml"; then
- if [[ -f "${EROOT%/}${EJABBERD_CERT}" ]]; then
- # default certificate is present in config and exists - not installing
- return 1
- else
- # default certificate is present in config
- # but doesn't exist - need to install one
- return 0
- fi
- fi
- # no default certificate in config - not installing
- return 1
-}
-
-# Generate and install sample ejabberd certificate. It's installed into
-# EJABBERD_CERT path.
-ejabberd_cert_install() {
- SSL_ORGANIZATION="${SSL_ORGANIZATION:-ejabberd XMPP Server}"
- install_cert "${EJABBERD_CERT%.*}"
- chown root:jabber "${EROOT%/}${EJABBERD_CERT}" || die
- chmod 0440 "${EROOT%/}${EJABBERD_CERT}" || die
-}
-
-# 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}"
-}
-
-# Make ejabberd.service for systemd from upstream provided template.
-make_ejabberd_service() {
- sed -r \
- -e 's!@ctlscriptpath@!/usr/sbin!g' \
- -e 's!^(User|Group)=(.*)!\1=jabber!' \
- -e 's!^(After)=(.*)!\1=epmd.service network.target!' \
- -e '/^After=/ a Requires=epmd.service' \
- "${PN}.service.template" >"${PN}.service" \
- || die 'failed to make ejabberd.service'
-}
-
-# Set paths to defined by net-im/jabber-base.
-set_jabberbase_paths() {
- sed -e "/^ETCDIR[[:space:]]*=/{s:@sysconfdir@/ejabberd:${JABBER_ETC}:}" \
- -e "/^LOGDIR[[:space:]]*=/{s:@localstatedir@/log/ejabberd:${JABBER_LOG}:}" \
- -e "/^SPOOLDIR[[:space:]]*=/{s:@localstatedir@/lib/ejabberd:${JABBER_SPOOL}:}" \
- -i "${S}/Makefile.in" \
- || die 'failed to set paths in Makefile.in'
- sed -e "s|\(ETC_DIR:=\"\){{sysconfdir}}[^\"]*|\1${JABBER_ETC}|" \
- -e "s|\(LOGS_DIR:=\"\){{localstatedir}}[^\"]*|\1${JABBER_LOG}|" \
- -e "s|\(SPOOL_DIR:=\"\){{localstatedir}}[^\"]*|\1${JABBER_SPOOL}|" \
- -i "${S}/ejabberdctl.template" \
- || die 'failed to set paths ejabberdctl.template'
-}
-
-# Skip installing docs because it's only COPYING that's installed by Makefile.
-skip_docs() {
- gawk -i inplace '
-/# Documentation/, /^[[:space:]]*#?[[:space:]]*$/ {
- if ($0 ~ /^[[:space:]]*#?[[:space:]]*$/) {
- print $0;
- } else {
- next;
- }
-}
-1
-' "${S}/Makefile.in" || die 'failed to remove docs section from Makefile.in'
-}
-
-src_prepare() {
- default
-
- rebar_remove_deps
- correct_ejabberd_paths
- set_jabberbase_paths
- make_ejabberd_service
- skip_docs
- adjust_config
- customize_epam_wrapper "${FILESDIR}/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'
-
- sed -e "s|\(AC_INIT(ejabberd, \)m4_esyscmd([^)]*)|\1[$PV]|" \
- -i configure.ac || die "Failed to write correct version to configure"
- # eautoreconf # required in case of download from github
-}
-
-src_configure() {
- econf \
- --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --enable-user=jabber \
- --disable-system-deps \
- $(use_enable debug) \
- $(use_enable full-xml) \
- $(use_enable hipe) \
- $(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() {
- emake REBAR='rebar -v' src
-}
-
-src_install() {
- default
-
- keepdir /var/lib/lock/ejabberdctl
- rm -rf "${ED%/}/var/log" || die
- rm -rf "${ED%/}/var/spool" || die
-
- if use pam; then
- local epam_path="$(get_ejabberd_path)/priv/bin/epam"
-
- pamd_mimic_system xmpp auth account || die "cannot create pam.d file"
- into "$(get_ejabberd_path)/priv"
- newbin epam-wrapper epam
- fi
-
- newconfd "${FILESDIR}/${PN}.confd" "${PN}"
- newinitd "${FILESDIR}/${PN}.initd" "${PN}"
- systemd_dounit "${PN}.service"
- systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf"
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}/${PN}.logrotate" "${PN}"
-}
-
-pkg_preinst() {
- if use pam; then
- einfo "Adding jabber user to epam group to allow ejabberd to use PAM" \
- "authentication"
- # See
- # <https://docs.ejabberd.im/admin/configuration/#pam-authentication>.
- # epam binary is installed by dev-erlang/epam package, therefore SUID
- # is set by that package. Instead of jabber group it uses epam group,
- # therefore we need to add jabber user to epam group.
- usermod -a -G epam jabber || die
- fi
-}
-
-pkg_postinst() {
- if [[ ! ${REPLACING_VERSIONS} ]]; then
- echo
- elog "For configuration instructions, please see"
- elog " https://docs.ejabberd.im/"
- echo
- fi
- if [[ " ${REPLACING_VERSIONS} " =~ \ 17\. ]]; then
- ewarn If you are updating from an older version like 17.x
- ewarn you may need to add an access_rules section to your
- ewarn ejabberd.yml config file.
- ewarn Otherwise authentication will be broken and users
- ewarn will not be able to log in.
- echo
- fi
-
- if ejabberd_cert_missing; then
- ejabberd_cert_install
- fi
-}
diff --git a/net-im/ejabberd/ejabberd-20.04.ebuild b/net-im/ejabberd/ejabberd-20.04.ebuild
deleted file mode 100644
index d68d2c5ba9ff..000000000000
--- a/net-im/ejabberd/ejabberd-20.04.ebuild
+++ /dev/null
@@ -1,292 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-SSL_CERT_MANDATORY=1
-
-inherit eutils pam rebar ssl-cert systemd
-
-DESCRIPTION="Robust, scalable and extensible XMPP server"
-HOMEPAGE="https://www.ejabberd.im/ https://github.com/processone/ejabberd/"
-SRC_URI="https://static.process-one.net/${PN}/downloads/${PV}/${P}.tgz
- -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-REQUIRED_USE="mssql? ( odbc )"
-# TODO: Add 'tools' flag.
-IUSE="captcha debug full-xml hipe ldap mssql mysql odbc pam postgres redis
- roster-gw 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-19.3[hipe?,odbc?,ssl]
- >=dev-erlang/cache_tab-1.0.22
- >=dev-erlang/eimp-1.0.14
- >=dev-erlang/fast_tls-1.1.5
- >=dev-erlang/fast_xml-1.1.40
- >=dev-erlang/fast_yaml-1.0.24
- >=dev-erlang/yconf-1.0.4
- >=dev-erlang/jiffy-1.0.1
- >=dev-erlang/jose-1.9.0
- >=dev-erlang/lager-3.6.10
- >=dev-erlang/p1_oauth2-0.6.6
- >=dev-erlang/p1_utils-1.0.18
- >=dev-erlang/stringprep-1.0.19
- >=dev-erlang/xmpp-1.4.6
- >=dev-erlang/pkix-1.0.5
- >=dev-erlang/mqtree-1.0.7
- >=dev-erlang/idna-6.0.0
- >=dev-erlang/p1_acme-1.0.5
- >=dev-erlang/base64url-1.0
- >=net-im/jabber-base-0.01
- ldap? ( =net-nds/openldap-2* )
- mysql? ( >=dev-erlang/p1_mysql-1.0.14 )
- odbc? ( dev-db/unixODBC )
- pam? ( >=dev-erlang/epam-1.0.7 )
- postgres? ( >=dev-erlang/p1_pgsql-1.1.9 )
- redis? ( >=dev-erlang/eredis-1.0.8 )
- sip? ( >=dev-erlang/esip-1.0.32 )
- sqlite? ( >=dev-erlang/sqlite3-1.1.6 )
- stun? ( >=dev-erlang/stun-1.0.32 )
- zlib? ( >=dev-erlang/ezlib-1.0.7 )"
-RDEPEND="${DEPEND}
- captcha? ( media-gfx/imagemagick[truetype,png] )"
-
-DOCS=( CHANGELOG.md README.md )
-PATCHES=( "${FILESDIR}/${PN}-19.08-ejabberdctl.patch"
- "${FILESDIR}/${PN}-17.04-0002-Dont-overwrite-service-file.patch")
-
-EJABBERD_CERT="${EPREFIX}/etc/ssl/ejabberd/server.pem"
-# Paths in net-im/jabber-base
-JABBER_ETC="${EPREFIX}/etc/jabber"
-JABBER_LOG="${EPREFIX}/var/log/jabber"
-JABBER_SPOOL="${EPREFIX}/var/spool/jabber"
-
-# Adjust example configuration file to Gentoo.
-# - Use our sample certificate.
-adjust_config() {
- sed -rne "/^#?\s+certfiles:/{p;a\ - ${EJABBERD_CERT}" -e ":a;n;/^#?\s+-/ba};p" \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to adjust example config'
- sed -re 's/^#\s+(certfiles)/\1/' \
- -i "${S}/ejabberd.yml.example" \
- || die 'failed to adjust example config'
-}
-
-# Set paths to ejabberd lib directory consistently to point always to directory
-# suffixed with version.
-correct_ejabberd_paths() {
- sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${P}:}" \
- -i "${S}/Makefile.in" \
- || die 'failed to set ejabberd path in Makefile.in'
- sed -e "/EJABBERD_BIN_PATH=/{s:ejabberd:${P}:}" \
- -i "${S}/ejabberdctl.template" \
- || die 'failed to set ejabberd path in ejabberdctl.template'
-}
-
-# 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.
-customize_epam_wrapper() {
- local epam_wrapper_src="$1"
- 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'
-}
-
-# Check if we are missing a default certificate.
-ejabberd_cert_missing() {
- if grep -qs "^\s\+- ${EJABBERD_CERT}" "${EROOT%/}${JABBER_ETC}/ejabberd.yml"; then
- if [[ -f "${EROOT%/}${EJABBERD_CERT}" ]]; then
- # default certificate is present in config and exists - not installing
- return 1
- else
- # default certificate is present in config
- # but doesn't exist - need to install one
- return 0
- fi
- fi
- # no default certificate in config - not installing
- return 1
-}
-
-# Generate and install sample ejabberd certificate. It's installed into
-# EJABBERD_CERT path.
-ejabberd_cert_install() {
- SSL_ORGANIZATION="${SSL_ORGANIZATION:-ejabberd XMPP Server}"
- install_cert "${EJABBERD_CERT%.*}"
- chown root:jabber "${EROOT%/}${EJABBERD_CERT}" || die
- chmod 0440 "${EROOT%/}${EJABBERD_CERT}" || die
-}
-
-# 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}"
-}
-
-# Make ejabberd.service for systemd from upstream provided template.
-make_ejabberd_service() {
- sed -r \
- -e 's!@ctlscriptpath@!/usr/sbin!g' \
- -e 's!^(User|Group)=(.*)!\1=jabber!' \
- -e 's!^(After)=(.*)!\1=epmd.service network.target!' \
- -e '/^After=/ a Requires=epmd.service' \
- "${PN}.service.template" >"${PN}.service" \
- || die 'failed to make ejabberd.service'
-}
-
-# Set paths to defined by net-im/jabber-base.
-set_jabberbase_paths() {
- sed -e "/^ETCDIR[[:space:]]*=/{s:@sysconfdir@/ejabberd:${JABBER_ETC}:}" \
- -e "/^LOGDIR[[:space:]]*=/{s:@localstatedir@/log/ejabberd:${JABBER_LOG}:}" \
- -e "/^SPOOLDIR[[:space:]]*=/{s:@localstatedir@/lib/ejabberd:${JABBER_SPOOL}:}" \
- -i "${S}/Makefile.in" \
- || die 'failed to set paths in Makefile.in'
- sed -e "s|\(ETC_DIR:=\"\){{sysconfdir}}[^\"]*|\1${JABBER_ETC}|" \
- -e "s|\(LOGS_DIR:=\"\){{localstatedir}}[^\"]*|\1${JABBER_LOG}|" \
- -e "s|\(SPOOL_DIR:=\"\){{localstatedir}}[^\"]*|\1${JABBER_SPOOL}|" \
- -i "${S}/ejabberdctl.template" \
- || die 'failed to set paths ejabberdctl.template'
-}
-
-# Skip installing docs because it's only COPYING that's installed by Makefile.
-skip_docs() {
- gawk -i inplace '
-/# Documentation/, /^[[:space:]]*#?[[:space:]]*$/ {
- if ($0 ~ /^[[:space:]]*#?[[:space:]]*$/) {
- print $0;
- } else {
- next;
- }
-}
-1
-' "${S}/Makefile.in" || die 'failed to remove docs section from Makefile.in'
-}
-
-src_prepare() {
- default
-
- rebar_remove_deps
- correct_ejabberd_paths
- set_jabberbase_paths
- make_ejabberd_service
- skip_docs
- adjust_config
- customize_epam_wrapper "${FILESDIR}/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'
-
- sed -e "s|\(AC_INIT(ejabberd, \)m4_esyscmd([^)]*)|\1[$PV]|" \
- -i configure.ac || die "Failed to write correct version to configure"
- # eautoreconf # required in case of download from github
-}
-
-src_configure() {
- econf \
- --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --enable-user=jabber \
- --disable-system-deps \
- $(use_enable debug) \
- $(use_enable full-xml) \
- $(use_enable hipe) \
- $(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() {
- emake REBAR='rebar -v' src
-}
-
-src_install() {
- default
-
- keepdir /var/lib/lock/ejabberdctl
- rm -rf "${ED%/}/var/log" || die
- rm -rf "${ED%/}/var/spool" || die
-
- if use pam; then
- local epam_path="$(get_ejabberd_path)/priv/bin/epam"
-
- pamd_mimic_system xmpp auth account || die "cannot create pam.d file"
- into "$(get_ejabberd_path)/priv"
- newbin epam-wrapper epam
- fi
-
- newconfd "${FILESDIR}/${PN}.confd" "${PN}"
- newinitd "${FILESDIR}/${PN}.initd" "${PN}"
- systemd_dounit "${PN}.service"
- systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf"
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}/${PN}.logrotate" "${PN}"
-}
-
-pkg_preinst() {
- if use pam; then
- einfo "Adding jabber user to epam group to allow ejabberd to use PAM" \
- "authentication"
- # See
- # <https://docs.ejabberd.im/admin/configuration/#pam-authentication>.
- # epam binary is installed by dev-erlang/epam package, therefore SUID
- # is set by that package. Instead of jabber group it uses epam group,
- # therefore we need to add jabber user to epam group.
- usermod -a -G epam jabber || die
- fi
-}
-
-pkg_postinst() {
- if [[ ! ${REPLACING_VERSIONS} ]]; then
- echo
- elog "For configuration instructions, please see"
- elog " https://docs.ejabberd.im/"
- echo
- fi
- if [[ " ${REPLACING_VERSIONS} " =~ \ 17\. ]]; then
- ewarn If you are updating from an older version like 17.x
- ewarn you may need to add an access_rules section to your
- ewarn ejabberd.yml config file.
- ewarn Otherwise authentication will be broken and users
- ewarn will not be able to log in.
- echo
- fi
-
- if ejabberd_cert_missing; then
- ejabberd_cert_install
- fi
-}
diff --git a/net-im/ejabberd/ejabberd-23.01.ebuild b/net-im/ejabberd/ejabberd-23.01.ebuild
new file mode 100644
index 000000000000..82b509558d13
--- /dev/null
+++ b/net-im/ejabberd/ejabberd-23.01.ebuild
@@ -0,0 +1,219 @@
+# 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-19.3[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.6.1
+ >=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.21 )
+ odbc? ( dev-db/unixODBC )
+ pam? ( >=dev-erlang/epam-1.0.14 )
+ postgres? ( >=dev-erlang/p1_pgsql-1.1.20 )
+ redis? ( >=dev-erlang/eredis-1.2.0 )
+ sip? ( >=dev-erlang/esip-1.0.49 )
+ sqlite? ( >=dev-erlang/sqlite3-1.1.14 )
+ stun? ( >=dev-erlang/stun-1.2.7 )
+ 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'
+ sed -e "/EJABBERD_BIN_PATH=/{s:ejabberd:${P}:}" \
+ -i "${S}/ejabberdctl.template" \
+ || die 'failed to set ejabberd path in ejabberdctl.template'
+
+ # 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.04.ebuild b/net-im/ejabberd/ejabberd-23.04.ebuild
new file mode 100644
index 000000000000..69ddba1b5199
--- /dev/null
+++ b/net-im/ejabberd/ejabberd-23.04.ebuild
@@ -0,0 +1,216 @@
+# 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-19.3[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.6.2
+ >=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.21 )
+ odbc? ( dev-db/unixODBC )
+ pam? ( >=dev-erlang/epam-1.0.14 )
+ postgres? ( >=dev-erlang/p1_pgsql-1.1.22 )
+ redis? ( >=dev-erlang/eredis-1.2.0 )
+ sip? ( >=dev-erlang/esip-1.0.49 )
+ sqlite? ( >=dev-erlang/sqlite3-1.1.14 )
+ stun? ( >=dev-erlang/stun-1.2.7 )
+ 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/ejabberd/ejabberd-23.10-r1.ebuild b/net-im/ejabberd/ejabberd-23.10-r1.ebuild
new file mode 100644
index 000000000000..6a842d1ea221
--- /dev/null
+++ b/net-im/ejabberd/ejabberd-23.10-r1.ebuild
@@ -0,0 +1,223 @@
+# Copyright 1999-2024 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-24.02-r1.ebuild b/net-im/ejabberd/ejabberd-24.02-r1.ebuild
new file mode 100644
index 000000000000..c6595ebb5cd8
--- /dev/null
+++ b/net-im/ejabberd/ejabberd-24.02-r1.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2024 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.19
+ >=dev-erlang/fast_xml-1.1.51
+ >=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.14
+ >=dev-erlang/p1_utils-1.0.25
+ >=dev-erlang/stringprep-1.0.29
+ >=dev-erlang/xmpp-1.8.1
+ >=dev-erlang/pkix-1.0.9
+ >=dev-erlang/mqtree-1.0.16
+ >=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.23 )
+ odbc? ( dev-db/unixODBC )
+ pam? ( >=dev-erlang/epam-1.0.14 )
+ postgres? ( >=dev-erlang/p1_pgsql-1.1.25 )
+ redis? ( >=dev-erlang/eredis-1.2.0 )
+ sip? ( >=dev-erlang/esip-1.0.52 )
+ sqlite? ( >=dev-erlang/sqlite3-1.1.14 )
+ stun? ( >=dev-erlang/stun-1.2.12 )
+ 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} \
+ --with-rebar=rebar \
+ $(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/files/adjust-ejabberd.service.template-to-Gentoo.patch b/net-im/ejabberd/files/adjust-ejabberd.service.template-to-Gentoo.patch
new file mode 100644
index 000000000000..9bf8e10f87a9
--- /dev/null
+++ b/net-im/ejabberd/files/adjust-ejabberd.service.template-to-Gentoo.patch
@@ -0,0 +1,39 @@
+From c0af543fc3b6047f66bfe820e7ce75abd3ed2049 Mon Sep 17 00:00:00 2001
+From: Florian Schmaus <flo@geekplace.eu>
+Date: Fri, 10 Dec 2021 12:36:45 +0100
+Subject: [PATCH] Adjust ejabberd.service.template to Gentoo
+
+---
+ Makefile.in | 2 +-
+ ejabberd.service.template | 3 ++-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index ab0e9d96702e..4d97570733aa 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -300,7 +300,7 @@ install: copy-files
+ chmod 755 ejabberd.init
+ #
+ # Service script
+- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" \
++ $(SED) -e "s*@ctlscriptpath@*/usr/sbin*g" \
+ -e "s*@installuser@*$(INIT_USER)*g" ejabberd.service.template \
+ > ejabberd.service
+ chmod 644 ejabberd.service
+diff --git a/ejabberd.service.template b/ejabberd.service.template
+index 685a104d00ae..e384e920280b 100644
+--- a/ejabberd.service.template
++++ b/ejabberd.service.template
+@@ -1,6 +1,7 @@
+ [Unit]
+ Description=XMPP Server
+-After=network.target
++After=epmd.service network.target
++Requires=epmd.service
+
+ [Service]
+ Type=notify
+--
+2.33.1
+
diff --git a/net-im/ejabberd/files/ejabberd-17.04-0001-Don-t-configure-or-compile-deps.patch b/net-im/ejabberd/files/ejabberd-17.04-0001-Don-t-configure-or-compile-deps.patch
deleted file mode 100644
index 0a42f549b58c..000000000000
--- a/net-im/ejabberd/files/ejabberd-17.04-0001-Don-t-configure-or-compile-deps.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 4086249e78cde107df84e6ad022e9d9821cecc40 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name>
-Date: Sun, 28 May 2017 14:22:08 +0100
-Subject: [PATCH] Don't configure or compile deps
-
----
- rebar.config.script | 23 -----------------------
- 1 file changed, 23 deletions(-)
-
-diff --git a/rebar.config.script b/rebar.config.script
-index 19142b9e..04f8b310 100644
---- a/rebar.config.script
-+++ b/rebar.config.script
-@@ -242,27 +242,6 @@ CtParams = fun(CompileOpts) ->
- TestConfig]
- end,
-
--GenDepConfigureLine =
--fun(DepPath, Flags) ->
-- ["sh -c 'if test ! -f ",DepPath,"config.status -o ",
-- "config.status -nt ",DepPath,"config.status; ",
-- "then (cd ", DepPath, " && ",
-- "CFLAGS=\"", CFlags,"\" ",
-- "CPPFLAGS=\"", CPPFlags, "\" "
-- "LDFLAGS=\"", LDFlags, "\"",
-- " ./configure ", string:join(Flags, " "),
-- "); fi'"]
--end,
--
--GenDepsConfigure =
--fun(Hooks) ->
-- lists:map(fun({Pkg, Flags}) ->
-- DepPath = ResolveDepPath("deps/" ++ Pkg ++ "/"),
-- {'compile',
-- lists:flatten(GenDepConfigureLine(DepPath, Flags))}
-- end, Hooks)
--end,
--
- ProcessErlOpt = fun(Vals) ->
- lists:map(
- fun({i, Path}) ->
-@@ -315,8 +294,6 @@ Rules = [
- AppendList([{coveralls, ".*", {git, "https://github.com/markusn/coveralls-erl.git", "master"}}]), []},
- {[post_hooks], [cover_enabled], os:getenv("TRAVIS") == "true",
- AppendList2(TravisPostHooks), [], false},
-- {[pre_hooks], [post_hook_configure], true,
-- AppendList2(GenDepsConfigure), [], []},
- {[ct_extra_params], [eunit_compile_opts], true,
- AppendStr2(CtParams), "", []},
- {[erl_opts], true,
---
-2.12.2
-
diff --git a/net-im/ejabberd/files/ejabberd-17.04-0002-Dont-overwrite-service-file.patch b/net-im/ejabberd/files/ejabberd-17.04-0002-Dont-overwrite-service-file.patch
deleted file mode 100644
index 2bea750ef04e..000000000000
--- a/net-im/ejabberd/files/ejabberd-17.04-0002-Dont-overwrite-service-file.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/Makefile.in b/Makefile.in
-index a0b4553d..4675b88a 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -204,8 +204,8 @@ install: all copy-files
- chmod 755 ejabberd.init
- #
- # Service script
-- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" ejabberd.service.template \
-- > ejabberd.service
-+ [ -f ejabberd.service ] || $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" \
-+ ejabberd.service.template > ejabberd.service
- chmod 644 ejabberd.service
- #
- # Spool directory
diff --git a/net-im/ejabberd/files/ejabberd-17.04-ejabberdctl.patch b/net-im/ejabberd/files/ejabberd-17.04-ejabberdctl.patch
deleted file mode 100644
index 6001c651f5d6..000000000000
--- a/net-im/ejabberd/files/ejabberd-17.04-ejabberdctl.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 185923a3c5f11c2d29599416a52b6594bc94d8c9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name>
-Date: Mon, 29 Aug 2016 22:29:41 +0100
-Subject: [PATCH] Adjust ejabberdctl for Gentoo jabberbase setup
-
-Set SHELL since the generic jabber user used on Gentoo for jabber
-servers doesn't have a valid shell set by default and fix EXEC_CMD
-otherwise it fails with "This account is currently not available" again
-due to jabber not having a valid shell.
-
-Also, workaround the assumption that jabber's $HOME is a directory when
-instead it defaults to /dev/null on Gentoo.
----
- ejabberdctl.template | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/ejabberdctl.template b/ejabberdctl.template
-index 5b34ebe..3c080fd 100755
---- a/ejabberdctl.template
-+++ b/ejabberdctl.template
-@@ -16,6 +16,7 @@ IEX={{bindir}}/iex
- EPMD={{epmd}}
- INSTALLUSER={{installuser}}
- ERL_LIBS={{libdir}}
-+SHELL=/bin/sh
-
- # check the proper system user is used if defined
- if [ "$INSTALLUSER" != "" ] ; then
-@@ -23,11 +24,11 @@ if [ "$INSTALLUSER" != "" ] ; then
- for GID in `id -G`; do
- if [ $GID -eq 0 ] ; then
- INSTALLUSER_HOME=$(getent passwd "$INSTALLUSER" | cut -d: -f6)
-- if [ -n "$INSTALLUSER_HOME" ] && [ ! -d "$INSTALLUSER_HOME" ] ; then
-+ if [ -n "$INSTALLUSER_HOME" ] && [ ! -e "$INSTALLUSER_HOME" ] ; then
- mkdir -p "$INSTALLUSER_HOME"
- chown "$INSTALLUSER" "$INSTALLUSER_HOME"
- fi
-- EXEC_CMD="su $INSTALLUSER -c"
-+ EXEC_CMD="su $INSTALLUSER -p -c"
- fi
- done
- if [ `id -g` -eq `id -g $INSTALLUSER` ] ; then
-@@ -91,6 +92,7 @@ EJABBERD_LOG_PATH=$LOGS_DIR/ejabberd.log
- DATETIME=`date "+%Y%m%d-%H%M%S"`
- ERL_CRASH_DUMP=$LOGS_DIR/erl_crash_$DATETIME.dump
- ERL_INETRC=$ETC_DIR/inetrc
-+HOME=$SPOOL_DIR
-
- # define mnesia options
- MNESIA_OPTS="-mnesia dir \"\\\"$SPOOL_DIR\\\"\" $MNESIA_OPTIONS"
-@@ -149,6 +151,8 @@ export ERL_MAX_ETS_TABLES
- export CONTRIB_MODULES_PATH
- export CONTRIB_MODULES_CONF_DIR
- export ERL_LIBS
-+export HOME
-+export SHELL
-
- shell_escape_str()
- {
---
-2.9.2
-
diff --git a/net-im/ejabberd/files/ejabberd-19.08-ejabberdctl.patch b/net-im/ejabberd/files/ejabberd-19.08-ejabberdctl.patch
deleted file mode 100644
index 0fb1f5ce602e..000000000000
--- a/net-im/ejabberd/files/ejabberd-19.08-ejabberdctl.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Subject: [PATCH] Adjust ejabberdctl for Gentoo jabberbase setup
-
-Set SHELL since the generic jabber user used on Gentoo for jabber
-servers doesn't have a valid shell set by default and fix EXEC_CMD
-otherwise it fails with This account is currently not available again
-due to jabber not having a valid shell.
-
-Also, workaround the assumption that jabber's /root is a directory when
-instead it defaults to /dev/null on Gentoo.
----
-
-diff --git a/ejabberdctl.template b/ejabberdctl.template
-index 571b90b..71336c0 100755
---- a/ejabberdctl.template
-+++ b/ejabberdctl.template
-@@ -82,6 +82,7 @@ fi
- ERL_LIBS={{libdir}}
- ERL_CRASH_DUMP="$LOGS_DIR"/erl_crash_$(date "+%Y%m%d-%H%M%S").dump
- ERL_INETRC="$ETC_DIR"/inetrc
-+HOME=$SPOOL_DIR
-
- # define ejabberd parameters
- EJABBERD_OPTS="$EJABBERD_OPTS\
-@@ -105,12 +106,13 @@ export ERL_MAX_ETS_TABLES
- export CONTRIB_MODULES_PATH
- export CONTRIB_MODULES_CONF_DIR
- export ERL_LIBS
-+export HOME
-
- # run command either directly or via su $INSTALLUSER
- exec_cmd()
- {
- case $EXEC_CMD in
-- as_install_user) su -s /bin/sh -c '"$0" "$@"' "$INSTALLUSER" -- "$@" ;;
-+ as_install_user) su -p -s /bin/sh -c '"$0" "$@"' "$INSTALLUSER" -- "$@" ;;
- as_current_user) "$@" ;;
- esac
- }
diff --git a/net-im/ejabberd/files/ejabberd.initd b/net-im/ejabberd/files/ejabberd-22.05.initd
index 94ac2ae8e465..57f9cd5aa335 100644
--- a/net-im/ejabberd/files/ejabberd.initd
+++ b/net-im/ejabberd/files/ejabberd-22.05.initd
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
extra_started_commands="reload"
@@ -37,7 +37,7 @@ stop() {
cnt=0
sleep 1
while ejabberdctl status >/dev/null 2>&1 || test $? = 1; do
- echo -n .
+ echo .
cnt=`expr $cnt + 1`
if [ $cnt -ge 60 ] ; then
eend 1
diff --git a/net-im/ejabberd/files/ejabberd.logrotate b/net-im/ejabberd/files/ejabberd-22.05.logrotate
index 4f324729dba8..fd51673fc428 100644
--- a/net-im/ejabberd/files/ejabberd.logrotate
+++ b/net-im/ejabberd/files/ejabberd-22.05.logrotate
@@ -1,5 +1,5 @@
-/var/log/jabber/*.log {
- su jabber jabber
+/var/log/ejabberd/*.log {
+ su ejabberd ejabberd
weekly
rotate 4
missingok
diff --git a/net-im/ejabberd/files/ejabberd-22.10-adjust-ejabberd.service.template-to-Gentoo.patch b/net-im/ejabberd/files/ejabberd-22.10-adjust-ejabberd.service.template-to-Gentoo.patch
new file mode 100644
index 000000000000..f607f48037ae
--- /dev/null
+++ b/net-im/ejabberd/files/ejabberd-22.10-adjust-ejabberd.service.template-to-Gentoo.patch
@@ -0,0 +1,16 @@
+From c0af543fc3b6047f66bfe820e7ce75abd3ed2049 Mon Sep 17 00:00:00 2001
+From: Florian Schmaus <flo@geekplace.eu>
+Date: Fri, 10 Dec 2021 12:36:45 +0100
+Subject: [PATCH] Adjust ejabberd.service.template to Gentoo
+
+--- a/ejabberd.service.template
++++ b/ejabberd.service.template
+@@ -1,6 +1,7 @@
+ [Unit]
+ Description=XMPP Server
+-After=network.target
++After=epmd.service network.target
++Requires=epmd.service
+
+ [Service]
+ Type=notify
diff --git a/net-im/ejabberd/files/ejabberd.tmpfiles.conf b/net-im/ejabberd/files/ejabberd.tmpfiles.conf
deleted file mode 100644
index 6a9cc9e61b7a..000000000000
--- a/net-im/ejabberd/files/ejabberd.tmpfiles.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-d /run/lock/ejabberdctl 0750 jabber jabber
-d /run/ejabberd 0750 jabber jabber
diff --git a/net-im/ejabberd/metadata.xml b/net-im/ejabberd/metadata.xml
index ecd307a3a00f..f894e535971b 100644
--- a/net-im/ejabberd/metadata.xml
+++ b/net-im/ejabberd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ejabberd@gentoo.org</email>
@@ -12,16 +12,12 @@
<flag name="captcha">Support for CAPTCHA Forms (XEP-158) on registration</flag>
<flag name="full-xml">Use XML features in XMPP stream (ex: CDATA),
requires XML compliant clients</flag>
- <flag name="hipe">Compile natively with HiPE, not recommended</flag>
<flag name="mssql">Enable Microsoft SQL Server support (via ODBC) for
data storage</flag>
<flag name="mysql">Enable MySQL support for data storage</flag>
- <flag name="nls">Enable character set conversion for mod_irc</flag>
<flag name="odbc">Enable ODBC support to access data storage</flag>
<flag name="postgres">Enable PostgreSQL support for data storage</flag>
<flag name="redis">Enable Redis support for transient data</flag>
- <flag name="riak">Enable support for Riak - distributed NoSQL key-value
- data store</flag>
<flag name="roster-gw">Turn on workaround for processing gateway subscriptions</flag>
<flag name="sqlite">Enable SQLite database support</flag>
<flag name="sip">Enable SIP support</flag>
@@ -30,6 +26,7 @@
<!-- TODO Add later: flag name="tools">Build development tools</flag -->
</use>
<upstream>
+ <doc>https://docs.ejabberd.im</doc>
<remote-id type="github">processone/ejabberd</remote-id>
</upstream>
</pkgmetadata>
diff --git a/net-im/ekg2/Manifest b/net-im/ekg2/Manifest
deleted file mode 100644
index 38cae254de61..000000000000
--- a/net-im/ekg2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ekg2-f427d083ee899d42532c046100490a915b0e8a82.tar.gz 1177484 BLAKE2B 7bf6918a7f75738ac34eeae64ac53d3c90acd72795711c856206b79ca96c94b2ce397132ee31dfa8a9060d91d7b4b9aa23834596fca190dadf476660c6e5cd71 SHA512 ba28b66233290bd6c9b6a9602a5409c0fb2d847993bda638172da2f68430b5b5cf9bc0ff0d327983939fa0fd078bf6030069c60cd8bdd8449c349964b23e1f44
diff --git a/net-im/ekg2/ekg2-0.4_pre20190315.ebuild b/net-im/ekg2/ekg2-0.4_pre20190315.ebuild
deleted file mode 100644
index e6954bc0de6b..000000000000
--- a/net-im/ekg2/ekg2-0.4_pre20190315.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-inherit autotools python-single-r1
-
-EGIT_COMMIT="f427d083ee899d42532c046100490a915b0e8a82"
-DESCRIPTION="Text-based, multi-protocol instant messenger"
-HOMEPAGE="https://github.com/ekg2/ekg2/"
-SRC_URI="https://github.com/ekg2/ekg2/archive/${EGIT_COMMIT}.tar.gz
- -> ${PN}-${EGIT_COMMIT}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="gadu gpm gpg gtk minimal ncurses nls nntp openssl
- perl python readline rss spell sqlite ssl xmpp unicode zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="dev-libs/glib:2
- gadu? ( <net-libs/libgadu-1.12:0= )
- gpg? ( app-crypt/gpgme:1= )
- gtk? ( x11-libs/gtk+:2 )
- nls? ( virtual/libintl:0= )
- openssl? ( dev-libs/openssl:0= )
- perl? ( dev-lang/perl:0= )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- rss? ( dev-libs/expat:0= )
- ssl? ( net-libs/gnutls:0= )
- xmpp? ( dev-libs/expat:0= )
- zlib? ( sys-libs/zlib:0= )
-
- ncurses? ( sys-libs/ncurses:0=[unicode=]
- gpm? ( sys-libs/gpm:0= )
- spell? ( app-text/aspell:0= ) )
- sqlite? ( dev-db/sqlite:3= )"
-
-DEPEND="${RDEPEND}
- sys-devel/gettext"
-
-S=${WORKDIR}/${PN}-${EGIT_COMMIT}
-
-DOCS=(
- AUTHORS README.md docs/README docs/TODO
- docs/events.txt docs/mouse.txt docs/sim.txt docs/voip.txt
- docs/themes.txt docs/themes-en.txt
- docs/ui-ncurses.txt docs/ui-ncurses-en.txt
-)
-
-pkg_pretend() {
- if ! use gtk && ! use ncurses && ! use readline; then
- ewarn 'ekg2 is being compiled without any frontend. You should consider'
- ewarn 'enabling at least one of following USEflags:'
- ewarn ' gtk, ncurses, readline.'
- fi
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- local myconf=(
- # direct plugin references
- $(use_enable gadu gg)
- $(use_enable gpg)
- $(use_enable gtk)
- $(use_enable ncurses)
- $(use_enable nntp)
- $(use_enable openssl sim)
- $(use_enable perl)
- $(use_enable python)
- $(use_enable readline)
- $(use_enable rss)
- $(use_enable sqlite logsqlite)
- $(use_enable xmpp jabber)
-
- $(use_enable !minimal autoresponder)
- $(use_enable !minimal jogger)
- $(use_enable !minimal mail)
- $(use_enable !minimal polchat)
- $(use_enable !minimal rivchat)
- $(use_enable !minimal sms)
-
- # sqlite switch
- --with-sqlite3
-
- # optional deps
- $(use_with gpm)
- # do not pass --with-inotify as it will fail if check fails
- $(use_with spell aspell)
- $(use_with ssl gnutls)
- $(use_with zlib)
-
- # other magic
- $(use_enable nls)
- --with-perl-module-build-flags='INSTALLDIRS=vendor'
- --enable-fast-configure
- )
- econf "${myconf[@]}"
-}
-
-src_install() {
- default
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/net-im/ekg2/ekg2-9999.ebuild b/net-im/ekg2/ekg2-9999.ebuild
deleted file mode 100644
index 8c458e0a9e43..000000000000
--- a/net-im/ekg2/ekg2-9999.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-inherit autotools git-r3 python-single-r1
-
-DESCRIPTION="Text-based, multi-protocol instant messenger"
-HOMEPAGE="https://github.com/ekg2/ekg2/"
-SRC_URI=""
-EGIT_REPO_URI="https://github.com/ekg2/${PN}.git"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS=""
-IUSE="gadu gpm gpg gtk minimal ncurses nls nntp openssl
- perl python readline rss spell sqlite ssl xmpp unicode zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="dev-libs/glib:2
- gadu? ( <net-libs/libgadu-1.12:0= )
- gpg? ( app-crypt/gpgme:1= )
- gtk? ( x11-libs/gtk+:2 )
- nls? ( virtual/libintl:0= )
- openssl? ( dev-libs/openssl:0= )
- perl? ( dev-lang/perl:0= )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- rss? ( dev-libs/expat:0= )
- ssl? ( net-libs/gnutls:0= )
- xmpp? ( dev-libs/expat:0= )
- zlib? ( sys-libs/zlib:0= )
-
- ncurses? ( sys-libs/ncurses:0=[unicode=]
- gpm? ( sys-libs/gpm:0= )
- spell? ( app-text/aspell:0= ) )
- sqlite? ( dev-db/sqlite:3= )"
-
-DEPEND="${RDEPEND}
- sys-devel/gettext"
-
-DOCS=(
- AUTHORS README.md docs/README docs/TODO
- docs/events.txt docs/mouse.txt docs/sim.txt docs/voip.txt
- docs/themes.txt docs/themes-en.txt
- docs/ui-ncurses.txt docs/ui-ncurses-en.txt
-)
-
-pkg_pretend() {
- if ! use gtk && ! use ncurses && ! use readline; then
- ewarn 'ekg2 is being compiled without any frontend. You should consider'
- ewarn 'enabling at least one of following USEflags:'
- ewarn ' gtk, ncurses, readline.'
- fi
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- local myconf=(
- # direct plugin references
- $(use_enable gadu gg)
- $(use_enable gpg)
- $(use_enable gtk)
- $(use_enable ncurses)
- $(use_enable nntp)
- $(use_enable openssl sim)
- $(use_enable perl)
- $(use_enable python)
- $(use_enable readline)
- $(use_enable rss)
- $(use_enable sqlite logsqlite)
- $(use_enable xmpp jabber)
-
- $(use_enable !minimal autoresponder)
- $(use_enable !minimal jogger)
- $(use_enable !minimal mail)
- $(use_enable !minimal polchat)
- $(use_enable !minimal rivchat)
- $(use_enable !minimal sms)
-
- # sqlite switch
- --with-sqlite3
-
- # optional deps
- $(use_with gpm)
- # do not pass --with-inotify as it will fail if check fails
- $(use_with spell aspell)
- $(use_with ssl gnutls)
- $(use_with zlib)
-
- # other magic
- $(use_enable nls)
- --with-perl-module-build-flags='INSTALLDIRS=vendor'
- --enable-fast-configure
- )
- econf "${myconf[@]}"
-}
-
-src_install() {
- default
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/net-im/ekg2/metadata.xml b/net-im/ekg2/metadata.xml
deleted file mode 100644
index 56d35d283099..000000000000
--- a/net-im/ekg2/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>mgorny@gentoo.org</email>
- <name>Michał Górny</name>
- </maintainer>
-
- <use>
- <flag name="gadu">Enable Gadu-Gadu protocol support (requires
- <pkg>net-libs/libgadu</pkg>).</flag>
- <flag name="gpg">Enable jabber message encryption through
- <pkg>app-crypt/gpgme</pkg>.</flag>
- <flag name="minimal">Disable building extra plugins with no additional
- deps.</flag>
- <flag name="openssl">Support encryption in sim plugin, using OpenSSL.</flag>
- <flag name="sqlite">Support logging messages into SQLite3 database.</flag>
- </use>
-</pkgmetadata>
diff --git a/net-im/element-desktop-bin/Manifest b/net-im/element-desktop-bin/Manifest
new file mode 100644
index 000000000000..9ea60ab694b6
--- /dev/null
+++ b/net-im/element-desktop-bin/Manifest
@@ -0,0 +1 @@
+DIST element-desktop_1.11.54_amd64.deb 94677944 BLAKE2B dac8908b263734b6c1cbf8a62e99c9f2eb7e40c70715c7e0456561ca70ec4d8b8f1f41181d7b0c8dd3a980285184f0dfd9284aa72fb1a5539ed6c3c92f1e09c7 SHA512 1e266cb08404bb622a5ab0f3a769e16944322274cfdadbea66f92839da863b45e8afd3f14b4d6c0d6c8c49f77953f5914a7abaf6abe888eec56ebec197b3ee71
diff --git a/net-im/element-desktop-bin/element-desktop-bin-1.11.54.ebuild b/net-im/element-desktop-bin/element-desktop-bin-1.11.54.ebuild
new file mode 100644
index 000000000000..afefcad54396
--- /dev/null
+++ b/net-im/element-desktop-bin/element-desktop-bin-1.11.54.ebuild
@@ -0,0 +1,83 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature unpacker xdg
+
+MY_PN="${PN/-bin}"
+
+DESCRIPTION="A glossy Matrix collaboration client for desktop (binary package)"
+HOMEPAGE="https://element.io"
+SRC_URI="https://packages.element.io/debian/pool/main/e/element-desktop/${MY_PN}_${PV}_amd64.deb"
+S="${WORKDIR}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64"
+RESTRICT="splitdebug"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/libsecret
+ dev-db/sqlcipher
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nettle
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/mesa
+ net-print/cups
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/pango"
+
+QA_PREBUILT="opt/Element/chrome-sandbox
+ opt/Element/chrome_crashpad_handler
+ opt/Element/element-desktop
+ opt/Element/libEGL.so
+ opt/Element/libGLESv2.so
+ opt/Element/libffmpeg.so
+ opt/Element/libvk_swiftshader.so
+ opt/Element/libvulkan.so.1
+ opt/Element/resources/app.asar.unpacked/node_modules/matrix-seshat/index.node
+ opt/Element/resources/app.asar.unpacked/node_modules/keytar/build/Release/keytar.node"
+
+src_prepare() {
+ default
+ rm opt/Element/{LICENSE.electron.txt,LICENSES.chromium.html} || die
+}
+
+src_install() {
+ mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die
+ gunzip usr/share/doc/${PF}/changelog.gz || die
+
+ insinto /
+ doins -r usr
+ doins -r opt
+ local f
+ for f in ${QA_PREBUILT}; do
+ fperms +x "/${f}"
+ done
+ fperms u+s /opt/Element/chrome-sandbox
+
+ dosym ../../opt/Element/${MY_PN} /usr/bin/${MY_PN}
+ dosym ${MY_PN} /usr/bin/riot-desktop
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "emojis" media-fonts/noto-emoji
+}
diff --git a/net-im/element-desktop-bin/metadata.xml b/net-im/element-desktop-bin/metadata.xml
new file mode 100644
index 000000000000..6da2e8686fd5
--- /dev/null
+++ b/net-im/element-desktop-bin/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>steils@gentoo.org</email>
+ <name>Stefan Strogin</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-im/empathy/Manifest b/net-im/empathy/Manifest
deleted file mode 100644
index c79a8ccd4fd1..000000000000
--- a/net-im/empathy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST empathy-3.12.14.tar.xz 5017776 BLAKE2B 15f4c71a4f40988afd51d0665ee24164fb7e1d14994e577c23fa29a995503e78f8b784d26edd90503f9825c64dc814f07860aa6792eec6948c566dc3ff669dad SHA512 f467277278a9e8d330e4ab656b3edb2acac6efec211baa146a5ea0a6d0da299e68cdb83ceb1a27a1aa4744c2ce1a441fa287001003c523036ada517029a40123
diff --git a/net-im/empathy/empathy-3.12.14.ebuild b/net-im/empathy/empathy-3.12.14.ebuild
deleted file mode 100644
index fd7af5a01fb5..000000000000
--- a/net-im/empathy/empathy-3.12.14.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python3_6 )
-
-inherit gnome2 python-any-r1 virtualx
-
-DESCRIPTION="Telepathy instant messaging and video/audio call client for GNOME"
-HOMEPAGE="https://wiki.gnome.org/Apps/Empathy"
-
-LICENSE="GPL-2 CC-BY-SA-3.0 FDL-1.3 LGPL-2.1"
-SLOT="0"
-IUSE="debug +geolocation gnome gnome-online-accounts +map spell test +v4l"
-RESTRICT="!test? ( test )"
-KEYWORDS="~alpha amd64 ~arm ~ppc ~ppc64 x86 ~x86-linux"
-
-# False positives caused by nested configure scripts
-QA_CONFIGURE_OPTIONS=".*"
-
-# gdk-pixbuf and pango extensively used in libempathy-gtk
-COMMON_DEPEND="
- >=dev-libs/glib-2.48:2[dbus]
- x11-libs/gdk-pixbuf:2
- >=x11-libs/gtk+-3.9.4:3
- x11-libs/pango
- >=dev-libs/dbus-glib-0.51
- >=dev-libs/folks-0.9.5:=[telepathy]
- dev-libs/libgee:0.8=
- >=app-crypt/libsecret-0.5
- >=media-libs/libcanberra-0.25[gtk3]
- >=net-libs/webkit-gtk-2.10:4
- >=x11-libs/libnotify-0.7:=
-
- media-libs/gstreamer:1.0
- >=media-libs/clutter-1.10.0:1.0
- >=media-libs/clutter-gtk-1.1.2:1.0
- media-libs/clutter-gst:3.0
- >=media-libs/cogl-1.14:1.0=
-
- net-libs/farstream:0.2=
- >=net-libs/telepathy-farstream-0.6.0:=
- >=net-libs/telepathy-glib-0.23.2
- >=net-im/telepathy-logger-0.8.0:=
-
- app-crypt/gcr[gtk]
- dev-libs/libxml2:2
- gnome-base/gsettings-desktop-schemas
- media-sound/pulseaudio[glib]
- net-libs/libsoup:2.4
- x11-libs/libX11
-
- geolocation? (
- >=app-misc/geoclue-2.1:2.0
- >=sci-geosciences/geocode-glib-3.10 )
- gnome-online-accounts? ( >=net-libs/gnome-online-accounts-3.5.1:= )
- map? (
- >=media-libs/clutter-1.7.14:1.0
- >=media-libs/clutter-gtk-0.90.3:1.0
- >=media-libs/libchamplain-0.12.1:0.12[gtk] )
- spell? (
- >=app-text/enchant-1.2:0
- >=app-text/iso-codes-0.35 )
- v4l? (
- dev-libs/libgudev:=
- media-plugins/gst-plugins-v4l2:1.0
- >=media-video/cheese-3.4:= )
-"
-
-# >=empathy-3.4 is incompatible with telepathy-rakia-0.6, bug #403861
-RDEPEND="${COMMON_DEPEND}
- media-libs/gst-plugins-base:1.0
- net-im/telepathy-connection-managers
- !<net-voip/telepathy-rakia-0.7
- x11-themes/adwaita-icon-theme
- gnome? ( gnome-extra/gnome-contacts )
-"
-DEPEND="${COMMON_DEPEND}
- ${PYTHON_DEPS}
- dev-libs/libxml2:2
- dev-libs/libxslt
- >=dev-util/intltool-0.50.0
- dev-util/itstool
- virtual/pkgconfig
- test? (
- sys-apps/grep
- >=dev-libs/check-0.9.4 )
-"
-PDEPEND=">=net-im/telepathy-mission-control-5.14"
-
-pkg_setup() {
- python-any-r1_pkg_setup
- export PYTHONIOENCODING=UTF-8 # See bug 489774
-}
-
-src_configure() {
- DOCS="CONTRIBUTORS AUTHORS ChangeLog NEWS README"
- gnome2_src_configure \
- --disable-coding-style-checks \
- --disable-static \
- --disable-ubuntu-online-accounts \
- --enable-gst-1.0 \
- $(use_enable debug) \
- $(use_enable geolocation geocode) \
- $(use_enable geolocation location) \
- $(use_enable gnome-online-accounts goa) \
- $(use_enable map) \
- $(use_enable spell) \
- $(use_enable v4l gudev) \
- $(use_with v4l cheese)
-}
-
-src_test() {
- dbus-launch virtx emake check #504516
-}
diff --git a/net-im/empathy/metadata.xml b/net-im/empathy/metadata.xml
deleted file mode 100644
index 54f02c7adf8b..000000000000
--- a/net-im/empathy/metadata.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
- <use>
- <flag name="gnome-online-accounts">Enable using
- <pkg>net-libs/gnome-online-accounts</pkg> for authorization (e.g.
- for Google Talk)</flag>
- <flag name="map">Enable world map support through
- <pkg>media-libs/libchamplain</pkg></flag>
- </use>
- <longdescription>
- Empathy consists of a rich set of reusable instant messaging widgets,
- and a GNOME client using those widgets. It uses Telepathy and Nokia's
- Mission Control. The main goal is to permit desktop integration by
- providing libempathy and libempathy-gtk libraries. libempathy-gtk is a
- set of powerful widgets that can be embeded into any GNOME application.
- A client application is provided.
- </longdescription>
-</pkgmetadata>
diff --git a/net-im/err/Manifest b/net-im/err/Manifest
index 62697aaabeec..56c41525b4c0 100644
--- a/net-im/err/Manifest
+++ b/net-im/err/Manifest
@@ -1 +1 @@
-DIST errbot-5.2.0.tar.gz 189305 BLAKE2B 96e275ee2a70fcab217f4a91c855192d8536cc177e0cafe08c8f55e17a09c06913c07e50473f87ea29e4537cd6389907615eba86d44756962ed59a87498be398 SHA512 d879e9da6647d697ead0a5f72fe83cf33614201863a9a62bc62c90d7ac0478e1e0902438c6f053d2ea56c940d68b136bbfa497175fb11647913bd7f139220aec
+DIST err-6.1.9.tar.gz 1554146 BLAKE2B 62a715d57c213b8d68c40afad92c14d26ff23fdce1df6b489be23817d33d8bc01c7c400ca7360546abc880b4a7e6205f92a3787cabfce3e14500ef8918a4b010 SHA512 cc8f7a00bc9bd7680d978b4c2e6c9ac78f32e0a99796cc9933802206b2c2998caf060d474aca374d8102923bf8eb64f69a01846c5761b13a8624641796893c9b
diff --git a/net-im/err/err-5.2.0-r1.ebuild b/net-im/err/err-6.1.9.ebuild
index 282cefd5b968..2abe868affb0 100644
--- a/net-im/err/err-5.2.0-r1.ebuild
+++ b/net-im/err/err-6.1.9.ebuild
@@ -1,75 +1,75 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_6 )
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
MY_PN="errbot"
MY_P="${MY_PN}-${PV}"
-inherit distutils-r1 user
-
DESCRIPTION="Multiprotocol chatbot designed to be easily deployable and maintainable"
-HOMEPAGE="http://errbot.io/"
-SRC_URI="mirror://pypi/${PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+HOMEPAGE="https://errbot.readthedocs.io/en/latest/"
+SRC_URI="https://github.com/errbotio/errbot/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 ~riscv"
LICENSE="GPL-3"
SLOT="0"
IUSE="irc +xmpp"
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
-RDEPEND="
+DEPEND="
+ acct-group/err
+ acct-user/err"
+RDEPEND="${DEPEND}
dev-python/ansi[${PYTHON_USEDEP}]
dev-python/bottle[${PYTHON_USEDEP}]
dev-python/colorlog[${PYTHON_USEDEP}]
dev-python/cryptography[${PYTHON_USEDEP}]
dev-python/daemonize[${PYTHON_USEDEP}]
- dev-python/dnspython[${PYTHON_USEDEP}]
+ dev-python/deepmerge[${PYTHON_USEDEP}]
+ dev-python/dulwich[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
dev-python/jinja[${PYTHON_USEDEP}]
dev-python/markdown[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
dev-python/pyopenssl[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-python/webtest[${PYTHON_USEDEP}]
- dev-python/yapsy[${PYTHON_USEDEP}]
irc? (
dev-python/irc[${PYTHON_USEDEP}]
)
xmpp? (
dev-python/pyasn1[${PYTHON_USEDEP}]
dev-python/pyasn1-modules[${PYTHON_USEDEP}]
- dev-python/sleekxmpp[${PYTHON_USEDEP}]
- )
-"
+ dev-python/slixmpp[${PYTHON_USEDEP}]
+ )"
+BDEPEND="test? ( dev-python/mock[${PYTHON_USEDEP}] )"
-S="${WORKDIR}/${MY_P}"
-
-# NOTES:
-# 1. Support for BOT_SENTRY option is missing, cause
-# we do not have apropriate packages in portage yet
-# 2. Currently only XMPP is supported(IRC still untested)
-# 3. Internal web server is temporarily removed (rocket-err from requires.txt)
-# 4. pygments-markdown-lexer dependency(needed only for debugging?) is temporarily removed (pygments-markdown-lexer from requires.txt)
-
-pkg_setup() {
- ebegin "Creating err group and user"
- enewgroup 'err'
- enewuser 'err' -1 -1 -1 'err'
- eend ${?}
-}
+distutils_enable_tests pytest
python_prepare_all() {
- sed -i \
- -e '/rocket-errbot/d' \
- -e 's/dnspython3/dnspython/' \
- -e '/pygments-markdown-lexer/d' \
- setup.py || die
+ sed -i -e '/pygments-markdown-lexer/d' setup.py || die
+
+ # NameError: name 'slack' is not defined
+ rm tests/backend_tests/slack_test.py || die
distutils-r1_python_prepare_all
}
+python_test() {
+ local deselect=(
+ tests/commands_test.py::test_plugin_cycle
+ tests/commands_test.py::test_broken_plugin
+ tests/commands_test.py::test_backup
+ tests/plugin_management_test.py::test_check_dependencies_requi
+ )
+
+ epytest ${deselect[@]/#/--deselect }
+}
+
python_install_all() {
distutils-r1_python_install_all
@@ -85,3 +85,7 @@ python_install_all() {
insinto /etc/${PN}
newins errbot/config-template.py config.py
}
+
+pkg_postinst() {
+ elog "For more backends (Slack, Telegram) support, use pip install \"errbot[slack]\""
+}
diff --git a/net-im/err/metadata.xml b/net-im/err/metadata.xml
index 21914ed5cfe5..3a8a8e82fe09 100644
--- a/net-im/err/metadata.xml
+++ b/net-im/err/metadata.xml
@@ -1,19 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>pinkbyte@gentoo.org</email>
- <name>Sergey Popov</name>
+ <maintainer type="person" proxied="yes">
+ <email>guyu2876@gmail.com</email>
+ <name>Yu Gu</name>
</maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <stabilize-allarches/>
<use>
<flag name="irc">Pull optional dependencies, needed for IRC backend</flag>
</use>
<upstream>
- <remote-id type="github">gbin/err</remote-id>
- <maintainer status="active">
- <email>gbin@gootz.net</email>
- <name>Guillaume BINET</name>
- </maintainer>
+ <remote-id type="github">errbotio/errbot</remote-id>
<remote-id type="pypi">err</remote-id>
</upstream>
</pkgmetadata>
diff --git a/net-im/fractal/Manifest b/net-im/fractal/Manifest
new file mode 100644
index 000000000000..2d39bb92a4b5
--- /dev/null
+++ b/net-im/fractal/Manifest
@@ -0,0 +1,9 @@
+DIST fractal-6.tar.bz2 1430986 BLAKE2B 2388771eb34b527ce758efc9a81a5134cb5558ba64bbdf2cbb4911e56698dff7fcf175280b1a8126ffe59189024dbdb3fb847a88e991b86adb81b5e0f64a4ef7 SHA512 78f5ae06117b8f7218084946c883022ec08ae213a433c17386cdf84a30dcb2796f957c13b5b21cef1e500df0b1a86794aff144698c014fdeb42b782bf5583280
+DIST fractal-6_beta-crates.tar.xz 45123596 BLAKE2B 88bd065066367943dc84af70a514f79e96382d62fb47caf80844a0c5532cc065fe5aa72bc737f240d6f64cd5e9f123be467c9fef0fd64e8f7a4aa496e613a408 SHA512 23cfff457be78c6ba2e71342d54605adad28dd0a21dcf3d3415477a36e78c52c921fd92083551798b6fccb4569814a33606812752c5b9c4ca2952e94f7f2f596
+DIST fractal-7.rc.tar.bz2 1758681 BLAKE2B e1ba8fc8a6c03056ade1ec47d7c366b10457e69f36926f53e8b3066c9a8381ff7de8905e7015fdd898f70443a3863b3eaab38e77bf5fff415ffef123bc9128f3 SHA512 7d8e4106dfdd3f5aa5615d5ddd299752b08052c303cb336d8e3b4f75ade938f91d363f3d6a51b44b12a6b86c65e127ebd4809383a58f9afdf4ee10361f72883d
+DIST fractal-7_rc-crates.tar.xz 50067064 BLAKE2B 0d11ba2a36b9e71292f0e44a42fd910aba6926bf310b807833a00c1ad41bbdc50b30155b7950805c4c6c261fec464949b73a01ad27c0f92f1e5947ba5e446582 SHA512 61d4a0dda16fab90cede30e791ab34a97f7d02cccf9d0dab323eac221a5cd523c6565ffa163f8b76815c0ba390e47e485721e9124b63d0c4221ae888cd2477a6
+DIST matrix-authentication-service-099eabd1371d2840a2f025a6372d6428039eb511.gh.tar.gz 1455871 BLAKE2B f774e3a7d86f06ebd6dbe5a9952533010d2d07d5e5857ea778c307d71c2b741027ca0787caaec602a41589f0fa7e25834fdea4325db665438a3964d1025412be SHA512 2f29252f740c3874eefdcafa2f8fe499254e01e5a3bf79dc4e93a77627f9352f0606b33529764d4cd6aefca8128c7f991c11e136ccc8286e3b3cd06959b4ffd7
+DIST matrix-rust-sdk-19526cea6bce133fc48904838956846aeb966dc6.gh.tar.gz 1743912 BLAKE2B 48b6352fbad17eb1651e5ca57bca25ea64dacecf0e97b63502fa54fd86ac65728656e799c0b50fddec575d05aa408c8347815f30afbf78413e973c35e0d8768f SHA512 a330250bf25dcb4a4a4a8bfc3bdda1a19d389080fb6a4983f00cc9cddc2f12b7a8f652942a58b9ed78b9c52802f94fd391e3dfd6971add8a44dbf66460488a1b
+DIST matrix-rust-sdk-88c4dec35f05ae295e0f2bf0362d6f5d72606d92.gh.tar.gz 1888735 BLAKE2B 5906290df4815505e28d3233c1e9515cb466b71068e6bbce4d89b33111b2367300e5503da61a7d1986e7ce1e515ab20c8d300c23de27e5168a216efba5c90893 SHA512 cced50fd36fe00223113533f65986b767919c6fadf68e6f4a8f778928510fa7702ef0d8f080e0eea686e1a99b324c6bafa141382e64aeb821fa1a1e258e1e98b
+DIST ruma-4c00bd010dbdca6005bd599b52e90a0b7015d056.gh.tar.gz 646845 BLAKE2B 0b634c56bf8235a532d0a9e4997328aa2c4f03390eaddd006f6e099a7fceb12de87b271d57b822f63198bbcfb3e3ecc1dd2b06a24e8344e3f740f4e6044afd58 SHA512 cf5428805b5eace7c6368d849a90d3b53916dcf0afabdbb38acad2e5cc0bce6d6a3d948ae50d7f3d65b221b7b30ccebdce61275461482fe691d44b0ceb129ca9
+DIST vodozemac-0c75746fc8a5eda4a0e490d345d1798b4c6cbd67.gh.tar.gz 200601 BLAKE2B 68fc156df1bc35d0a4d78e428ff39b521161e47e5dfe688b168c48510c44a80eef227851096b6875e71743301c178f8719ce6492b05f2c02941e5288f557f585 SHA512 1477da2e4c7be025ff3c1b73fce51e8d2a872d8d16481e7f159b55290810e315e0d92bb042204e3a28bc68fec346c769b04fcd82aff2de34a1293aa4bbfd14bd
diff --git a/net-im/fractal/fractal-6.ebuild b/net-im/fractal/fractal-6.ebuild
new file mode 100644
index 000000000000..975db0e74b70
--- /dev/null
+++ b/net-im/fractal/fractal-6.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [matrix-sdk-base]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-base'
+ [matrix-sdk-common]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-common'
+ [matrix-sdk-crypto]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-crypto'
+ [matrix-sdk-indexeddb]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-indexeddb'
+ [matrix-sdk-qrcode]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-qrcode'
+ [matrix-sdk-sqlite]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-sqlite'
+ [matrix-sdk-store-encryption]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-store-encryption'
+ [matrix-sdk-ui]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk-ui'
+ [matrix-sdk]='https://github.com/matrix-org/matrix-rust-sdk;19526cea6bce133fc48904838956846aeb966dc6;matrix-rust-sdk-%commit%/crates/matrix-sdk'
+)
+
+inherit cargo gnome2-utils meson
+
+MY_P=${P/_/.}
+DESCRIPTION="Matrix messaging app for GNOME written in Rust"
+HOMEPAGE="
+ https://wiki.gnome.org/Apps/Fractal
+ https://gitlab.gnome.org/World/fractal/
+"
+SRC_URI="
+ https://gitlab.gnome.org/World/fractal/-/archive/${PV/_/.}/${MY_P}.tar.bz2
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/${P}_beta-crates.tar.xz
+ "
+fi
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD GPL-3+ ISC MIT
+ MPL-2.0 MPL-2.0 Unicode-DFS-2016 ZLIB
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="amd64 arm64"
+
+DEPEND="
+ >=dev-libs/glib-2.72
+ >=gui-libs/gtk-4.10.0:4
+ >=gui-libs/libadwaita-1.4.0:1
+
+ >=media-libs/gstreamer-1.20:1.0
+ >=media-libs/gst-plugins-bad-1.20:1.0
+ >=media-libs/gst-plugins-base-1.20:1.0
+
+ >=gui-libs/gtksourceview-5.0.0:5
+ >=media-video/pipewire-0.3.0:=[gstreamer]
+ >=dev-libs/openssl-1.0.1:=
+ >=media-libs/libshumate-1.0.0:1.0
+ >=dev-db/sqlite-3.24.0:3
+ >=sys-apps/xdg-desktop-portal-1.14.1
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/secret-service
+"
+# clang needed by bindgen
+BDEPEND="
+ sys-devel/clang
+ >=virtual/rust-1.75.0
+"
+
+# Rust
+QA_FLAGS_IGNORED="usr/bin/fractal"
+
+src_configure() {
+ meson_src_configure
+ ln -s "${CARGO_HOME}" "${BUILD_DIR}/cargo-home" || die
+}
+
+pkg_postinst() {
+ gnome2_schemas_update
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_schemas_update
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/net-im/fractal/fractal-7_rc.ebuild b/net-im/fractal/fractal-7_rc.ebuild
new file mode 100644
index 000000000000..1541d0b57f73
--- /dev/null
+++ b/net-im/fractal/fractal-7_rc.ebuild
@@ -0,0 +1,115 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [mas-http]='https://github.com/matrix-org/matrix-authentication-service;099eabd1371d2840a2f025a6372d6428039eb511;matrix-authentication-service-%commit%/crates/http'
+ [mas-iana]='https://github.com/matrix-org/matrix-authentication-service;099eabd1371d2840a2f025a6372d6428039eb511;matrix-authentication-service-%commit%/crates/iana'
+ [mas-jose]='https://github.com/matrix-org/matrix-authentication-service;099eabd1371d2840a2f025a6372d6428039eb511;matrix-authentication-service-%commit%/crates/jose'
+ [mas-oidc-client]='https://github.com/matrix-org/matrix-authentication-service;099eabd1371d2840a2f025a6372d6428039eb511;matrix-authentication-service-%commit%/crates/oidc-client'
+ [matrix-sdk-base]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-base'
+ [matrix-sdk-common]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-common'
+ [matrix-sdk-crypto]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-crypto'
+ [matrix-sdk-indexeddb]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-indexeddb'
+ [matrix-sdk-qrcode]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-qrcode'
+ [matrix-sdk-sqlite]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-sqlite'
+ [matrix-sdk-store-encryption]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-store-encryption'
+ [matrix-sdk-ui]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk-ui'
+ [matrix-sdk]='https://github.com/matrix-org/matrix-rust-sdk;88c4dec35f05ae295e0f2bf0362d6f5d72606d92;matrix-rust-sdk-%commit%/crates/matrix-sdk'
+ [oauth2-types]='https://github.com/matrix-org/matrix-authentication-service;099eabd1371d2840a2f025a6372d6428039eb511;matrix-authentication-service-%commit%/crates/oauth2-types'
+ [ruma-client-api]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-client-api'
+ [ruma-common]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-common'
+ [ruma-events]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-events'
+ [ruma-federation-api]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-federation-api'
+ [ruma-html]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-html'
+ [ruma-identifiers-validation]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-identifiers-validation'
+ [ruma-macros]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-macros'
+ [ruma-push-gateway-api]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma-push-gateway-api'
+ [ruma]='https://github.com/ruma/ruma;4c00bd010dbdca6005bd599b52e90a0b7015d056;ruma-%commit%/crates/ruma'
+ [vodozemac]='https://github.com/matrix-org/vodozemac;0c75746fc8a5eda4a0e490d345d1798b4c6cbd67;vodozemac-%commit%'
+)
+
+inherit cargo gnome2-utils meson
+
+MY_P=${P/_/.}
+DESCRIPTION="Matrix messaging app for GNOME written in Rust"
+HOMEPAGE="
+ https://wiki.gnome.org/Apps/Fractal
+ https://gitlab.gnome.org/World/fractal/
+"
+SRC_URI="
+ https://gitlab.gnome.org/World/fractal/-/archive/${PV/_/.}/${MY_P}.tar.bz2
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/${P}-crates.tar.xz
+ "
+fi
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD GPL-3+ ISC MIT
+ MPL-2.0 MPL-2.0 Unicode-DFS-2016 ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+DEPEND="
+ >=dev-libs/glib-2.76
+ >=gui-libs/gtk-4.12.0:4
+ >=gui-libs/libadwaita-1.5.0:1
+
+ >=media-libs/gstreamer-1.20:1.0
+ >=media-libs/gst-plugins-bad-1.20:1.0
+ >=media-libs/gst-plugins-base-1.20:1.0
+
+ >=gui-libs/gtksourceview-5.0.0:5
+ >=media-video/pipewire-0.3.0:=[gstreamer]
+ >=dev-libs/openssl-1.0.1:=
+ >=media-libs/libshumate-1.0.0:1.0
+ >=dev-db/sqlite-3.24.0:3
+ >=sys-apps/xdg-desktop-portal-1.14.1
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/secret-service
+"
+# clang needed by bindgen
+BDEPEND="
+ sys-devel/clang
+ >=virtual/rust-1.75.0
+"
+
+# Rust
+QA_FLAGS_IGNORED="usr/bin/fractal"
+
+src_prepare() {
+ default
+
+ # upstream dev settings are insane
+ sed -i -e 's:profile\.dev:ignored.insanity:' Cargo.toml || die
+}
+
+src_configure() {
+ meson_src_configure
+ ln -s "${CARGO_HOME}" "${BUILD_DIR}/cargo-home" || die
+}
+
+pkg_postinst() {
+ gnome2_schemas_update
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_schemas_update
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/net-im/fractal/metadata.xml b/net-im/fractal/metadata.xml
new file mode 100644
index 000000000000..7090f1871134
--- /dev/null
+++ b/net-im/fractal/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gnome-gitlab">World/fractal</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/gajim/Manifest b/net-im/gajim/Manifest
index 23f269a95b7d..56614ec8e60c 100644
--- a/net-im/gajim/Manifest
+++ b/net-im/gajim/Manifest
@@ -1 +1,4 @@
-DIST gajim-1.1.3.tar.bz2 8013585 BLAKE2B 7be25380ecfe76ae5e2a7534665688dcca9ff850c12c7a450e8d1f6caab1820a1022750710df0a8a7ae259c5748f55582b272ad83fbdb0560f18e6ab8642bf78 SHA512 18062832f9b9295c7a844c347d5ece4a6db43126d5b58bbf362fdf2f8e082e2241c46dae6d1cbe66ebf2ef19f65618102c3c21fa0079a96fc21511e6e93420ac
+DIST gajim-1.7.3.tar.gz 3753831 BLAKE2B c7b8b1dc47b1faf9f1c0803e7931cb00bfbf31075fe481d557ec0f308c79e7580d0054d224781a67eaeea24dba40e40de5faf55d633d71f759022a1ac113f6e4 SHA512 66135e88784350bab79b61debc1b65144a82f8eee2c1841d21e4f511b3792361e57b60304d2478654e563687e8302426d76063e748236f4e1c959511c7c28665
+DIST gajim-1.8.0.tar.gz 3835799 BLAKE2B 030293fc8114877c6d060cd0feae0fecdcecbb26aac8817e1db7db59aee3ee79973efc94584434641ccd39adcf809e0c7a86a017ab46c9695666d898fb7b7905 SHA512 724290de6d438aacd929a9759d7a712068c303caf9002a1a70ddc0e9aa16387054d3e4efacf84eced28f49ef79749c764d5fe67fcb23c3baef3a2b7714df218e
+DIST gajim-1.8.1.tar.gz 3844796 BLAKE2B b7bbd751a051cd2a46e814a9b3ebc08f10a6570dc071752838a2463019cdf6ea4198f2a349f3935c33d988cd6908cf31dba572bac31f9363675433328e6d679b SHA512 b417d76a4225f16730441dee7befacd6db5be782c9271b789d5f9c10232e342f2d46930eef79a58839c13b2887926591d953a87a7544e32c7bf80d2c65390e31
+DIST gajim-1.8.4.tar.gz 3710470 BLAKE2B e23eafe707bc482a050fcef44df9e68af552444cce173c506538ebe01557a894dc0ba8b9afe18f195fd0b00b717b1268531a960b1c8b868c22081135d14e3079 SHA512 1a5b028c0e308eb15417c8c11584bc0e8b0218fead5155093ede4bc3961b6bee2b47bc3510f751dc70194634d6ca94d4a675f6891c8f050859fb4729020e52cb
diff --git a/net-im/gajim/gajim-1.1.3-r1.ebuild b/net-im/gajim/gajim-1.1.3-r1.ebuild
deleted file mode 100644
index 5f4b1383a6cb..000000000000
--- a/net-im/gajim/gajim-1.1.3-r1.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-PYTHON_REQ_USE="sqlite,xml"
-DISTUTILS_SINGLE_IMPL=1
-
-inherit distutils-r1 xdg-utils
-
-DESCRIPTION="Jabber client written in PyGTK"
-HOMEPAGE="https://www.gajim.org/"
-SRC_URI="https://www.gajim.org/downloads/$(ver_cut 1-2)/${P}.tar.bz2"
-
-LICENSE="GPL-3"
-SLOT="0"
-#KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-KEYWORDS="amd64 x86"
-IUSE="+crypt geolocation jingle networkmanager remote rst +spell upnp
- +webp"
-
-COMMON_DEPEND="
- dev-libs/gobject-introspection[cairo(+)]
- >=x11-libs/gtk+-3.22:3[introspection]"
-DEPEND="${COMMON_DEPEND}
- app-arch/unzip
- >=dev-util/intltool-0.40.1
- virtual/pkgconfig
- >=sys-devel/gettext-0.17-r1"
-RDEPEND="${COMMON_DEPEND}
- $(python_gen_cond_dep '
- dev-python/idna[${PYTHON_MULTI_USEDEP}]
- dev-python/precis-i18n[${PYTHON_MULTI_USEDEP}]
- dev-python/pyasn1[${PYTHON_MULTI_USEDEP}]
- dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
- dev-python/pycurl[${PYTHON_MULTI_USEDEP}]
- dev-python/pygobject:3[cairo,${PYTHON_MULTI_USEDEP}]
- >=dev-python/pyopenssl-0.14[${PYTHON_MULTI_USEDEP}]
- >=dev-python/python-nbxmpp-0.6.9[${PYTHON_MULTI_USEDEP}]
- x11-libs/libXScrnSaver
- app-crypt/libsecret[crypt,introspection]
- dev-python/keyring[${PYTHON_MULTI_USEDEP}]
- >=dev-python/secretstorage-3.1.1[${PYTHON_MULTI_USEDEP}]
- >=dev-python/cssutils-1.0.2[${PYTHON_MULTI_USEDEP}]
- crypt? (
- dev-python/pycryptodome[${PYTHON_MULTI_USEDEP}]
- >=dev-python/python-gnupg-0.4.0[${PYTHON_MULTI_USEDEP}] )
- geolocation? ( app-misc/geoclue[introspection] )
- jingle? (
- net-libs/farstream:0.2[introspection]
- media-libs/gstreamer:1.0[introspection]
- media-libs/gst-plugins-base:1.0[introspection]
- media-libs/gst-plugins-ugly:1.0
- )
- networkmanager? ( net-misc/networkmanager[introspection] )
- remote? (
- >=dev-python/dbus-python-1.2.0[${PYTHON_MULTI_USEDEP}]
- sys-apps/dbus[X]
- )
- rst? ( dev-python/docutils[${PYTHON_MULTI_USEDEP}] )
- spell? (
- app-text/gspell[introspection]
- app-text/hunspell
- )
- upnp? ( net-libs/gupnp-igd[introspection] )
- webp? ( dev-python/pillow[${PYTHON_MULTI_USEDEP}] )
- ')"
-
-RESTRICT="test"
-
-src_install() {
- distutils-r1_src_install
-
- # avoid precompressed man pages
- rm -r "${D}/usr/share/man"
- doman data/*.1
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
diff --git a/net-im/gajim/gajim-1.7.3-r1.ebuild b/net-im/gajim/gajim-1.7.3-r1.ebuild
new file mode 100644
index 000000000000..8cdd33907dc9
--- /dev/null
+++ b/net-im/gajim/gajim-1.7.3-r1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="sqlite,xml(+)"
+DISTUTILS_USE_PEP517=standalone
+DISTUTILS_SINGLE_IMPL=1
+
+inherit distutils-r1 xdg-utils
+
+DESCRIPTION="Jabber client written in PyGTK"
+HOMEPAGE="https://gajim.org/"
+SRC_URI="https://gajim.org/downloads/$(ver_cut 1-2)/${P/_p/-}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~loong ~riscv x86"
+IUSE="+crypt geolocation jingle omemo remote rst +spell upnp +webp"
+
+COMMON_DEPEND="
+ dev-libs/gobject-introspection[cairo(+)]
+ >=x11-libs/gtk+-3.22:3[introspection]
+ x11-libs/gtksourceview:4[introspection]"
+DEPEND="${COMMON_DEPEND}
+ app-arch/unzip
+ virtual/pkgconfig
+ >=sys-devel/gettext-0.17-r1"
+RDEPEND="${COMMON_DEPEND}
+ $(python_gen_cond_dep '
+ dev-python/idna[${PYTHON_USEDEP}]
+ >=dev-python/nbxmpp-4.2.2[${PYTHON_USEDEP}]
+ <dev-python/nbxmpp-5.0.0[${PYTHON_USEDEP}]
+ dev-python/precis-i18n[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ x11-libs/libXScrnSaver
+ app-crypt/libsecret[crypt,introspection]
+ dev-python/keyring[${PYTHON_USEDEP}]
+ >=dev-python/secretstorage-3.1.1[${PYTHON_USEDEP}]
+ dev-python/css-parser[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ net-libs/libsoup:3.0[introspection]
+ media-libs/gsound[introspection]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ crypt? (
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ >=dev-python/python-gnupg-0.4.0[${PYTHON_USEDEP}] )
+ geolocation? ( app-misc/geoclue[introspection] )
+ jingle? (
+ net-libs/farstream:0.2[introspection]
+ media-libs/gstreamer:1.0[introspection]
+ media-libs/gst-plugins-base:1.0[introspection]
+ media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-gtk
+ )
+ omemo? (
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/python-axolotl[${PYTHON_USEDEP}]
+ dev-python/qrcode[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ )
+ remote? (
+ >=dev-python/dbus-python-1.2.0[${PYTHON_USEDEP}]
+ sys-apps/dbus[X]
+ )
+ rst? ( dev-python/docutils[${PYTHON_USEDEP}] )
+ spell? (
+ app-text/gspell[introspection]
+ app-text/hunspell
+ )
+ upnp? ( net-libs/gupnp-igd:0[introspection] )
+ ')"
+
+python_compile() {
+ distutils-r1_python_compile
+ ./pep517build/build_metadata.py -o dist/metadata
+}
+
+python_install() {
+ distutils-r1_python_install
+ ./pep517build/install_metadata.py dist/metadata --prefix="${D}/usr"
+
+ rm "${D}"/usr/share/man/man1/*.gz
+ doman data/*.1
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+# Tests are unfortunately regularly broken
+RESTRICT="test"
diff --git a/net-im/gajim/gajim-1.1.3-r2.ebuild b/net-im/gajim/gajim-1.7.3.ebuild
index 12ae00b4857c..125c2e7bd15e 100644
--- a/net-im/gajim/gajim-1.1.3-r2.ebuild
+++ b/net-im/gajim/gajim-1.7.3.ebuild
@@ -1,46 +1,51 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8} )
-PYTHON_REQ_USE="sqlite,xml"
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="sqlite,xml(+)"
+DISTUTILS_USE_PEP517=standalone
DISTUTILS_SINGLE_IMPL=1
inherit distutils-r1 xdg-utils
DESCRIPTION="Jabber client written in PyGTK"
HOMEPAGE="https://gajim.org/"
-SRC_URI="https://gajim.org/downloads/$(ver_cut 1-2)/${P}.tar.bz2"
+SRC_URI="https://gajim.org/downloads/$(ver_cut 1-2)/${P/_p/-}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+crypt geolocation jingle remote rst +spell upnp +webp"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="+crypt geolocation jingle omemo remote rst +spell upnp +webp"
COMMON_DEPEND="
dev-libs/gobject-introspection[cairo(+)]
- >=x11-libs/gtk+-3.22:3[introspection]"
+ >=x11-libs/gtk+-3.22:3[introspection]
+ x11-libs/gtksourceview:4[introspection]"
DEPEND="${COMMON_DEPEND}
app-arch/unzip
- >=dev-util/intltool-0.40.1
virtual/pkgconfig
>=sys-devel/gettext-0.17-r1"
RDEPEND="${COMMON_DEPEND}
$(python_gen_cond_dep '
dev-python/idna[${PYTHON_USEDEP}]
+ >=dev-python/nbxmpp-4.2.2[${PYTHON_USEDEP}]
+ <dev-python/nbxmpp-5.0.0[${PYTHON_USEDEP}]
dev-python/precis-i18n[${PYTHON_USEDEP}]
dev-python/pyasn1[${PYTHON_USEDEP}]
dev-python/pycairo[${PYTHON_USEDEP}]
dev-python/pycurl[${PYTHON_USEDEP}]
dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
- >=dev-python/pyopenssl-0.14[${PYTHON_USEDEP}]
- >=dev-python/python-nbxmpp-0.6.9[${PYTHON_USEDEP}]
x11-libs/libXScrnSaver
app-crypt/libsecret[crypt,introspection]
dev-python/keyring[${PYTHON_USEDEP}]
>=dev-python/secretstorage-3.1.1[${PYTHON_USEDEP}]
- >=dev-python/cssutils-1.0.2[${PYTHON_USEDEP}]
+ dev-python/css-parser[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ net-libs/libsoup:3.0[introspection]
+ media-libs/gsound[introspection]
+ dev-python/pillow[${PYTHON_USEDEP}]
crypt? (
dev-python/pycryptodome[${PYTHON_USEDEP}]
>=dev-python/python-gnupg-0.4.0[${PYTHON_USEDEP}] )
@@ -50,6 +55,13 @@ RDEPEND="${COMMON_DEPEND}
media-libs/gstreamer:1.0[introspection]
media-libs/gst-plugins-base:1.0[introspection]
media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-gtk
+ )
+ omemo? (
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/python-axolotl[${PYTHON_USEDEP}]
+ dev-python/qrcode[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
)
remote? (
>=dev-python/dbus-python-1.2.0[${PYTHON_USEDEP}]
@@ -60,15 +72,11 @@ RDEPEND="${COMMON_DEPEND}
app-text/gspell[introspection]
app-text/hunspell
)
- upnp? ( net-libs/gupnp-igd[introspection] )
- webp? ( dev-python/pillow[${PYTHON_USEDEP}] )
+ upnp? ( net-libs/gupnp-igd:0[introspection] )
')"
src_install() {
distutils-r1_src_install
-
- # avoid precompressed man pages
- rm -r "${D}/usr/share/man"
doman data/*.1
}
@@ -81,3 +89,6 @@ pkg_postrm() {
xdg_icon_cache_update
xdg_desktop_database_update
}
+
+# Tests are unfortunately regularly broken
+RESTRICT="test"
diff --git a/net-im/gajim/gajim-1.8.0.ebuild b/net-im/gajim/gajim-1.8.0.ebuild
new file mode 100644
index 000000000000..0e911bf76b48
--- /dev/null
+++ b/net-im/gajim/gajim-1.8.0.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="sqlite,xml(+)"
+DISTUTILS_USE_PEP517=standalone
+DISTUTILS_SINGLE_IMPL=1
+
+inherit distutils-r1 xdg-utils
+
+DESCRIPTION="Jabber client written in PyGTK"
+HOMEPAGE="https://gajim.org/"
+SRC_URI="https://gajim.org/downloads/$(ver_cut 1-2)/${P/_p/-}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+# KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+# Gajim depends now on omemo-dr. Add KEYWORDS again,
+# when https://bugs.gentoo.org/912285 is fixed.
+
+KEYWORDS="~amd64"
+IUSE="+crypt geolocation jingle remote rst +spell upnp +webp"
+
+COMMON_DEPEND="
+ dev-libs/gobject-introspection[cairo(+)]
+ >=x11-libs/gtk+-3.22:3[introspection]
+ x11-libs/gtksourceview:4[introspection]"
+DEPEND="${COMMON_DEPEND}
+ app-arch/unzip
+ virtual/pkgconfig
+ >=x11-libs/pango-1.5.0
+ >=sys-devel/gettext-0.17-r1"
+RDEPEND="${COMMON_DEPEND}
+ $(python_gen_cond_dep '
+ dev-python/idna[${PYTHON_USEDEP}]
+ >=dev-python/nbxmpp-4.2.2[${PYTHON_USEDEP}]
+ <dev-python/nbxmpp-5.0.0[${PYTHON_USEDEP}]
+ dev-python/precis-i18n[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ x11-libs/libXScrnSaver
+ app-crypt/libsecret[crypt,introspection]
+ dev-python/keyring[${PYTHON_USEDEP}]
+ >=dev-python/secretstorage-3.1.1[${PYTHON_USEDEP}]
+ dev-python/css-parser[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ net-libs/libsoup:3.0[introspection]
+ media-libs/gsound[introspection]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/python-axolotl[${PYTHON_USEDEP}]
+ dev-python/qrcode[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/omemo-dr[${PYTHON_USEDEP}]
+ crypt? (
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ >=dev-python/python-gnupg-0.4.0[${PYTHON_USEDEP}] )
+ geolocation? ( app-misc/geoclue[introspection] )
+ jingle? (
+ net-libs/farstream:0.2[introspection]
+ media-libs/gstreamer:1.0[introspection]
+ media-libs/gst-plugins-base:1.0[introspection]
+ media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-gtk
+ )
+ remote? (
+ >=dev-python/dbus-python-1.2.0[${PYTHON_USEDEP}]
+ sys-apps/dbus[X]
+ )
+ rst? ( dev-python/docutils[${PYTHON_USEDEP}] )
+ spell? (
+ app-text/gspell[introspection]
+ app-text/hunspell
+ )
+ upnp? ( net-libs/gupnp-igd:0[introspection] )
+ ')"
+
+python_compile() {
+ distutils-r1_python_compile
+ ./pep517build/build_metadata.py -o dist/metadata
+}
+
+python_install() {
+ distutils-r1_python_install
+ ./pep517build/install_metadata.py dist/metadata --prefix="${D}/usr"
+
+ gzip -d "${ED}"/usr/share/man/man1/*.gz || die
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+# Tests are unfortunately regularly broken
+RESTRICT="test"
diff --git a/net-im/gajim/gajim-1.8.1.ebuild b/net-im/gajim/gajim-1.8.1.ebuild
new file mode 100644
index 000000000000..b66f62a0dc62
--- /dev/null
+++ b/net-im/gajim/gajim-1.8.1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="sqlite,xml(+)"
+DISTUTILS_USE_PEP517=standalone
+DISTUTILS_SINGLE_IMPL=1
+
+inherit distutils-r1 xdg-utils
+
+DESCRIPTION="Jabber client written in PyGTK"
+HOMEPAGE="https://gajim.org/"
+SRC_URI="https://gajim.org/downloads/$(ver_cut 1-2)/${P/_p/-}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+# KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+# Gajim depends now on omemo-dr. Add KEYWORDS again,
+# when https://bugs.gentoo.org/912285 is fixed.
+
+KEYWORDS="amd64 ~arm64 ~loong ~riscv x86"
+IUSE="+crypt geolocation jingle remote rst +spell upnp +webp"
+
+COMMON_DEPEND="
+ dev-libs/gobject-introspection[cairo(+)]
+ >=x11-libs/gtk+-3.22:3[introspection]
+ x11-libs/gtksourceview:4[introspection]"
+DEPEND="${COMMON_DEPEND}
+ app-arch/unzip
+ virtual/pkgconfig
+ >=x11-libs/pango-1.5.0
+ >=sys-devel/gettext-0.17-r1"
+RDEPEND="${COMMON_DEPEND}
+ $(python_gen_cond_dep '
+ dev-python/idna[${PYTHON_USEDEP}]
+ >=dev-python/nbxmpp-4.2.2[${PYTHON_USEDEP}]
+ <dev-python/nbxmpp-5.0.0[${PYTHON_USEDEP}]
+ dev-python/precis-i18n[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ x11-libs/libXScrnSaver
+ app-crypt/libsecret[crypt,introspection]
+ dev-python/keyring[${PYTHON_USEDEP}]
+ >=dev-python/secretstorage-3.1.1[${PYTHON_USEDEP}]
+ dev-python/css-parser[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ net-libs/libsoup:3.0[introspection]
+ media-libs/gsound[introspection]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/python-axolotl[${PYTHON_USEDEP}]
+ dev-python/qrcode[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/omemo-dr[${PYTHON_USEDEP}]
+ crypt? (
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ >=dev-python/python-gnupg-0.4.0[${PYTHON_USEDEP}] )
+ geolocation? ( app-misc/geoclue[introspection] )
+ jingle? (
+ net-libs/farstream:0.2[introspection]
+ media-libs/gstreamer:1.0[introspection]
+ media-libs/gst-plugins-base:1.0[introspection]
+ media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-gtk
+ )
+ remote? (
+ >=dev-python/dbus-python-1.2.0[${PYTHON_USEDEP}]
+ sys-apps/dbus[X]
+ )
+ rst? ( dev-python/docutils[${PYTHON_USEDEP}] )
+ spell? (
+ app-text/gspell[introspection]
+ app-text/hunspell
+ )
+ upnp? ( net-libs/gupnp-igd:0[introspection] )
+ ')"
+
+python_compile() {
+ distutils-r1_python_compile
+ ./pep517build/build_metadata.py -o dist/metadata
+}
+
+python_install() {
+ distutils-r1_python_install
+ ./pep517build/install_metadata.py dist/metadata --prefix="${D}/usr"
+
+ gzip -d "${ED}"/usr/share/man/man1/*.gz || die
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+# Tests are unfortunately regularly broken
+RESTRICT="test"
diff --git a/net-im/gajim/gajim-1.8.4.ebuild b/net-im/gajim/gajim-1.8.4.ebuild
new file mode 100644
index 000000000000..32d9ec5bc5a5
--- /dev/null
+++ b/net-im/gajim/gajim-1.8.4.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="sqlite,xml(+)"
+DISTUTILS_USE_PEP517=standalone
+DISTUTILS_SINGLE_IMPL=1
+
+inherit distutils-r1 xdg-utils
+
+DESCRIPTION="Jabber client written in PyGTK"
+HOMEPAGE="https://gajim.org/"
+SRC_URI="https://gajim.org/downloads/$(ver_cut 1-2)/${P/_p/-}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+# KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+# Gajim depends now on omemo-dr. Add KEYWORDS again,
+# when https://bugs.gentoo.org/912285 is fixed.
+
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+IUSE="+crypt geolocation jingle remote rst +spell upnp +webp"
+
+COMMON_DEPEND="
+ dev-libs/gobject-introspection[cairo(+)]
+ >=x11-libs/gtk+-3.22:3[introspection]
+ x11-libs/gtksourceview:4[introspection]"
+DEPEND="${COMMON_DEPEND}
+ app-arch/unzip
+ virtual/pkgconfig
+ >=x11-libs/pango-1.5.0
+ >=sys-devel/gettext-0.17-r1"
+RDEPEND="${COMMON_DEPEND}
+ $(python_gen_cond_dep '
+ dev-python/idna[${PYTHON_USEDEP}]
+ >=dev-python/nbxmpp-4.2.2[${PYTHON_USEDEP}]
+ <dev-python/nbxmpp-5.0.0[${PYTHON_USEDEP}]
+ dev-python/precis-i18n[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ x11-libs/libXScrnSaver
+ app-crypt/libsecret[crypt,introspection]
+ dev-python/keyring[${PYTHON_USEDEP}]
+ >=dev-python/secretstorage-3.1.1[${PYTHON_USEDEP}]
+ dev-python/css-parser[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ net-libs/libsoup:3.0[introspection]
+ media-libs/gsound[introspection]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/python-axolotl[${PYTHON_USEDEP}]
+ dev-python/qrcode[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/omemo-dr[${PYTHON_USEDEP}]
+ crypt? (
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ >=dev-python/python-gnupg-0.4.0[${PYTHON_USEDEP}] )
+ geolocation? ( app-misc/geoclue[introspection] )
+ jingle? (
+ net-libs/farstream:0.2[introspection]
+ media-libs/gstreamer:1.0[introspection]
+ media-libs/gst-plugins-base:1.0[introspection]
+ media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-gtk
+ )
+ remote? (
+ >=dev-python/dbus-python-1.2.0[${PYTHON_USEDEP}]
+ sys-apps/dbus[X]
+ )
+ rst? ( dev-python/docutils[${PYTHON_USEDEP}] )
+ spell? (
+ app-text/gspell[introspection]
+ app-text/hunspell
+ )
+ upnp? ( net-libs/gupnp-igd:0[introspection] )
+ ')"
+
+python_compile() {
+ distutils-r1_python_compile
+ ./pep517build/build_metadata.py -o dist/metadata
+}
+
+python_install() {
+ distutils-r1_python_install
+ ./pep517build/install_metadata.py dist/metadata --prefix="${D}/usr"
+
+ gzip -d "${ED}"/usr/share/man/man1/*.gz || die
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+# Tests are unfortunately regularly broken
+RESTRICT="test"
diff --git a/net-im/gajim/metadata.xml b/net-im/gajim/metadata.xml
index bd95a0793560..543a6366d0ff 100644
--- a/net-im/gajim/metadata.xml
+++ b/net-im/gajim/metadata.xml
@@ -1,21 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>hanno@gentoo.org</email>
- </maintainer>
- <longdescription>
- A fully featured and easy to use GTK+ Jabber client written in PyGTK.
- </longdescription>
+ <!-- maintainer-needed -->
<use>
<flag name="crypt">End to end encryption and GPG encryption</flag>
<flag name="geolocation">Sharing your location</flag>
<flag name="jingle">Audio and video calls</flag>
- <flag name="networkmanager">Network lose detection using NetworkManager</flag>
<flag name="remote">Controling Gajim instance from command line with gajim-remote</flag>
<flag name="rst">Generating XHTML output from RST code</flag>
<flag name="spell">Spellchecking of composed messages</flag>
<flag name="upnp">Ability to request your router to forward port for file transfer</flag>
<flag name="webp">Support WebP avatars</flag>
+ <flag name="omemo">Install dependencies for OMEMO encryption plugin</flag>
</use>
</pkgmetadata>
diff --git a/net-im/gg-transport/Manifest b/net-im/gg-transport/Manifest
deleted file mode 100644
index a504b7ae1389..000000000000
--- a/net-im/gg-transport/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jggtrans-2.2.6.tar.gz 883775 BLAKE2B bc27dce3fb70e7a5a1d71e8b46f1acf2c21899b956e5fab4c1d85756356973492d1617bd66517052f2fcdd81ab27e8e330837ee01787180d5193e62255cbcba6 SHA512 9fa6beb03427dc29db6b1aa5707486b857d3f850ed4efc9f2a627cbec4a9e40c91a9092b42a4a338976659f6ebfa0ca6f69e194e51bc51744a7665494fc210e7
diff --git a/net-im/gg-transport/files/jggtrans-2.2.4 b/net-im/gg-transport/files/jggtrans-2.2.4
deleted file mode 100644
index 35713d52cfec..000000000000
--- a/net-im/gg-transport/files/jggtrans-2.2.4
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-depend() {
- after net jabber-server
-}
-
-start() {
- ebegin "Starting Jabber GG Transport"
- start-stop-daemon --start --user jabber --group jabber --exec /usr/sbin/jggtrans -- -u jabber -g jabber /etc/jabber/jggtrans.xml
- eend $?
-}
-
-stop() {
- ebegin "Stopping Jabber GG Transport"
- start-stop-daemon --stop --pidfile /var/run/jabber/jggtrans.pid
- eend $?
-}
diff --git a/net-im/gg-transport/gg-transport-2.2.6.ebuild b/net-im/gg-transport/gg-transport-2.2.6.ebuild
deleted file mode 100644
index 99cf02c8ee1a..000000000000
--- a/net-im/gg-transport/gg-transport-2.2.6.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Gadu-Gadu transport for Jabber"
-HOMEPAGE="https://github.com/Jajcus/jggtrans"
-SRC_URI="https://github.com/Jajcus/jggtrans/releases/download/v${PV}/jggtrans-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=net-im/jabber-base-0.01
- >=dev-libs/glib-2.6.4:2
- net-dns/libidn
- >=net-libs/libgadu-1.9.0_rc3
- dev-libs/expat"
-DEPEND="${RDEPEND}
- >=sys-devel/gettext-0.18.3
- virtual/pkgconfig
-"
-
-S="${WORKDIR}/jggtrans-${PV}"
-
-src_install() {
- emake DESTDIR="${D}" install
-
- keepdir /var/spool/jabber/gg
- keepdir /var/run/jabber
- keepdir /var/log/jabber
- fowners jabber:jabber /var/spool/jabber/gg
- fowners jabber:jabber /var/run/jabber
- fowners jabber:jabber /var/log/jabber
-
- newinitd "${FILESDIR}/jggtrans-2.2.4" jggtrans
-
- insinto /etc/jabber
- doins jggtrans.xml
-
- sed -i \
- -e 's,/var/lib/jabber/spool/gg.localhost/,/var/spool/jabber/gg/,' \
- -e 's,/var/lib/jabber/ggtrans.pid,/var/run/jabber/jggtrans.pid,' \
- -e 's,/tmp/ggtrans.log,/var/log/jabber/jggtrans.log,' \
- "${D}/etc/jabber/jggtrans.xml" || die "sed failed"
-
- einstalldocs
-}
diff --git a/net-im/gg-transport/metadata.xml b/net-im/gg-transport/metadata.xml
deleted file mode 100644
index 163724893272..000000000000
--- a/net-im/gg-transport/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription>
- Gadu-Gadu is a IM network vary famous in Poland, this package will
- enable your jabber server to talk to that network.
- </longdescription>
- <upstream>
- <remote-id type="github">Jajcus/jggtrans</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/net-im/gitter-bin/Manifest b/net-im/gitter-bin/Manifest
index 81b684895c88..91239435c8c0 100644
--- a/net-im/gitter-bin/Manifest
+++ b/net-im/gitter-bin/Manifest
@@ -1,4 +1,4 @@
-DIST gitter_3.1.0_amd64.deb 43340316 BLAKE2B 18682a8f467159fc3a0f765505a53982ba3bf0c7992782e256388076f6fba82e4e895d915376f9dfd333af57288d66f93e58bc9e48ecbfb1a5d11f060ac2df41 SHA512 b2888a2c9ed399102e2e80a2ec1ffafe093bdbe2f11d74753052c14841201cf586e0bb2a42ff8e67517d000a7c0b6f6aed30c32b3a7ecc683a18f8433b0bfa1c
-DIST gitter_3.1.0_i386.deb 45251440 BLAKE2B 01ea8b670e95496b7b4015ad6a31f546cf00a615dc562255b5761e797fd65ac00c5a89dd6353522359cbb5abf299aed50e3461fd1d2364e7667f4f748a288137 SHA512 4e58f5ca1a5db9139bef29eff2ffd7d599268844c11be65f98e9a78ad7a602c5d115e633c02519d025fe3d81f3174c478d5590bb2beaa92697617dc11fc141f6
DIST gitter_4.1.0_amd64.deb 98314502 BLAKE2B 3f14e044865c9af89dc6ac62dbe8f8221824c6f529418a31fd5236ecec45ddfd6013d734100a414a2bbca0db9e8c40cb7046868391d507ba5c9de9da0c66225d SHA512 2ea0ebbc05cbdc40e4e8cb07a68b3948477a61a81e550b8f131af46315c6fc7547c0954aa101260f93b63c557f3e00b1e23006a236b77be01ea4a82edd170f70
DIST gitter_4.1.0_i386.deb 101820112 BLAKE2B 3d1ab270389da9c82440dc7a204d1973402de1648e0387a026601d34bd1f2b26469b0fab9be4ff4b596cbe257047e88446b5c36d08deeeae1aaea4f387c45ac3 SHA512 c76da19e6eaf79894319848b6121660dab0bd8f2d8cdfaf413a68bee0f4c62fdca25c19c24eeb226164b643582db9ed686c68a5f72701618d41b423df9c9cee8
+DIST gitter_5.0.1_amd64.deb 136453344 BLAKE2B 6e057fb04872f89961a8970d079b14fbaf416db126ac0596485936a069a85fb5e783b052e20af7fbce40bc4805313ad793873c6ad3cadf87fc2662fef39604f1 SHA512 9bca96a2e312e7893ea7e5faca4a6a3e343d0d3bf96b86e0353437517fc006eb917787cb872f305d1c843978cfd80f729474bd485070ec26d99d67d24ffbf4d1
+DIST gitter_5.0.1_i386.deb 141585750 BLAKE2B 464e3416085717702df605fefade3a5aabafbdbfa9274eb9da03832b9a5e442d0a92eacd5c4d757e64709b3ba39bfdc5a87d689bb24db1ede3aca43b187550ce SHA512 b340b161728530e6c397ad6d5fbd591393a893c73b29056094514514d3e0f3a30ebdab94bb19f6c78cf1c73a30c6cd145476e34db5eaea06ba061f8a410579f7
diff --git a/net-im/gitter-bin/gitter-bin-3.1.0.ebuild b/net-im/gitter-bin/gitter-bin-3.1.0.ebuild
deleted file mode 100644
index e6e41ad17b2a..000000000000
--- a/net-im/gitter-bin/gitter-bin-3.1.0.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PN="${PN/-bin/}"
-
-inherit eutils gnome2-utils unpacker
-
-DESCRIPTION="Chat and network platform"
-HOMEPAGE="http://www.gitter.im/"
-SRC_URI="
- amd64? ( https://update.gitter.im/linux64/${MY_PN}_${PV}_amd64.deb )
- x86? ( https://update.gitter.im/linux32/${MY_PN}_${PV}_i386.deb )"
-LICENSE="MIT no-source-code"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE=""
-RESTRICT="bindist mirror"
-
-RDEPEND="dev-libs/expat:0
- dev-libs/glib:2
- dev-libs/nspr:0
- dev-libs/nss:0
- gnome-base/gconf:2
- media-libs/alsa-lib:0
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- sys-apps/dbus:0
- x11-libs/cairo:0
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:2
- x11-libs/libnotify:0
- x11-libs/libX11:0
- x11-libs/libXcomposite:0
- x11-libs/libXcursor:0
- x11-libs/libXdamage:0
- x11-libs/libXext:0
- x11-libs/libXfixes:0
- x11-libs/libXi:0
- x11-libs/libXrandr:0
- x11-libs/libXrender:0
- x11-libs/libXtst:0
- x11-libs/pango:0"
-
-QA_PREBUILT="/opt/${MY_PN}/${MY_PN^}"
-
-S="${WORKDIR}"
-
-src_prepare() {
- local arch=$(usex amd64 "64" "32")
-
- default
- # Modify desktop file to use common paths
- sed -i \
- -e '/Exec/s/=.*/=\/usr\/bin\/gitter/' \
- -e '/Icon/s/=.*/=\/usr\/share\/pixmaps\/gitter.png/' \
- opt/${MY_PN^}/linux${arch}/${MY_PN}.desktop || die "sed failed"
-}
-
-src_install() {
- local arch=$(usex amd64 "64" "32")
-
- insinto /usr/share/pixmaps
- newins opt/${MY_PN^}/linux${arch}/logo.png ${MY_PN}.png
-
- newicon -s 256 opt/${MY_PN^}/linux${arch}/logo.png ${MY_PN}.png
- domenu opt/${MY_PN^}/linux${arch}/${MY_PN}.desktop
-
- insinto /opt/${MY_PN}
- doins opt/${MY_PN^}/linux${arch}/{Gitter,icudtl.dat,libffmpegsumo.so,nw.pak}
- insinto /opt/${MY_PN}/locales
- doins -r opt/${MY_PN^}/linux${arch}/locales/.
- fperms +x /opt/${MY_PN}/${MY_PN^}
- dosym /opt/${MY_PN}/${MY_PN^} /usr/bin/${MY_PN}
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
-}
diff --git a/net-im/gitter-bin/gitter-bin-4.1.0.ebuild b/net-im/gitter-bin/gitter-bin-4.1.0-r1.ebuild
index b0d7e485b685..cff11e1e4799 100644
--- a/net-im/gitter-bin/gitter-bin-4.1.0.ebuild
+++ b/net-im/gitter-bin/gitter-bin-4.1.0-r1.ebuild
@@ -1,12 +1,12 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
MULTILIB_COMPAT=( abi_x86_{32,64} )
MY_PN="${PN/-bin/}"
-inherit desktop gnome2-utils multilib-build pax-utils unpacker
+inherit desktop multilib-build pax-utils unpacker xdg
QA_PREBUILT="opt/gitter/pnacl/pnacl_public_x86_64_libcrt_platform_a
opt/gitter/pnacl/pnacl_public_x86_64_pnacl_llc_nexe
@@ -23,9 +23,11 @@ QA_PREBUILT="opt/gitter/pnacl/pnacl_public_x86_64_libcrt_platform_a
opt/gitter/nwjc
opt/gitter/nacl_irt_x86_64.nexe
opt/gitter/Gitter"
+QA_FLAGS_IGNORED="/opt/gitter/minidump_stackwalk
+ /opt/gitter/nacl_helper_bootstrap"
DESCRIPTION="Chat and network platform"
-HOMEPAGE="http://www.gitter.im/"
+HOMEPAGE="https://www.gitter.im"
SRC_URI="
amd64? ( https://update.gitter.im/linux64/${MY_PN}_${PV}_amd64.deb )
x86? ( https://update.gitter.im/linux32/${MY_PN}_${PV}_i386.deb )"
@@ -33,7 +35,7 @@ SRC_URI="
LICENSE="all-rights-reserved"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
-IUSE="pax_kernel"
+IUSE=""
RESTRICT="bindist mirror"
RDEPEND="dev-libs/atk:0[${MULTILIB_USEDEP}]
@@ -42,6 +44,7 @@ RDEPEND="dev-libs/atk:0[${MULTILIB_USEDEP}]
dev-libs/nspr:0[${MULTILIB_USEDEP}]
dev-libs/nss:0[${MULTILIB_USEDEP}]
media-libs/alsa-lib:0[${MULTILIB_USEDEP}]
+ net-print/cups:0[${MULTILIB_USEDEP}]
sys-apps/dbus:0[${MULTILIB_USEDEP}]
x11-libs/cairo:0[${MULTILIB_USEDEP}]
x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
@@ -56,9 +59,10 @@ RDEPEND="dev-libs/atk:0[${MULTILIB_USEDEP}]
x11-libs/libXi:0[${MULTILIB_USEDEP}]
x11-libs/libXrandr:0[${MULTILIB_USEDEP}]
x11-libs/libXrender:0[${MULTILIB_USEDEP}]
+ x11-libs/libXScrnSaver:0[${MULTILIB_USEDEP}]
x11-libs/libXtst:0[${MULTILIB_USEDEP}]
x11-libs/pango:0[${MULTILIB_USEDEP}]"
-DEPEND="sys-apps/fix-gnustack"
+BDEPEND="sys-apps/fix-gnustack"
S="${WORKDIR}"
@@ -91,17 +95,5 @@ src_install() {
fperms +x /opt/gitter/Gitter
dosym ../../opt/gitter/Gitter /usr/bin/gitter
- use pax_kernel && pax-mark -m "${ED%/}"/opt/gitter/Gitter
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
+ pax-mark -m "${ED}"/opt/gitter/Gitter
}
diff --git a/net-im/gitter-bin/gitter-bin-5.0.1-r1.ebuild b/net-im/gitter-bin/gitter-bin-5.0.1-r1.ebuild
new file mode 100644
index 000000000000..e4dd3c659d02
--- /dev/null
+++ b/net-im/gitter-bin/gitter-bin-5.0.1-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MULTILIB_COMPAT=( abi_x86_{32,64} )
+
+inherit desktop multilib-build pax-utils unpacker xdg
+
+MY_PN="${PN/-bin/}"
+
+DESCRIPTION="Chat and network platform"
+HOMEPAGE="https://gitter.im"
+SRC_URI="amd64? ( https://update.gitter.im/linux64/${MY_PN}_${PV}_amd64.deb )
+ x86? ( https://update.gitter.im/linux32/${MY_PN}_${PV}_i386.deb )"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="abi_x86_32 +abi_x86_64"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
+ dev-libs/atk:0[${MULTILIB_USEDEP}]
+ dev-libs/expat:0[${MULTILIB_USEDEP}]
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ dev-libs/nspr:0[${MULTILIB_USEDEP}]
+ dev-libs/nss:0[${MULTILIB_USEDEP}]
+ media-libs/alsa-lib:0[${MULTILIB_USEDEP}]
+ net-print/cups:0[${MULTILIB_USEDEP}]
+ sys-apps/dbus:0[${MULTILIB_USEDEP}]
+ x11-libs/cairo:0[${MULTILIB_USEDEP}]
+ x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ x11-libs/libdrm:0[${MULTILIB_USEDEP}]
+ x11-libs/libX11:0[${MULTILIB_USEDEP}]
+ x11-libs/libxcb:0/1.12[${MULTILIB_USEDEP}]
+ x11-libs/libXcomposite:0[${MULTILIB_USEDEP}]
+ x11-libs/libXcursor:0[${MULTILIB_USEDEP}]
+ x11-libs/libXdamage:0[${MULTILIB_USEDEP}]
+ x11-libs/libXext:0[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes:0[${MULTILIB_USEDEP}]
+ x11-libs/libXi:0[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr:0[${MULTILIB_USEDEP}]
+ x11-libs/libXrender:0[${MULTILIB_USEDEP}]
+ x11-libs/libXScrnSaver:0[${MULTILIB_USEDEP}]
+ x11-libs/libXtst:0[${MULTILIB_USEDEP}]
+ x11-libs/pango:0[${MULTILIB_USEDEP}]"
+
+S="${WORKDIR}"
+
+QA_EXECSTACK="opt/gitter/pnacl/pnacl_public_x86_64_libcrt_platform_a*"
+QA_PREBUILT="opt/gitter/pnacl/pnacl_public_x86_64_pnacl_llc_nexe
+ opt/gitter/pnacl/pnacl_public_x86_64_ld_nexe
+ opt/gitter/pnacl/pnacl_public_x86_64_pnacl_sz_nexe
+ opt/gitter/payload
+ opt/gitter/swiftshader/libEGL.so
+ opt/gitter/swiftshader/libGLESv2.so
+ opt/gitter/chromedriver
+ opt/gitter/lib/libnw.so
+ opt/gitter/lib/libnode.so
+ opt/gitter/lib/libffmpeg.so
+ opt/gitter/nacl_helper
+ opt/gitter/nwjc
+ opt/gitter/nacl_irt_x86_64.nexe
+ opt/gitter/Gitter"
+QA_FLAGS_IGNORED="opt/gitter/minidump_stackwalk
+ opt/gitter/nacl_helper_bootstrap
+ opt/gitter/crashpad_handler
+ opt/gitter/lib/libEGL.so
+ opt/gitter/lib/libGLESv2.so"
+
+src_prepare() {
+ default
+
+ local arch
+ multilib_get_enabled_abis
+ arch="$(usex amd64 "64" "32")"
+
+ # Remove hardcoded paths
+ sed -i \
+ -e '/Exec/s/=.*/=gitter/' \
+ -e '/Icon/s/=.*/=gitter/' \
+ opt/Gitter/linux"${arch}"/gitter.desktop || die "sed failed"
+}
+
+src_install() {
+ local arch
+ arch="$(usex amd64 "64" "32")"
+
+ newicon opt/Gitter/linux"${arch}"/logo.png gitter.png
+ newicon -s 256 opt/Gitter/linux"${arch}"/logo.png gitter.png
+ domenu opt/Gitter/linux"${arch}"/gitter.desktop
+
+ insinto /opt/gitter
+ doins -r opt/Gitter/linux"${arch}"/.
+ fperms -R +x /opt/gitter/lib/ /opt/gitter/swiftshader/ \
+ /opt/gitter/pnacl/pnacl_public_x86_64_{ld_nexe,pnacl_llc_nexe,pnacl_sz_nexe} \
+ /opt/gitter/{Gitter,chromedriver,crashpad_handler,minidump_stackwalk,nwjc,payload} \
+ /opt/gitter/nacl_{helper,helper_bootstrap,irt_x86_64.nexe}
+
+ dosym ../../opt/gitter/Gitter /usr/bin/gitter
+
+ pax-mark -m "${ED}"/opt/gitter/Gitter
+}
diff --git a/net-im/gitter-bin/gitter-bin-5.0.1.ebuild b/net-im/gitter-bin/gitter-bin-5.0.1.ebuild
new file mode 100644
index 000000000000..df5c40ef1ebb
--- /dev/null
+++ b/net-im/gitter-bin/gitter-bin-5.0.1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MULTILIB_COMPAT=( abi_x86_{32,64} )
+MY_PN="${PN/-bin/}"
+
+inherit desktop multilib-build pax-utils unpacker xdg
+
+QA_PREBUILT="opt/gitter/pnacl/pnacl_public_x86_64_pnacl_llc_nexe
+ opt/gitter/pnacl/pnacl_public_x86_64_ld_nexe
+ opt/gitter/pnacl/pnacl_public_x86_64_pnacl_sz_nexe
+ opt/gitter/payload
+ opt/gitter/swiftshader/libEGL.so
+ opt/gitter/swiftshader/libGLESv2.so
+ opt/gitter/chromedriver
+ opt/gitter/lib/libnw.so
+ opt/gitter/lib/libnode.so
+ opt/gitter/lib/libffmpeg.so
+ opt/gitter/nacl_helper
+ opt/gitter/nwjc
+ opt/gitter/nacl_irt_x86_64.nexe
+ opt/gitter/Gitter"
+QA_FLAGS_IGNORED="opt/gitter/minidump_stackwalk
+ opt/gitter/nacl_helper_bootstrap
+ opt/gitter/crashpad_handler
+ opt/gitter/lib/libEGL.so
+ opt/gitter/lib/libGLESv2.so"
+
+DESCRIPTION="Chat and network platform"
+HOMEPAGE="https://www.gitter.im"
+SRC_URI="
+ amd64? ( https://update.gitter.im/linux64/${MY_PN}_${PV}_amd64.deb )
+ x86? ( https://update.gitter.im/linux32/${MY_PN}_${PV}_i386.deb )"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE=""
+RESTRICT="bindist mirror"
+
+RDEPEND="app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
+ dev-libs/atk:0[${MULTILIB_USEDEP}]
+ dev-libs/expat:0[${MULTILIB_USEDEP}]
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ dev-libs/nspr:0[${MULTILIB_USEDEP}]
+ dev-libs/nss:0[${MULTILIB_USEDEP}]
+ media-libs/alsa-lib:0[${MULTILIB_USEDEP}]
+ net-print/cups:0[${MULTILIB_USEDEP}]
+ sys-apps/dbus:0[${MULTILIB_USEDEP}]
+ x11-libs/cairo:0[${MULTILIB_USEDEP}]
+ x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ x11-libs/libdrm:0[${MULTILIB_USEDEP}]
+ x11-libs/libX11:0[${MULTILIB_USEDEP}]
+ x11-libs/libxcb:0/1.12[${MULTILIB_USEDEP}]
+ x11-libs/libXcomposite:0[${MULTILIB_USEDEP}]
+ x11-libs/libXcursor:0[${MULTILIB_USEDEP}]
+ x11-libs/libXdamage:0[${MULTILIB_USEDEP}]
+ x11-libs/libXext:0[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes:0[${MULTILIB_USEDEP}]
+ x11-libs/libXi:0[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr:0[${MULTILIB_USEDEP}]
+ x11-libs/libXrender:0[${MULTILIB_USEDEP}]
+ x11-libs/libXScrnSaver:0[${MULTILIB_USEDEP}]
+ x11-libs/libXtst:0[${MULTILIB_USEDEP}]
+ x11-libs/pango:0[${MULTILIB_USEDEP}]"
+
+S="${WORKDIR}"
+
+src_prepare() {
+ default
+
+ local arch
+ arch="$(usex amd64 "64" "32")"
+
+ # Remove hardcoded paths
+ sed -i \
+ -e '/Exec/s/=.*/=gitter/' \
+ -e '/Icon/s/=.*/=gitter/' \
+ opt/Gitter/linux"${arch}"/gitter.desktop || die "sed failed"
+}
+
+src_install() {
+ local arch
+ arch="$(usex amd64 "64" "32")"
+
+ newicon opt/Gitter/linux"${arch}"/logo.png gitter.png
+ newicon -s 256 opt/Gitter/linux"${arch}"/logo.png gitter.png
+ domenu opt/Gitter/linux"${arch}"/gitter.desktop
+
+ insinto /opt/gitter
+ doins -r opt/Gitter/linux"${arch}"/.
+ fperms -R +x /opt/gitter/lib/ /opt/gitter/swiftshader/ \
+ /opt/gitter/pnacl/pnacl_public_x86_64_{ld_nexe,pnacl_llc_nexe,pnacl_sz_nexe} \
+ /opt/gitter/{Gitter,chromedriver,crashpad_handler,minidump_stackwalk,nwjc,payload} \
+ /opt/gitter/nacl_{helper,helper_bootstrap,irt_x86_64.nexe}
+
+ dosym ../../opt/gitter/Gitter /usr/bin/gitter
+
+ pax-mark -m "${ED}"/opt/gitter/Gitter
+}
diff --git a/net-im/gitter-bin/metadata.xml b/net-im/gitter-bin/metadata.xml
index 88b44ca0dc0c..6a40236a6aa9 100644
--- a/net-im/gitter-bin/metadata.xml
+++ b/net-im/gitter-bin/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>spiderx@spiderx.dp.ua</email>
<name>Vladimir Pavljuchenkov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
@@ -14,9 +14,6 @@
grow and connect communities through messaging, content
and discovery.
</longdescription>
- <use>
- <flag name="pax_kernel">Triggers a paxmarking of the binary</flag>
- </use>
<upstream>
<doc>https://gitter.zendesk.com/hc/en-us</doc>
</upstream>
diff --git a/net-im/jabber-base/jabber-base-0.01-r1.ebuild b/net-im/jabber-base/jabber-base-0.01-r1.ebuild
deleted file mode 100644
index ea75b4d57216..000000000000
--- a/net-im/jabber-base/jabber-base-0.01-r1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils user
-
-DESCRIPTION="Jabber servers and transports layout package"
-SRC_URI=""
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc sparc x86"
-IUSE=""
-
-DEPEND=""
-
-S="${WORKDIR}"
-
-#Info for people working in jabber related packages
-
-#/etc/jabber/ for configuration files
-#/var/run/jabber/ for the pid files
-#/var/spool/jabber/ for the flat files databases (actually there must be a ewarn
-#at end of ebuild telling user to creat /var/spool/jabber/JID, as some transports fail to start if
-#the directory is not there, even if they have permissions to creat it)
-#/var/log/jabber/ for the log files
-
-#for the python based transports with no install script:
-#they must inherit python and be installed in:
-#$(python_get_sitedir)/$package-name
-
-#the user should be the one created here username=group=jabber
-
-src_install() {
- keepdir /etc/jabber
- keepdir /var/run/jabber
- keepdir /var/spool/jabber
- keepdir /var/log/jabber
-}
-
-pkg_postinst() {
- # Users should not be created in src_install see bug #124680
- # Add our default jabber group and user
- enewgroup jabber
- enewuser jabber -1 -1 -1 jabber
- # We can't use fowners & fperms convenience wrappers as we are outside the sandbox
- chown jabber:jabber /etc/jabber /var/log/jabber /var/spool/jabber /var/run/jabber
- chmod 770 /etc/jabber /var/log/jabber /var/spool/jabber /var/run/jabber
-}
diff --git a/net-im/jabber-base/metadata.xml b/net-im/jabber-base/metadata.xml
deleted file mode 100644
index 1eebfe0ed7d2..000000000000
--- a/net-im/jabber-base/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>chainsaw@gentoo.org</email>
- </maintainer>
- <longdescription>
- Package that creats the users and directory's for jabber
- related packages. See ebuild for more info.
- </longdescription>
-</pkgmetadata>
diff --git a/net-im/kadu/Manifest b/net-im/kadu/Manifest
deleted file mode 100644
index 01f168c52132..000000000000
--- a/net-im/kadu/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST kadu-4.3.tar.bz2 8087786 BLAKE2B b63ce2beebb1fd1f64ae8e85430784c6c7d25a071e00342e33d97a2e49b25c02ab131fb30d591acc11a336427118d4dd23e03d89ad07ef066eca09d0463397db SHA512 fb3d16320894bbfbd50e695d61f305710e59bccce84319389a4047626e97da95ded0b35bc5f7e5d8c2ac96594693b14dd8dd8d46eb1863f89d3eec2e51c73cc9
diff --git a/net-im/kadu/files/kadu-4.3-do-not-force-ccache.patch b/net-im/kadu/files/kadu-4.3-do-not-force-ccache.patch
deleted file mode 100644
index 2511f3c42b99..000000000000
--- a/net-im/kadu/files/kadu-4.3-do-not-force-ccache.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -ruN kadu-4.3/CMakeLists.txt my/CMakeLists.txt
---- kadu-4.3/CMakeLists.txt 2017-01-24 22:36:21.000000000 +0100
-+++ my/CMakeLists.txt 2017-11-03 03:00:07.005162047 +0100
-@@ -75,13 +75,6 @@
- endif ()
- endif ()
-
--## CCache is cool stuff to improve compilation time
--find_program (CCACHE_FOUND ccache)
--if (CCACHE_FOUND)
-- set_property (GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
-- set_property (GLOBAL PROPERTY RULE_LAUNCH_LINK ccache)
--endif (CCACHE_FOUND)
--
- # Look above, DEBUG_ENABLED is always enabled in Debug configuration.
- # Enable it in all configurations when ENABLE_DEVELOPER_BUILD is on.
- if (ENABLE_DEVELOPER_BUILD)
diff --git a/net-im/kadu/files/kadu-4.3-find-x11-with-newer-cmake-modules.patch b/net-im/kadu/files/kadu-4.3-find-x11-with-newer-cmake-modules.patch
deleted file mode 100644
index ec44a0be7f55..000000000000
--- a/net-im/kadu/files/kadu-4.3-find-x11-with-newer-cmake-modules.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff -ruN kadu-4.3/kadu-core/CMakeLists.txt my/kadu-core/CMakeLists.txt
---- kadu-4.3/kadu-core/CMakeLists.txt 2017-01-24 22:36:21.000000000 +0100
-+++ my/kadu-core/CMakeLists.txt 2019-11-22 02:05:51.381540018 +0100
-@@ -111,7 +111,7 @@
- list (APPEND ADDITIONAL_LIBKADU_LIBRARIES ${LibArchive_LIBRARIES})
-
- if (UNIX AND NOT APPLE)
-- find_package (X11 REQUIRED COMPONENTS X11 Xutil Xfixes)
-+ find_package (X11 REQUIRED COMPONENTS Xutil Xfixes)
- if (X11_FOUND AND X11_Xutil_FOUND AND X11_Xfixes_FOUND)
- message (STATUS "Found required X11 libraries: ${X11_X11_LIB};${X11_Xfixes_LIB}")
- else ()
-diff -ruN kadu-4.3/plugins/idle/CMakeLists.txt my/plugins/idle/CMakeLists.txt
---- kadu-4.3/plugins/idle/CMakeLists.txt 2017-01-24 22:36:22.000000000 +0100
-+++ my/plugins/idle/CMakeLists.txt 2019-11-22 02:06:57.503381610 +0100
-@@ -15,7 +15,7 @@
- )
-
- if (UNIX AND NOT APPLE)
-- find_package (X11 REQUIRED COMPONENTS X11 Xutil Xscreensaver)
-+ find_package (X11 REQUIRED COMPONENTS Xutil Xscreensaver)
- if (X11_Xscreensaver_FOUND)
- message (STATUS "Found required X11 libraries: ${X11_X11_LIB};${X11_Xscreensaver_LIB}")
- else ()
-diff -ruN kadu-4.3/plugins/pcspeaker/CMakeLists.txt my/plugins/pcspeaker/CMakeLists.txt
---- kadu-4.3/plugins/pcspeaker/CMakeLists.txt 2017-01-24 22:36:22.000000000 +0100
-+++ my/plugins/pcspeaker/CMakeLists.txt 2019-11-22 02:07:45.315719788 +0100
-@@ -15,7 +15,7 @@
- set (LIBRARIES "")
-
- if (UNIX AND NOT APPLE)
-- find_package (X11 REQUIRED COMPONENTS X11)
-+ find_package (X11 REQUIRED)
- if (NOT X11_FOUND)
- message (SEND_ERROR "Could NOT find X11")
- endif ()
-diff -ruN kadu-4.3/plugins/screenshot/CMakeLists.txt my/plugins/screenshot/CMakeLists.txt
---- kadu-4.3/plugins/screenshot/CMakeLists.txt 2017-01-24 22:36:22.000000000 +0100
-+++ my/plugins/screenshot/CMakeLists.txt 2019-11-22 02:07:54.323972436 +0100
-@@ -30,7 +30,7 @@
-
- if (UNIX AND NOT APPLE)
- set (PLUGIN_ADDITIONAL_QT_MODULES X11Extras)
-- find_package (X11 REQUIRED COMPONENTS X11 Xext Xshape)
-+ find_package (X11 REQUIRED COMPONENTS Xext Xshape)
- if (X11_Xshape_FOUND)
- message (STATUS "Found required X11 libraries: ${X11_X11_LIB};${X11_Xext_LIB}")
- else ()
diff --git a/net-im/kadu/files/kadu-4.3-fix-plugins-rpath.patch b/net-im/kadu/files/kadu-4.3-fix-plugins-rpath.patch
deleted file mode 100644
index bb171af5f41b..000000000000
--- a/net-im/kadu/files/kadu-4.3-fix-plugins-rpath.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ruN kadu-4.3/cmake/KaduMacros.cmake my/cmake/KaduMacros.cmake
---- kadu-4.3/cmake/KaduMacros.cmake 2017-01-24 22:36:21.000000000 +0100
-+++ my/cmake/KaduMacros.cmake 2017-11-03 03:24:17.827054622 +0100
-@@ -221,7 +221,7 @@
-
- if (NOT WIN32)
- set_target_properties (${KADU_PLUGIN_NAME} PROPERTIES
-- INSTALL_RPATH "${KADU_INSTALL_LIB_DIR}/kadu"
-+ INSTALL_RPATH "${KADU_INSTALL_PREFIX}/${KADU_INSTALL_LIB_DIR}/kadu"
- BUILD_WITH_INSTALL_RPATH TRUE
- )
- endif ()
diff --git a/net-im/kadu/files/kadu-4.3-gcc7.patch b/net-im/kadu/files/kadu-4.3-gcc7.patch
deleted file mode 100644
index 097157f98c77..000000000000
--- a/net-im/kadu/files/kadu-4.3-gcc7.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/kadu-core/plugin/dependency-graph/plugin-dependency-graph-builder.h
-+++ b/kadu-core/plugin/dependency-graph/plugin-dependency-graph-builder.h
-@@ -20,6 +20,7 @@
- #pragma once
-
- #include <QtCore/QObject>
-+#include <functional>
- #include <map>
- #include <set>
-
diff --git a/net-im/kadu/kadu-4.3-r2.ebuild b/net-im/kadu/kadu-4.3-r2.ebuild
deleted file mode 100644
index 4b1cc6ce54b2..000000000000
--- a/net-im/kadu/kadu-4.3-r2.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit cmake-utils flag-o-matic gnome2-utils virtualx
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="An open source Gadu-Gadu and Jabber/XMPP protocol Instant Messenger client"
-HOMEPAGE="http://www.kadu.net"
-SRC_URI="http://download.kadu.im/stable/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-KEYWORDS="amd64 x86"
-SLOT="0"
-IUSE="+gadu mpd otr sdk speech spell xmpp"
-REQUIRED_USE="
- || (
- gadu
- xmpp
- )
-"
-COMMON_DEPEND="
- >=app-arch/libarchive-2.6[lzma]
- >=dev-libs/injeqt-1.1.0
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtdeclarative:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5
- dev-qt/qtscript:5
- dev-qt/qtsql:5
- dev-qt/qtsvg:5
- dev-qt/qttest:5
- dev-qt/qtwebkit:5
- dev-qt/qtwidgets:5
- dev-qt/qtx11extras:5
- dev-qt/qtxml:5
- dev-qt/qtxmlpatterns:5
- x11-libs/libX11
- x11-libs/libXfixes
- x11-libs/libXext
- x11-libs/libXScrnSaver
- gadu? ( >=net-libs/libgadu-1.12.2[threads] )
- mpd? ( media-libs/libmpdclient )
- otr? (
- >=dev-libs/libgcrypt-1.2.2:0
- >=net-libs/libotr-4.1.0
- )
- spell? ( app-text/enchant:0 )
- xmpp? (
- net-dns/libidn:*
- >=net-libs/qxmpp-0.9.3-r1
- sys-libs/zlib
- )
-"
-DEPEND="${COMMON_DEPEND}
- dev-qt/linguist-tools:5
- x11-base/xorg-proto
-"
-RDEPEND="${COMMON_DEPEND}
- speech? ( app-accessibility/powiedz )
-"
-
-PLUGINS='
-antistring
-auto_hide
-autoaway
-autoresponder
-autostatus
-cenzor
-chat_notify
-config_wizard
-docking
-docking_notify
-emoticons
-exec_notify
-ext_sound
-filedesc
-firewall
-freedesktop_notify
-hints
-history
-idle
-imagelink
-last_seen
-mediaplayer
-mprisplayer_mediaplayer
-pcspeaker
-screenshot
-simpleview
-single_window
-sms
-sound
-sql_history
-tabs
-word_fix
-'
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.3-do-not-force-ccache.patch"
- "${FILESDIR}/${PN}-4.3-fix-plugins-rpath.patch"
- "${FILESDIR}/${PN}-4.3-gcc7.patch"
- "${FILESDIR}/${PN}-4.3-find-x11-with-newer-cmake-modules.patch"
-)
-
-src_configure() {
- # Filter out dangerous flags
- filter-flags -fno-rtti
- strip-unsupported-flags
-
- # Ensure -DQT_NO_DEBUG is added
- append-cppflags -DQT_NO_DEBUG
-
- # Plugin selection
- use gadu && PLUGINS+=' gadu_protocol'
- use mpd && PLUGINS+=' mpd_mediaplayer'
- use otr && PLUGINS+=' encryption_otr'
- use speech && PLUGINS+=' speech'
- use spell && PLUGINS+=' spellchecker'
- use xmpp && PLUGINS+=' jabber_protocol'
-
- # Configure package
- local mycmakeargs=(
- -DCOMPILE_PLUGINS="${PLUGINS}"
- -DENABLE_TESTS=OFF
- -DNETWORK_IMPLEMENTATION="Qt"
- -DINSTALL_SDK=$(usex sdk)
- -DWITH_ENCHANT=$(usex spell)
- )
- unset PLUGINS
-
- cmake-utils_src_configure
-}
-
-src_test() {
- virtx cmake-utils_src_test
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
-}
diff --git a/net-im/kadu/metadata.xml b/net-im/kadu/metadata.xml
deleted file mode 100644
index 6bf7f3370862..000000000000
--- a/net-im/kadu/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>reavertm@gentoo.org</email>
- <name>Maciej Mrozowski</name>
- </maintainer>
- <use>
- <flag name="gadu">Enables Gadu communication protocol</flag>
- <flag name="mpd">Enables Music Player Daemon support</flag>
- <flag name="otr">Enable char encryption via OTR library</flag>
- <flag name="sdk">Install Kadu SDK (cmake module, API headers)</flag>
- <flag name="speech">Enables speech module</flag>
- </use>
-</pkgmetadata>
diff --git a/net-im/kouchat/Manifest b/net-im/kouchat/Manifest
deleted file mode 100644
index e5f84eef97c1..000000000000
--- a/net-im/kouchat/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST kouchat-1.1.0-buildfiles.tar.gz 2793 BLAKE2B 0b852a4cc65ef16993b01205f81cb2a3f7a4238425d62b499672529396cf6cc2506a50a9bbfc87c56fd4e6780064f6a8cb84920a00d2f0200520369bb02849d9 SHA512 daae5a4f3374ab588214321793725f4b9add063f4c7b98f64f6db0ab71cc2d07f2ae9f27fb0ed12c7704604fd97781b0cfa9bdb0a188782c4f5bd0172e167c89
-DIST kouchat-1.1.0-src.tar.gz 363491 BLAKE2B 3b4c72678a10892cd4b145c496b5d1042f8b6820806326f985f3313d5b764ee0beb85b0594cc532370f459ac630045a71f9a994d21dfe87c6ad744ecc163c0be SHA512 838d2afac858d698a543ad9ca6e249fa6439cd6f31bf67d20bc44961c9dcbed843fefb51430202666c74c02ec71b8bd30edbd5dcfe5a15d2c364426e99350c27
diff --git a/net-im/kouchat/kouchat-1.1.0.ebuild b/net-im/kouchat/kouchat-1.1.0.ebuild
deleted file mode 100644
index 3c7522dc9b9c..000000000000
--- a/net-im/kouchat/kouchat-1.1.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE=""
-
-inherit eutils java-pkg-2 java-ant-2
-
-DESCRIPTION="KouChat is a simple serverless chat client for local area networks"
-HOMEPAGE="https://kouchat.googlecode.com/"
-SRC_URI="https://kouchat.googlecode.com/files/${P}-src.tar.gz
- https://dev.gentoo.org/~serkan/distfiles/${P}-buildfiles.tar.gz"
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S=${WORKDIR}/${P}-src
-
-src_install() {
- java-pkg_newjar target/${P}.jar ${PN}.jar
- java-pkg_dolauncher ${PN} --main net.usikkert.kouchat.KouChat
- java-pkg_dolauncher ${PN}-console --main net.usikkert.kouchat.KouChat --pkg_args "--console"
- newicon kou_shortcut.png ${PN}.png
- make_desktop_entry ${PN} "KouChat"
-}
diff --git a/net-im/kouchat/metadata.xml b/net-im/kouchat/metadata.xml
deleted file mode 100644
index 62957fbb082d..000000000000
--- a/net-im/kouchat/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="google-code">kouchat</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/net-im/libcommuni/Manifest b/net-im/libcommuni/Manifest
index e249fb6d677d..815fc58bfd9e 100644
--- a/net-im/libcommuni/Manifest
+++ b/net-im/libcommuni/Manifest
@@ -1 +1 @@
-DIST libcommuni-3.5.0_p20190110.tar.gz 471278 BLAKE2B 2836a5ae01b08aac624c899a40712a9c452fc5b8f242906063936e48bd59306758cc70ea07beaf8488d228d6029c8128e343bbd59b1bfeff9bb2dccda0153b59 SHA512 9da065ef6b0589f7406d8c66b46f9f8d3d16325b59b7281153233b1a8d2bf98cdd35ee4e416237ac760dfc07531578aa7432226932976b9bbf36209bed5db72c
+DIST libcommuni-3.7.0.tar.gz 475364 BLAKE2B d5bc6deac50b403c7423ab3f9953f94fa3db522f67740a62095700f45c8ee9c35a84aba35f48ff3104a8ffdadaf904f96b625dd1882fa89f49e31731f97e96c0 SHA512 ed1182256899f6be4b492e20958de2edf557b744362701f031ede279c7464b031a57a50e3d7174ae61e313e43564dbf0b04eb382af6bcda71eb96d3405f168c1
diff --git a/net-im/libcommuni/libcommuni-3.5.0_p20190110-r1.ebuild b/net-im/libcommuni/libcommuni-3.7.0.ebuild
index 0e061171fd07..6c0ce18b28d0 100644
--- a/net-im/libcommuni/libcommuni-3.5.0_p20190110-r1.ebuild
+++ b/net-im/libcommuni/libcommuni-3.7.0.ebuild
@@ -1,15 +1,13 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-
-EGIT_COMMIT="88bb0fcdaab5bdd1176a3b6b485a6415a137ec27"
+EAPI=8
inherit qmake-utils
DESCRIPTION="A cross-platform IRC framework written with Qt"
HOMEPAGE="https://communi.github.io/"
-SRC_URI="https://github.com/communi/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/communi/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
@@ -33,16 +31,6 @@ DEPEND="
test? ( dev-qt/qttest:5 )
"
-S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
-
-src_prepare() {
- default
-
- # Currently the test tst_IrcLagTimer fails, so disabling
- # See: https://github.com/communi/libcommuni/issues/63
- sed -e '/irclagtimer/d' -i tests/auto/auto.pro || die
-}
-
src_configure() {
local myqmakeargs=( libcommuni.pro
# Disables compile run-time benchmarks, as they don't make any sense
@@ -54,8 +42,7 @@ src_configure() {
# Don't silence all compile messages
-config verbose
-config $(usex examples '' 'no_')examples
- -config $(usex qml '' 'no_')install_imports
- -config $(usex qml '' 'no_')install_qml
+ -config $(usex qml '' 'no_')qml
-config $(usex test '' 'no_')tests
-config $(usex uchardet 'no_' '')icu
-config $(usex uchardet '' 'no_')uchardet )
diff --git a/net-im/libcommuni/metadata.xml b/net-im/libcommuni/metadata.xml
index bc1ec760bfba..e5cca9123839 100644
--- a/net-im/libcommuni/metadata.xml
+++ b/net-im/libcommuni/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
@@ -14,4 +14,7 @@
<flag name="qml">Install optional qml files.</flag>
<flag name="uchardet">Use <pkg>app-i18n/uchardet</pkg>, which is upstreams default, instead of <pkg>dev-libs/icu</pkg>, which makes impossible to run tests.</flag>
</use>
+ <upstream>
+ <remote-id type="github">communi/libcommuni</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/librvp/librvp-0.9.7.ebuild b/net-im/librvp/librvp-0.9.7.ebuild
index 69563f1ad40e..c51d20139da9 100644
--- a/net-im/librvp/librvp-0.9.7.ebuild
+++ b/net-im/librvp/librvp-0.9.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -10,13 +10,20 @@ SRC_URI="https://www.waider.ie/hacks/workshop/c/rvp/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
-RDEPEND="net-im/pidgin[gtk]"
+RDEPEND="net-im/pidgin[gtk]
+ virtual/libcrypt:="
DEPEND="virtual/pkgconfig
${RDEPEND}"
src_configure() {
- econf --with-gaim-plugin-dir="${EPREFIX}"/usr/$(get_libdir)/pidgin \
- --with-gaim-data-dir="${EPREFIX}"/usr/share/pixmaps/pidgin
+ econf \
+ --with-gaim-plugin-dir="${EPREFIX}"/usr/$(get_libdir)/pidgin \
+ --with-gaim-data-dir="${EPREFIX}"/usr/share/pixmaps/pidgin \
+ --disable-static
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/net-im/librvp/metadata.xml b/net-im/librvp/metadata.xml
index df410a0e3a73..9513683eeb85 100644
--- a/net-im/librvp/metadata.xml
+++ b/net-im/librvp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
diff --git a/net-im/mattermost-desktop-bin/Manifest b/net-im/mattermost-desktop-bin/Manifest
index ad4413e17c1d..97a8bf7cf38e 100644
--- a/net-im/mattermost-desktop-bin/Manifest
+++ b/net-im/mattermost-desktop-bin/Manifest
@@ -1,3 +1,4 @@
-DIST mattermost-desktop-4.4.0-linux-ia32.tar.gz 95565337 BLAKE2B f81d381656d812274b1d54740d8bd1e1aacc47762c279a4edd1fb2ad9fdd595b2575a92825a37c1b12ab4a0a98423905ba605040cac8f7ababefe946a6bacd1e SHA512 412ebe5c110528372ad462d24c395125c46fe0930515a09ff705693cdd905a71037bd3672c2fe3ccc263addca4ecf497787f7dc70b45e782fbba1413a871eb7f
-DIST mattermost-desktop-4.4.0-linux-x64.tar.gz 94614879 BLAKE2B c83d449e45bfbde229316885210d6bd6eb5cfc6f6791c863fc02d4b1cb6ab9a89d5268e1fe4beb3273ee3b09a408fc5fa4c6949e05da8c19e7d92a13940be232 SHA512 eae1a08cf73199bab1d2b35d68134193211d71fae532486ff328534707c652e8a33cdfd984de79b663f4b40d1f29923c3a9afb8bf6be7bbe9fac3c381dc7f50e
-DIST mattermost-desktop-bin-4.4.0.tar.gz 1295527 BLAKE2B 89fd256e96c732e2e808ffef71e4d615e54d17af24c7392ddc699a18d9df1c5184d9d9263b01172a78b096e8941567abf6ca98789966407dfc2b360e41d1d50c SHA512 7f4d72fe1b90fe17796c1e9eb2c5ff9bf3d3c7ff855585f9f20c1997317eb805b917f3b2a58e6add67668e60a542cb5e3be6202a30af4ce495184335e2b94b3e
+DIST mattermost-desktop-5.7.0-linux-arm64.tar.gz 104464404 BLAKE2B 08caa572a986826f212dde6235c8ab36a31e559d14ca5a4e1a5e1e9024efc7f6a4126e56f96ad9f6dbc0fcc5798c466328791d9dccc6a5dcd83e0e0b80664930 SHA512 8e83d2105daa5a701b0f067203f7a0466a440962be2764f59ad7fa7ad892d6dcc07a1df8d5d924456b4038fae568a65efd52adc2c6f5c953f5ee7106468d526a
+DIST mattermost-desktop-5.7.0-linux-x64.tar.gz 104733209 BLAKE2B 3da6c25a3b197f60169b8178208e7dd2d14585c8d1e83247720f1cebd71e7f8a663df1ad479cca47931abcb016f3d576ece435ea6ab9a9ea3dbef9d653216d88 SHA512 e993f30d19adc5ee619f2708b0e7e91872b07ff8d4cba102097239e8928ea6464efd87d80a66d39219a79393719fe5db7d7b28df7fd9d53fae3a72e84ee7e718
+DIST mattermost-desktop-5.8.0-rc.2-linux-arm64.tar.gz 103062623 BLAKE2B 85d0013317486d60a3545feca4f27bce14140c8719262c3fd9f5e3ab10a6decc9d9e6421e037e5754b8407a0ef7a915c8269fde0578e5cb5a2870c903a577e2c SHA512 6afe06020720d25ed2052e87d18fdbd871bc80b1a4ac9a093ae65da56a65f7ba8eb1d7c89569ce65224a874b466c9c3ab04b03cabeb719be06f833f95006eb27
+DIST mattermost-desktop-5.8.0-rc.2-linux-x64.tar.gz 103008303 BLAKE2B 52312c9bb09f50668c4c23485a12a3e64aa0d40bb7ce0007af8c5d5ac15c7b1b9ce3dda39e3f4687a44e277ff5f1e0de83c92795ee266bfe665ae998667e1ba0 SHA512 d1d4b082da057f1bd20c917d624641804f5012149defb3fd000a7abaec037887ccc74eb4aa3a831f8ae369ac971750794b92d580b74a00b9bad64befe76c4154
diff --git a/net-im/mattermost-desktop-bin/mattermost-desktop-bin-4.4.0.ebuild b/net-im/mattermost-desktop-bin/mattermost-desktop-bin-4.4.0.ebuild
deleted file mode 100644
index 0f1c0d6f81df..000000000000
--- a/net-im/mattermost-desktop-bin/mattermost-desktop-bin-4.4.0.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN="${PN%-*}"
-
-inherit desktop eutils
-
-DESCRIPTION="Mattermost Desktop application"
-HOMEPAGE="https://about.mattermost.com/"
-
-SRC_URI="
- https://github.com/mattermost/desktop/archive/v${PV}.tar.gz -> ${P}.tar.gz
- amd64? ( https://releases.mattermost.com/desktop/${PV}/mattermost-desktop-${PV}-linux-x64.tar.gz )
- x86? ( https://releases.mattermost.com/desktop/${PV}/mattermost-desktop-${PV}-linux-ia32.tar.gz )
-"
-
-LICENSE="Apache-2.0 GPL-2+ LGPL-2.1+ MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- gnome-base/gconf:2
- dev-libs/atk:0
- dev-libs/expat:0
- dev-libs/glib:2
- dev-libs/nspr:0
- dev-libs/nss:0
- gnome-base/gconf:2
- media-libs/alsa-lib:0
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- net-print/cups:0
- sys-apps/dbus:0
- sys-devel/gcc
- sys-libs/glibc:2.2
- x11-libs/cairo:0
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:2
- x11-libs/libX11:0
- x11-libs/libxcb:0/1.12
- x11-libs/libXcomposite:0
- x11-libs/libXcursor:0
- x11-libs/libXdamage:0
- x11-libs/libXext:0
- x11-libs/libXfixes:0
- x11-libs/libXi:0
- x11-libs/libXrandr:0
- x11-libs/libXrender:0
- x11-libs/libXScrnSaver:0
- x11-libs/libXtst:0
- x11-libs/pango:0"
-
-QA_PREBUILT="
- opt/mattermost-desktop/mattermost-desktop
- opt/mattermost-desktop/libnode.so
- opt/mattermost-desktop/libffmpeg.so
-"
-
-DOCS=(
- NOTICE.txt
- LICENSES.chromium.html
- LICENSE.txt
- LICENSE.electron.txt
- README.md
-)
-
-src_unpack() {
- unpack ${A}
- use amd64 && mv "${WORKDIR}/mattermost-desktop-${PV}-linux-x64" "${S}"
- use x86 && mv "${WORKDIR}/mattermost-desktop-${PV}-linux-ia32" "${S}"
-}
-
-src_install() {
- insinto "/opt/${MY_PN}/locales"
- doins locales/*.pak
-
- insinto "/opt/${MY_PN}/resources"
- doins resources/*.asar
-
- insinto "/opt/${MY_PN}"
- doins *.pak *.bin *.dat
- exeinto "/opt/${MY_PN}"
- doexe *.so "${MY_PN}"
-
- dosym "../..//opt/${MY_PN}/${MY_PN}" "/usr/bin/${MY_PN}"
-
- newicon "${S}/icon.svg" "${MY_PN}.svg"
- make_desktop_entry "${MY_PN}" Mattermost "${MY_PN}"
-
- einstalldocs
-}
diff --git a/net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.7.0.ebuild b/net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.7.0.ebuild
new file mode 100644
index 000000000000..8db20297843a
--- /dev/null
+++ b/net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.7.0.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN%-*}"
+MY_PV="${PV/_rc/-rc.}"
+
+inherit desktop xdg
+
+DESCRIPTION="Mattermost Desktop application"
+HOMEPAGE="https://mattermost.com/"
+
+SRC_URI="
+ amd64? ( https://releases.mattermost.com/desktop/${MY_PV}/mattermost-desktop-${MY_PV}-linux-x64.tar.gz )
+ arm64? ( https://releases.mattermost.com/desktop/${MY_PV}/mattermost-desktop-${MY_PV}-linux-arm64.tar.gz )
+"
+S="${WORKDIR}"
+
+LICENSE="Apache-2.0 GPL-2+ LGPL-2.1+ MIT"
+SLOT="0"
+# Starting with 5.2.0 upstream dropped x86 for their binary release #879519
+if [[ ${PV} != *rc* ]]; then
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2[X]
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ dev-libs/wayland
+ media-libs/alsa-lib
+ media-libs/mesa
+ net-print/cups
+ sys-apps/dbus
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/pango
+"
+
+QA_PREBUILT="
+ opt/mattermost-desktop/mattermost-desktop
+ opt/mattermost-desktop/libnode.so
+ opt/mattermost-desktop/libffmpeg.so
+ opt/mattermost-desktop/libGLESv2.so
+ opt/mattermost-desktop/libEGL.so
+ opt/mattermost-desktop/libvk_swiftshader.so
+ opt/mattermost-desktop/libvulkan.so.1
+ opt/mattermost-desktop/resources/*
+"
+
+DOCS=(
+ NOTICE.txt
+)
+
+src_install() {
+ if use amd64; then
+ cd mattermost-desktop-${MY_PV}-linux-x64 || die
+ elif use arm64; then
+ cd mattermost-desktop-${MY_PV}-linux-arm64 || die
+ fi
+ newicon app_icon.png ${MY_PN}.png
+
+ insinto "/opt/${MY_PN}/locales"
+ doins locales/*.pak
+
+ insinto "/opt/${MY_PN}/resources"
+ doins -r resources/*.asar*
+
+ insinto "/opt/${MY_PN}"
+ doins *.pak *.bin *.dat
+ exeinto "/opt/${MY_PN}"
+ doexe *.so *.so.* "${MY_PN}"
+
+ dosym -r "/opt/${MY_PN}/${MY_PN}" "/usr/bin/${MY_PN}"
+
+ make_desktop_entry \
+ "${MY_PN} --enable-features=WaylandWindowDecorations --ozone-platform-hint=auto %U" \
+ Mattermost "${MY_PN}" "Network;InstantMessaging;" \
+ "MimeType=x-scheme-handler/mattermost;"
+
+ einstalldocs
+}
diff --git a/net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.8.0_rc2.ebuild b/net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.8.0_rc2.ebuild
new file mode 100644
index 000000000000..8db20297843a
--- /dev/null
+++ b/net-im/mattermost-desktop-bin/mattermost-desktop-bin-5.8.0_rc2.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN%-*}"
+MY_PV="${PV/_rc/-rc.}"
+
+inherit desktop xdg
+
+DESCRIPTION="Mattermost Desktop application"
+HOMEPAGE="https://mattermost.com/"
+
+SRC_URI="
+ amd64? ( https://releases.mattermost.com/desktop/${MY_PV}/mattermost-desktop-${MY_PV}-linux-x64.tar.gz )
+ arm64? ( https://releases.mattermost.com/desktop/${MY_PV}/mattermost-desktop-${MY_PV}-linux-arm64.tar.gz )
+"
+S="${WORKDIR}"
+
+LICENSE="Apache-2.0 GPL-2+ LGPL-2.1+ MIT"
+SLOT="0"
+# Starting with 5.2.0 upstream dropped x86 for their binary release #879519
+if [[ ${PV} != *rc* ]]; then
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2[X]
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ dev-libs/wayland
+ media-libs/alsa-lib
+ media-libs/mesa
+ net-print/cups
+ sys-apps/dbus
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/pango
+"
+
+QA_PREBUILT="
+ opt/mattermost-desktop/mattermost-desktop
+ opt/mattermost-desktop/libnode.so
+ opt/mattermost-desktop/libffmpeg.so
+ opt/mattermost-desktop/libGLESv2.so
+ opt/mattermost-desktop/libEGL.so
+ opt/mattermost-desktop/libvk_swiftshader.so
+ opt/mattermost-desktop/libvulkan.so.1
+ opt/mattermost-desktop/resources/*
+"
+
+DOCS=(
+ NOTICE.txt
+)
+
+src_install() {
+ if use amd64; then
+ cd mattermost-desktop-${MY_PV}-linux-x64 || die
+ elif use arm64; then
+ cd mattermost-desktop-${MY_PV}-linux-arm64 || die
+ fi
+ newicon app_icon.png ${MY_PN}.png
+
+ insinto "/opt/${MY_PN}/locales"
+ doins locales/*.pak
+
+ insinto "/opt/${MY_PN}/resources"
+ doins -r resources/*.asar*
+
+ insinto "/opt/${MY_PN}"
+ doins *.pak *.bin *.dat
+ exeinto "/opt/${MY_PN}"
+ doexe *.so *.so.* "${MY_PN}"
+
+ dosym -r "/opt/${MY_PN}/${MY_PN}" "/usr/bin/${MY_PN}"
+
+ make_desktop_entry \
+ "${MY_PN} --enable-features=WaylandWindowDecorations --ozone-platform-hint=auto %U" \
+ Mattermost "${MY_PN}" "Network;InstantMessaging;" \
+ "MimeType=x-scheme-handler/mattermost;"
+
+ einstalldocs
+}
diff --git a/net-im/mattermost-desktop-bin/metadata.xml b/net-im/mattermost-desktop-bin/metadata.xml
index f8151855e277..f9342913d57d 100644
--- a/net-im/mattermost-desktop-bin/metadata.xml
+++ b/net-im/mattermost-desktop-bin/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <name>Viorel Munteanu</name>
+ </maintainer>
<upstream>
<remote-id type="github">mattermost/desktop</remote-id>
</upstream>
diff --git a/net-im/mcabber/Manifest b/net-im/mcabber/Manifest
deleted file mode 100644
index ecb3948b0232..000000000000
--- a/net-im/mcabber/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST mcabber-1.1.0.tar.bz2 608975 BLAKE2B 856b1a4d7118337f40b11348274c79d125776d5dddcd50f87097e58240807a4ecafc4816c44d44a51bf9cbb920edb225b312c1d5d0d52be4be93810512ef2706 SHA512 d12546e9fe9da94b6107f4d38d4083bee74e2702f7f2225e26be291230c6fe1319f60a3204da669dc00b14d69822425bf8214ebb723c3c4a7a33b1247a03093f
-DIST mcabber-1.1.0_bug699972.patch 1385 BLAKE2B f63316f93347b24f27e5f9a5c26de6ae1af199819efbf390915b06ba70c86ec35759c4529c20e3a7c4d8c84081bca008e90ceba8401032ba884d269355940e22 SHA512 d29acca9e710011a8f30dca1c0e281976d409d4072823527078e5f54e98fea4b637c9e52c998bc26a7a4c445d08acd3eea3a244441dac479c398dac0e786535a
diff --git a/net-im/mcabber/files/README.gentoo b/net-im/mcabber/files/README.gentoo
deleted file mode 100644
index dc394e6e5a4a..000000000000
--- a/net-im/mcabber/files/README.gentoo
+++ /dev/null
@@ -1,17 +0,0 @@
-MCabber requires you to create a subdirectory .mcabber in your home
-directory and to place a configuration file there.
-An example mcabberrc was installed as part of the documentation.
-To create a new mcabberrc based on the example mcabberrc, execute the
-following commands:
-
- mkdir -p ~/.mcabber
- bzcat /usr/share/doc/mcabber*/mcabberrc.example.bz2 > ~/.mcabber/mcabberrc
-
-Then edit ~/.mcabber/mcabberrc with your favorite editor.
-
-See the CONFIGURATION FILE and FILES sections of the mcabber
-manual page (section 1) for more information.
-
-MCabber supports PGP encryption of messages. See README_PGP.txt for details.
-
-Check out /usr/share/mcabber/ for contributed themes and event scripts.
diff --git a/net-im/mcabber/mcabber-1.1.0-r1.ebuild b/net-im/mcabber/mcabber-1.1.0-r1.ebuild
deleted file mode 100644
index 304bdd5ce2c6..000000000000
--- a/net-im/mcabber/mcabber-1.1.0-r1.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic readme.gentoo-r1
-
-DESCRIPTION="A small Jabber console client with various features, like MUC, SSL, PGP"
-HOMEPAGE="http://mcabber.com/"
-
-if [[ "${PV}" == 9999 ]]; then
- inherit mercurial
- EHG_REPO_URI="https://bitbucket.org/McKael/mcabber"
- EHG_CHECKOUT_DIR="${WORKDIR}"
- EHG_BOOTSTRAP="autogen.sh"
- S="${WORKDIR}/${PN}"
-else
- SRC_URI="http://mcabber.com/files/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 ~arm ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-IUSE="aspell crypt idn otr spell ssl vim-syntax"
-
-LANGS="cs de fr it nl pl ru uk"
-# localized help versions are installed only, when L10N var is set
-for i in ${LANGS}; do
- IUSE="${IUSE} l10n_${i}"
-done;
-
-RDEPEND="crypt? ( >=app-crypt/gpgme-1.0.0 )
- otr? ( >=net-libs/libotr-3.1.0 )
- aspell? ( app-text/aspell )
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
- idn? ( net-dns/libidn:= )
- spell? ( app-text/enchant:0 )
- dev-libs/glib:2
- net-libs/libnsl:0=
- sys-libs/ncurses:0=
- >=net-libs/loudmouth-1.4.3-r1[ssl?]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-DOCS=( AUTHORS ChangeLog NEWS README TODO mcabberrc.example doc/README_PGP.txt )
-
-pkg_setup() {
- if use aspell && use spell; then
- ewarn "NOTE: You have both USE flags 'aspell' and 'spell' enabled, enchant (USE flag 'spell') will be preferred."
- fi
-}
-
-src_configure() {
- econf \
- --enable-modules \
- $(use_enable crypt gpgme) \
- $(use_enable otr) \
- $(use_enable aspell) \
- $(use_enable spell enchant) \
- $(use_with idn libidn)
-}
-
-src_install() {
- default
-
- # clean unneeded language documentation
- for i in ${LANGS}; do
- use l10n_${i} || rm -rf "${ED}"/usr/share/${PN}/help/${i}
- done
-
- # contrib themes
- insinto /usr/share/${PN}/themes
- doins "${S}"/contrib/themes/*
-
- # contrib generic scripts
- exeinto /usr/share/${PN}/scripts
- doexe "${S}"/contrib/*.{pl,py}
-
- # contrib event scripts
- exeinto /usr/share/${PN}/scripts/events
- doexe "${S}"/contrib/events/*
-
- if use vim-syntax; then
- cd contrib/vim/ || die
-
- insinto /usr/share/vim/vimfiles/syntax
- doins mcabber_log-syntax.vim
-
- insinto /usr/share/vim/vimfiles/ftdetect
- doins mcabber_log-ftdetect.vim
- fi
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/net-im/mcabber/mcabber-1.1.0-r2.ebuild b/net-im/mcabber/mcabber-1.1.0-r2.ebuild
deleted file mode 100644
index 4cc9ca700fbe..000000000000
--- a/net-im/mcabber/mcabber-1.1.0-r2.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit readme.gentoo-r1
-
-DESCRIPTION="A small Jabber console client with various features, like MUC, SSL, PGP"
-HOMEPAGE="http://mcabber.com/"
-
-if [[ "${PV}" == 9999 ]]; then
- inherit mercurial
- EHG_REPO_URI="https://bitbucket.org/McKael/mcabber"
- EHG_CHECKOUT_DIR="${WORKDIR}"
- EHG_BOOTSTRAP="autogen.sh"
- S="${WORKDIR}/${PN}"
-else
- SRC_URI="http://mcabber.com/files/${P}.tar.bz2"
- SRC_URI+=" https://dev.gentoo.org/~andrey_utkin/distfiles/${P}_bug699972.patch"
- KEYWORDS="~alpha amd64 ~arm ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-IUSE="aspell crypt idn otr spell ssl vim-syntax"
-
-LANGS="cs de fr it nl pl ru uk"
-# localized help versions are installed only, when L10N var is set
-for i in ${LANGS}; do
- IUSE="${IUSE} l10n_${i}"
-done;
-
-RDEPEND="crypt? ( >=app-crypt/gpgme-1.0.0 )
- otr? ( >=net-libs/libotr-3.1.0 )
- aspell? ( app-text/aspell )
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
- idn? ( net-dns/libidn:= )
- spell? ( app-text/enchant:0 )
- dev-libs/glib:2
- net-libs/libnsl:0=
- sys-libs/ncurses:0=
- >=net-libs/loudmouth-1.4.3-r1[ssl?]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-# only for patching 1.1.0 release, don't port to later ebuilds
-DEPEND+=" sys-devel/automake:1.14"
-
-DOCS=( AUTHORS ChangeLog NEWS README TODO mcabberrc.example doc/README_PGP.txt )
-
-PATCHES=(
- "${DISTDIR}/${P}_bug699972.patch"
-)
-
-pkg_setup() {
- if use aspell && use spell; then
- ewarn "NOTE: You have both USE flags 'aspell' and 'spell' enabled, enchant (USE flag 'spell') will be preferred."
- fi
-}
-
-src_configure() {
- econf \
- --enable-modules \
- $(use_enable crypt gpgme) \
- $(use_enable otr) \
- $(use_enable aspell) \
- $(use_enable spell enchant) \
- $(use_with idn libidn)
-}
-
-src_install() {
- default
-
- # clean unneeded language documentation
- for i in ${LANGS}; do
- use l10n_${i} || rm -rf "${ED}"/usr/share/${PN}/help/${i}
- done
-
- # contrib themes
- insinto /usr/share/${PN}/themes
- doins "${S}"/contrib/themes/*
-
- # contrib generic scripts
- exeinto /usr/share/${PN}/scripts
- doexe "${S}"/contrib/*.{pl,py}
-
- # contrib event scripts
- exeinto /usr/share/${PN}/scripts/events
- doexe "${S}"/contrib/events/*
-
- if use vim-syntax; then
- cd contrib/vim/ || die
-
- insinto /usr/share/vim/vimfiles/syntax
- doins mcabber_log-syntax.vim
-
- insinto /usr/share/vim/vimfiles/ftdetect
- doins mcabber_log-ftdetect.vim
- fi
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/net-im/mcabber/mcabber-9999.ebuild b/net-im/mcabber/mcabber-9999.ebuild
deleted file mode 100644
index 266ed8c59e89..000000000000
--- a/net-im/mcabber/mcabber-9999.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit readme.gentoo-r1
-
-DESCRIPTION="A small Jabber console client with various features, like MUC, SSL, PGP"
-HOMEPAGE="http://mcabber.com/"
-
-if [[ "${PV}" == 9999 ]]; then
- inherit mercurial
- EHG_REPO_URI="https://bitbucket.org/McKael/mcabber"
- EHG_CHECKOUT_DIR="${WORKDIR}"
- EHG_BOOTSTRAP="autogen.sh"
- S="${WORKDIR}/${PN}"
-else
- SRC_URI="http://mcabber.com/files/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-IUSE="aspell crypt idn otr spell ssl vim-syntax"
-
-LANGS="cs de fr it nl pl ru uk"
-# localized help versions are installed only, when L10N var is set
-for i in ${LANGS}; do
- IUSE="${IUSE} l10n_${i}"
-done;
-
-RDEPEND="crypt? ( >=app-crypt/gpgme-1.0.0 )
- otr? ( >=net-libs/libotr-3.1.0 )
- aspell? ( app-text/aspell )
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
- idn? ( net-dns/libidn:= )
- spell? ( app-text/enchant:0 )
- dev-libs/glib:2
- net-libs/libnsl:0=
- sys-libs/ncurses:0=
- >=net-libs/loudmouth-1.4.3-r1[ssl?]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-DOCS=( AUTHORS ChangeLog NEWS README TODO mcabberrc.example doc/README_PGP.txt )
-
-pkg_setup() {
- if use aspell && use spell; then
- ewarn "NOTE: You have both USE flags 'aspell' and 'spell' enabled, enchant (USE flag 'spell') will be preferred."
- fi
-}
-
-src_configure() {
- econf \
- --enable-modules \
- $(use_enable crypt gpgme) \
- $(use_enable otr) \
- $(use_enable aspell) \
- $(use_enable spell enchant) \
- $(use_with idn libidn)
-}
-
-src_install() {
- default
-
- # clean unneeded language documentation
- for i in ${LANGS}; do
- use l10n_${i} || rm -rf "${ED}"/usr/share/${PN}/help/${i}
- done
-
- # contrib themes
- insinto /usr/share/${PN}/themes
- doins "${S}"/contrib/themes/*
-
- # contrib generic scripts
- exeinto /usr/share/${PN}/scripts
- doexe "${S}"/contrib/*.{pl,py}
-
- # contrib event scripts
- exeinto /usr/share/${PN}/scripts/events
- doexe "${S}"/contrib/events/*
-
- if use vim-syntax; then
- cd contrib/vim/ || die
-
- insinto /usr/share/vim/vimfiles/syntax
- doins mcabber_log-syntax.vim
-
- insinto /usr/share/vim/vimfiles/ftdetect
- doins mcabber_log-ftdetect.vim
- fi
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/net-im/mcabber/metadata.xml b/net-im/mcabber/metadata.xml
deleted file mode 100644
index 30df6e581bc7..000000000000
--- a/net-im/mcabber/metadata.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>andrey_utkin@gentoo.org</email>
- <name>Andrey Utkin</name>
- </maintainer>
- <longdescription lang="en">
- MCabber is a small Jabber console client that features
- such as GPG encryption, SSL support, MUC (Multi-User Chat) support,
- history logging, commands completion, and external actions triggers.
- </longdescription>
- <use>
- <flag name="aspell">Adds support for app-text/aspell spell
- checker.</flag>
- <flag name="otr">Enable encrypted conversations using Off-The-Records
- messaging
- </flag>
- </use>
-</pkgmetadata>
-
diff --git a/net-im/metadata.xml b/net-im/metadata.xml
index ccdebcb75afb..55f0a269d69c 100644
--- a/net-im/metadata.xml
+++ b/net-im/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The net-im category contains instant messaging software.
@@ -32,4 +32,3 @@
Kategoria net-im zawiera komunikatory internetowe.
</longdescription>
</catmetadata>
-
diff --git a/net-im/minbif/Manifest b/net-im/minbif/Manifest
deleted file mode 100644
index f22b7b17b0b8..000000000000
--- a/net-im/minbif/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST minbif-1.0.5.tar.gz 176039 BLAKE2B 195af3dbb45f0c2b6499fd440c4ffc637d7e4e723879282a4914538d562c2833f30ae562098ebc5c47ac694b37f558984e599cb3701d6b1af6256db32ad91152 SHA512 e84c6f38ad35a660f9c319b702ae5743cece167c8e116976a9ca0caf527ad23ea17ea8f518f9bd76536e87283362d2087201a5307128740fc7f05dccabacfbcd
diff --git a/net-im/minbif/files/minbif-1.0.5-gcc47.patch b/net-im/minbif/files/minbif-1.0.5-gcc47.patch
deleted file mode 100644
index 8566406a318f..000000000000
--- a/net-im/minbif/files/minbif-1.0.5-gcc47.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-commit fe71fd989a4501c77314b2906756f4e9a328ff31
-Author: Romain Bignon <romain@symlink.me>
-Date: Tue May 8 16:46:35 2012 +0200
-
- fixes for gcc 4.7
-
---- a/src/im/account.cpp
-+++ b/src/im/account.cpp
-@@ -18,6 +18,7 @@
-
- #include <cassert>
- #include <cstring>
-+#include <unistd.h>
- #ifdef HAVE_IMLIB
- #include <Imlib2.h>
- #endif /* HAVE_IMLIB */
---- a/src/im/request.cpp
-+++ b/src/im/request.cpp
-@@ -18,6 +18,7 @@
-
- #include <errno.h>
- #include <string.h>
-+#include <unistd.h>
-
- #include "request.h"
- #include "buddy.h"
---- a/src/irc/dcc.cpp
-+++ b/src/irc/dcc.cpp
-@@ -23,6 +23,7 @@
- #include <string.h>
- #include <sys/types.h>
- #include <netinet/in.h>
-+#include <unistd.h>
-
- #include "dcc.h"
- #include "nick.h"
---- a/src/irc/irc.cpp
-+++ b/src/irc/irc.cpp
-@@ -246,7 +246,7 @@ Nick* IRC::getNick(string nickname, bool case_sensitive) const
- Buddy* IRC::getNick(const im::Buddy& buddy) const
- {
- map<string, Nick*>::const_iterator it;
-- Buddy* nb;
-+ Buddy* nb = NULL;
- for(it = users.begin();
- it != users.end() && (!(nb = dynamic_cast<Buddy*>(it->second)) || nb->getBuddy() != buddy);
- ++it)
-@@ -261,7 +261,7 @@ Buddy* IRC::getNick(const im::Buddy& buddy) const
- ConvNick* IRC::getNick(const im::Conversation& conv) const
- {
- map<string, Nick*>::const_iterator it;
-- ConvNick* n;
-+ ConvNick* n = NULL;
- for(it = users.begin();
- it != users.end() && (!(n = dynamic_cast<ConvNick*>(it->second)) || n->getConversation() != conv);
- ++it)
---- a/src/server_poll/inetd.cpp
-+++ b/src/server_poll/inetd.cpp
-@@ -18,6 +18,7 @@
-
- #include <cassert>
- #include <glib.h>
-+#include <unistd.h>
-
- #include "inetd.h"
- #include "irc/irc.h"
---- a/src/sockwrap/sockwrap.cpp
-+++ b/src/sockwrap/sockwrap.cpp
-@@ -22,6 +22,7 @@
- # include "sockwrap_tls.h"
- #endif
- #include "core/util.h"
-+#include <unistd.h>
-
- namespace sock
- {
diff --git a/net-im/minbif/files/minbif-1.0.5-glib-single-includes.patch b/net-im/minbif/files/minbif-1.0.5-glib-single-includes.patch
deleted file mode 100644
index 599355eb502c..000000000000
--- a/net-im/minbif/files/minbif-1.0.5-glib-single-includes.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: minbif-1.0.5/src/server_poll/daemon_fork.cpp
-===================================================================
---- minbif-1.0.5.orig/src/server_poll/daemon_fork.cpp
-+++ minbif-1.0.5/src/server_poll/daemon_fork.cpp
-@@ -20,7 +20,7 @@
- #include <cassert>
- #include <cstring>
- #include <cerrno>
--#include <glib/gmain.h>
-+#include <glib.h>
- #include <sys/socket.h>
- #include <sys/stat.h>
- #include <arpa/inet.h>
-Index: minbif-1.0.5/src/server_poll/inetd.cpp
-===================================================================
---- minbif-1.0.5.orig/src/server_poll/inetd.cpp
-+++ minbif-1.0.5/src/server_poll/inetd.cpp
-@@ -17,7 +17,7 @@
- */
-
- #include <cassert>
--#include <glib/gmain.h>
-+#include <glib.h>
-
- #include "inetd.h"
- #include "irc/irc.h"
diff --git a/net-im/minbif/files/minbif-1.0.5-rename-imlib-load-error.patch b/net-im/minbif/files/minbif-1.0.5-rename-imlib-load-error.patch
deleted file mode 100644
index e9fa875d247c..000000000000
--- a/net-im/minbif/files/minbif-1.0.5-rename-imlib-load-error.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/im/account.cpp b/src/im/account.cpp
-index f155334..f040fcd 100644
---- a/src/im/account.cpp
-+++ b/src/im/account.cpp
-@@ -272,7 +272,7 @@ void Account::setBuddyIcon(string filename)
- else
- {
- char** prpl_formats = g_strsplit(prplinfo->icon_spec.format,",",0);
-- ImlibLoadError err = IMLIB_LOAD_ERROR_UNKNOWN;
-+ Imlib_Load_Error err = IMLIB_LOAD_ERROR_UNKNOWN;
-
- close(temp_fd);
- /* Try to encode in a supported format. */
diff --git a/net-im/minbif/files/minbif.initd b/net-im/minbif/files/minbif.initd
deleted file mode 100644
index 06cac415f61d..000000000000
--- a/net-im/minbif/files/minbif.initd
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-MINBIF_EXEC="/usr/bin/minbif"
-
-depend() {
- need logger net
-}
-
-start() {
- ebegin "Starting minbif"
- start-stop-daemon --start --startas ${MINBIF_EXEC} \
- -c minbif:minbif --exec ${MINBIF_EXEC} -- \
- /etc/minbif/minbif.conf
- eend $?
-}
-
-stop() {
- ebegin "Stopping minbif"
- start-stop-daemon --stop --exec ${MINBIF_EXEC}
- eend $?
-}
diff --git a/net-im/minbif/metadata.xml b/net-im/minbif/metadata.xml
deleted file mode 100644
index 6f49eba8f496..000000000000
--- a/net-im/minbif/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/net-im/minbif/minbif-1.0.5-r2.ebuild b/net-im/minbif/minbif-1.0.5-r2.ebuild
deleted file mode 100644
index 1f05cc67faa1..000000000000
--- a/net-im/minbif/minbif-1.0.5-r2.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils user
-
-DESCRIPTION="IRC gateway to IM networks"
-HOMEPAGE="https://symlink.me/projects/minbif/wiki/"
-SRC_URI="https://symlink.me/attachments/download/148/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm x86"
-IUSE="gnutls +imlib +libcaca pam xinetd"
-REQUIRED_USE="
- libcaca? ( imlib )
-"
-
-DEPEND="
- >=net-im/pidgin-2.6
- gnutls? ( net-libs/gnutls )
- imlib? ( media-libs/imlib2 )
- libcaca? (
- media-libs/imlib2
- media-libs/libcaca
- )
- pam? ( sys-libs/pam )
-"
-RDEPEND="${DEPEND}
- virtual/logger
- xinetd? ( sys-apps/xinetd )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.5-glib-single-includes.patch"
- "${FILESDIR}/${PN}-1.0.5-gcc47.patch"
- "${FILESDIR}/${PN}-1.0.5-rename-imlib-load-error.patch"
-)
-
-pkg_setup() {
- enewgroup minbif
- enewuser minbif -1 -1 /var/lib/minbif minbif
-}
-
-src_prepare() {
- cmake-utils_src_prepare
-
- sed -i "s/-Werror//g" CMakeLists.txt || die "sed failed"
-
- sed -i "s#share/doc/minbif#share/doc/${P}#" \
- CMakeLists.txt || die "sed failed"
-
- if use xinetd; then
- sed -i "s/type\s=\s[0-9]/type = 0/" \
- minbif.conf || die "sed failed"
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCONF_PREFIX="${EPREFIX}"/etc/minbif
- -DENABLE_VIDEO=OFF
- -DENABLE_TLS=$(usex gnutls)
- -DENABLE_IMLIB=$(usex imlib)
- -DENABLE_CACA=$(usex libcaca)
- -DENABLE_PAM=$(usex pam)
- )
-
- cmake-utils_src_configure
-}
-
-src_install() {
- cmake-utils_src_install
- keepdir /var/lib/minbif
- fperms 700 /var/lib/minbif
- fowners minbif:minbif /var/lib/minbif
-
- doman man/minbif.8
-
- if use xinetd; then
- insinto /etc/xinetd.d
- newins doc/minbif.xinetd minbif
- fi
-
- newinitd "${FILESDIR}"/minbif.initd minbif
-
- dodir /usr/share/minbif
- insinto /usr/share/minbif
- doins -r scripts
-}
diff --git a/net-im/neochat/Manifest b/net-im/neochat/Manifest
new file mode 100644
index 000000000000..e398b36c9b25
--- /dev/null
+++ b/net-im/neochat/Manifest
@@ -0,0 +1,2 @@
+DIST neochat-23.08.5.tar.xz 795564 BLAKE2B 1f6dec3376f059e9d70e8be5461719bc74d631a0f98b4d417cd5b8709b4ed1ce9fc48e90a57c8f32889ad2fbf3089f80d9b29a7a73a1944fb54db81f837c4a67 SHA512 936e8112818bc925121d71fcc23d43bc448387af7c8c7857f2ce8b5d128f1acedc9c3c2b6d66e50fb317418cbd144c5262e2fb9e6d80364d48e08e42b27316bf
+DIST neochat-24.02.2.tar.xz 884660 BLAKE2B 38298089b6034f955e0285e13f652750e6593ab8201b8177a77e4fb524c188a1cd73f0254a548daadb564e7cbd42b097dbb26f6c7088971038f1dfcd83e458c7 SHA512 726ae34b6e714f34d4f88070ef3e173cfb2893530e65efdaf294b835ab9c1e1f8c600c6accf6124bd7f509079acacf2e9b36f3b43956ba37b531677f25a4f18c
diff --git a/net-im/neochat/metadata.xml b/net-im/neochat/metadata.xml
new file mode 100644
index 000000000000..d925f2439758
--- /dev/null
+++ b/net-im/neochat/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugs.kde.org/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/neochat/neochat-23.08.5.ebuild b/net-im/neochat/neochat-23.08.5.ebuild
new file mode 100644
index 000000000000..468a4b99124e
--- /dev/null
+++ b/net-im/neochat/neochat-23.08.5.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="optional"
+ECM_TEST="true"
+KFMIN=5.106.0
+QTMIN=5.15.9
+inherit ecm gear.kde.org
+
+DESCRIPTION="Client for Matrix, the decentralized communication protocol"
+HOMEPAGE="https://apps.kde.org/neochat/"
+
+LICENSE="GPL-3+ handbook? ( CC-BY-SA-4.0 )"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~ppc64 x86"
+
+DEPEND="
+ app-text/cmark:=
+ >=dev-libs/kirigami-addons-0.7.2:5
+ dev-libs/qcoro5
+ dev-libs/qtkeychain:=[qt5(+)]
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtmultimedia-${QTMIN}:5[gstreamer]
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtquickcontrols2-${QTMIN}:5
+ >=dev-qt/qtsvg-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kdbusaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kirigami-${KFMIN}:5
+ >=kde-frameworks/kitemmodels-${KFMIN}:5[qml]
+ >=kde-frameworks/knotifications-${KFMIN}:5[qml]
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:5
+ >=kde-frameworks/sonnet-${KFMIN}:5[qml]
+ media-libs/kquickimageeditor:5
+ >=net-libs/libquotient-0.8:=[qt5(+)]
+"
+RDEPEND="${DEPEND}
+ >=dev-qt/qtgraphicaleffects-${QTMIN}:5
+ >=dev-qt/qtlocation-${QTMIN}:5
+ >=dev-qt/qtmultimedia-${QTMIN}:5[qml]
+ >=dev-qt/qtpositioning-${QTMIN}:5[qml]
+ >=kde-frameworks/kquickcharts-${KFMIN}:5
+ >=kde-frameworks/purpose-${KFMIN}:5
+"
+BDEPEND="virtual/pkgconfig"
diff --git a/net-im/neochat/neochat-24.02.2.ebuild b/net-im/neochat/neochat-24.02.2.ebuild
new file mode 100644
index 000000000000..9e2ad8fc04a0
--- /dev/null
+++ b/net-im/neochat/neochat-24.02.2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="optional"
+ECM_TEST="true"
+KFMIN=6.0.0
+QTMIN=6.6.2
+inherit ecm gear.kde.org
+
+DESCRIPTION="Client for Matrix, the decentralized communication protocol"
+HOMEPAGE="https://apps.kde.org/neochat/"
+
+LICENSE="GPL-3+ handbook? ( CC-BY-SA-4.0 )"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# TODO: Wire up kunifiedpush once packaged? (1a3055df8673802076bc0c269ec24274abef375b)
+DEPEND="
+ app-text/cmark:=
+ dev-libs/kirigami-addons:6
+ >=dev-libs/icu-61.0:=
+ dev-libs/qcoro[network]
+ >=dev-libs/qtkeychain-0.14.1-r1:=[qt6]
+ >=dev-qt/qtbase-${QTMIN}:6[gui,network,widgets]
+ >=dev-qt/qtdeclarative-${QTMIN}:6
+ >=dev-qt/qtmultimedia-${QTMIN}:6
+ >=dev-qt/qtsvg-${QTMIN}:6
+ >=dev-qt/qtwebview-${QTMIN}:6
+ >=kde-frameworks/kcolorscheme-${KFMIN}:6
+ >=kde-frameworks/kconfig-${KFMIN}:6
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:6
+ >=kde-frameworks/kcoreaddons-${KFMIN}:6
+ >=kde-frameworks/kdbusaddons-${KFMIN}:6
+ >=kde-frameworks/ki18n-${KFMIN}:6
+ >=kde-frameworks/kio-${KFMIN}:6
+ >=kde-frameworks/kirigami-${KFMIN}:6
+ >=kde-frameworks/kitemmodels-${KFMIN}:6
+ >=kde-frameworks/knotifications-${KFMIN}:6
+ >=kde-frameworks/kwindowsystem-${KFMIN}:6
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:6
+ >=kde-frameworks/sonnet-${KFMIN}:6[qml]
+ media-libs/kquickimageeditor:6
+ >=net-libs/libquotient-0.8.1.2-r1:=[qt6]
+"
+RDEPEND="${DEPEND}
+ >=dev-qt/qt5compat-${QTMIN}:6[qml]
+ >=dev-qt/qtlocation-${QTMIN}:6
+ >=dev-qt/qtmultimedia-${QTMIN}:6[qml]
+ >=dev-qt/qtpositioning-${QTMIN}:6[qml]
+ >=kde-frameworks/kquickcharts-${KFMIN}:6
+ >=kde-frameworks/purpose-${KFMIN}:6
+ >=kde-frameworks/prison-${KFMIN}:6[qml]
+"
+BDEPEND="virtual/pkgconfig"
diff --git a/net-im/openmittsu/Manifest b/net-im/openmittsu/Manifest
index 9e73c252c1c0..f396862e2e46 100644
--- a/net-im/openmittsu/Manifest
+++ b/net-im/openmittsu/Manifest
@@ -1,2 +1 @@
-DIST openmittsu-0.9.13.46.tar.xz 2183136 BLAKE2B 3935a00fae8aa937fdc2f629a7dbf2a06cf518fb3758e7c1e191247004fa4077f60dbe2a0e3fba9750405ec069c33b6336cc26f990947ecbb1dabfe3b7b586f6 SHA512 bd58189e7c714f74ec6271a94251f4222dcd4fdb8015d6d01ef57e860804ebfa97aab632f3db94da386bb58bbb674bb4db6b659d2c9ccdeedf8ddd9b026a99c4
-DIST openmittsu-0.9.15.0.tar.xz 2302908 BLAKE2B 2800004968a1965d0c91197402618ae4ebaeb7a7d977e79654f296d7d2ca1466d26b86d99810e0502e9eced27e5a664dbb4b0113ec344367fb7b85557ebc0381 SHA512 9e00828053506cf233a4cede49c501da903cc36d49379b891e4186cf10cacfbd596b4d2b7ac551e2e6340a878bfa1155f8696e179ed9dd1c2ecbff61430ed7f9
+DIST openmittsu-0.10.0.0.tar.xz 2345724 BLAKE2B 407fe07147b17e6ac6ec2381e77256d09824fce87f1d9d141d2940e566191e911b05fb3d6701d342be9bb667551903f4f8913cbb25f504100e92ab4a38339555 SHA512 d4334c8516efcd63a3e9dfcf9f9655922aa14b2574f39269cf7019a8c951144569138c2a0a75abb16e2746a33002f0c07ef6c86dbdb5405e11c315ec630eb0d0
diff --git a/net-im/openmittsu/files/openmittsu-0.10.0.0-musl.patch b/net-im/openmittsu/files/openmittsu-0.10.0.0-musl.patch
new file mode 100644
index 000000000000..7935ff5530d4
--- /dev/null
+++ b/net-im/openmittsu/files/openmittsu-0.10.0.0-musl.patch
@@ -0,0 +1,25 @@
+Fix compilation with MUSL libc
+https://bugs.gentoo.org/907754
+
+Patch backported from spdlog repository:
+https://github.com/gabime/spdlog/commit/287a00d364990edbb621fe5e392aeb550135fb96
+
+commit 287a00d364990edbb621fe5e392aeb550135fb96
+Author: Khem Raj <raj.khem@gmail.com>
+Date: Tue Jan 3 09:54:50 2023 -0800
+
+ Do not use LFS64 functions on linux/musl (#2589)
+
+--- openmittsu-0.10.0.0/3rdparty/spdlog/include/spdlog/details/os-inl.h
++++ openmittsu-0.10.0.0/3rdparty/spdlog/include/spdlog/details/os-inl.h
+@@ -230,8 +230,8 @@
+ #else
+ int fd = ::fileno(f);
+ #endif
+-// 64 bits(but not in osx or cygwin, where fstat64 is deprecated)
+-#if (defined(__linux__) || defined(__sun) || defined(_AIX)) && (defined(__LP64__) || defined(_LP64))
++// 64 bits(but not in osx, linux/musl or cygwin, where fstat64 is deprecated)
++#if ((defined(__linux__) && defined(__GLIBC__)) || defined(__sun) || defined(_AIX)) && (defined(__LP64__) || defined(_LP64))
+ struct stat64 st;
+ if (::fstat64(fd, &st) == 0)
+ {
diff --git a/net-im/openmittsu/files/openmittsu-0.9.13.32-fix-tests.patch b/net-im/openmittsu/files/openmittsu-0.9.13.32-fix-tests.patch
deleted file mode 100644
index c89d24536ae9..000000000000
--- a/net-im/openmittsu/files/openmittsu-0.9.13.32-fix-tests.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- openmittsu-0.9.13.32-orig/CMakeLists.txt
-+++ openmittsu-0.9.13.32/CMakeLists.txt
-@@ -570,7 +570,7 @@
- target_link_libraries(openMittsu openMittsuCore Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network Qt5::Multimedia Qt5::MultimediaWidgets Qt5::Sql)
- target_link_libraries(openMittsuVersionInfo Qt5::Core)
- if (OPENMITTSU_ENABLE_TESTS)
-- target_link_libraries(openMittsuTests openMittsuCore Qt5::Core Qt5::Network Qt5::Multimedia Qt5::MultimediaWidgets Qt5::Sql gmock gtest)
-+ target_link_libraries(openMittsuTests openMittsuCore Qt5::Core Qt5::Network Qt5::Multimedia Qt5::MultimediaWidgets Qt5::Sql gmock gtest pthread)
- endif (OPENMITTSU_ENABLE_TESTS)
-
- # Link against libc++abi if requested.
diff --git a/net-im/openmittsu/metadata.xml b/net-im/openmittsu/metadata.xml
index c665e48637be..10e4ea021b98 100644
--- a/net-im/openmittsu/metadata.xml
+++ b/net-im/openmittsu/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ulm@gentoo.org</email>
diff --git a/net-im/openmittsu/openmittsu-0.9.15.0.ebuild b/net-im/openmittsu/openmittsu-0.10.0.0.ebuild
index 00915580a10f..dc31c3a2ca06 100644
--- a/net-im/openmittsu/openmittsu-0.9.15.0.ebuild
+++ b/net-im/openmittsu/openmittsu-0.10.0.0.ebuild
@@ -1,13 +1,14 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit cmake-utils desktop
+inherit cmake desktop
-DESCRIPTION="An open source chat client for Threema-style end-to-end encrypted chat networks"
+DESCRIPTION="Open source chat client for Threema-style end-to-end encrypted chat networks"
HOMEPAGE="https://www.openmittsu.de/"
-# git-archive-all.sh snapshot of https://github.com/blizzard4591/openMittsu.git
+# snapshot of https://github.com/blizzard4591/openMittsu.git
+# git-archive-all.sh --prefix ${P}/ -- - | xz > ${P}.tar.xz
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
LICENSE="GPL-2+ BitstreamVera OFL-1.1 Apache-2.0 CC0-1.0 MIT BSD"
@@ -17,7 +18,7 @@ IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="dev-db/qt5-sqlcipher
- >=dev-libs/libsodium-1.0.11:=
+ >=dev-libs/libsodium-1.0.18:=
>=dev-qt/qtcore-5.7.1:5=
>=dev-qt/qtgui-5.7.1:5=
>=dev-qt/qtmultimedia-5.7.1:5=[widgets]
@@ -28,9 +29,7 @@ RDEPEND="dev-db/qt5-sqlcipher
DEPEND="${RDEPEND}
test? ( >=dev-cpp/gtest-1.8.0 )"
-PATCHES=(
- "${FILESDIR}"/${PN}-0.9.13.32-fix-tests.patch
-)
+PATCHES=( "${FILESDIR}"/${P}-musl.patch )
DOCS=(
README.md
@@ -38,6 +37,8 @@ DOCS=(
Example-contacts-file.txt
)
+CMAKE_BUILD_TYPE="Gentoo"
+
src_configure() {
local mycmakeargs=(
# set version manually, since autodetection works only with git
@@ -45,7 +46,7 @@ src_configure() {
"-DOPENMITTSU_DISABLE_VERSION_UPDATE_CHECK=ON"
"-DOPENMITTSU_ENABLE_TESTS=$(usex test)"
)
- cmake-utils_src_configure
+ cmake_src_configure
}
src_test() {
@@ -55,7 +56,7 @@ src_test() {
src_install() {
local my_pn="openMittsu"
- cmake-utils_src_install
+ cmake_src_install
newicon resources/icon.png ${my_pn}.png
make_desktop_entry ${my_pn} ${my_pn} ${my_pn}
rm "${ED}"/usr/bin/${my_pn}VersionInfo || die
diff --git a/net-im/openmittsu/openmittsu-0.9.13.46.ebuild b/net-im/openmittsu/openmittsu-0.9.13.46.ebuild
deleted file mode 100644
index 3689bcc19f9e..000000000000
--- a/net-im/openmittsu/openmittsu-0.9.13.46.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake-utils desktop
-
-DESCRIPTION="An open source chat client for Threema-style end-to-end encrypted chat networks"
-HOMEPAGE="https://www.openmittsu.de/"
-# git-archive-all.sh snapshot of https://github.com/blizzard4591/openMittsu.git
-SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
-
-LICENSE="GPL-2+ BitstreamVera OFL-1.1 Apache-2.0 CC0-1.0 MIT BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-db/qt5-sqlcipher
- >=dev-libs/libsodium-1.0.11:=
- >=dev-qt/qtcore-5.7.1:5=
- >=dev-qt/qtgui-5.7.1:5=
- >=dev-qt/qtmultimedia-5.7.1:5=[widgets]
- >=dev-qt/qtnetwork-5.7.1:5=[ssl]
- >=dev-qt/qtsql-5.7.1:5=[sqlite]
- >=dev-qt/qtwidgets-5.7.1:5=
- >=media-gfx/qrencode-3.4.4-r1:="
-DEPEND="${RDEPEND}
- test? ( >=dev-cpp/gtest-1.8.0 )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.9.13.32-fix-tests.patch
-)
-
-DOCS=(
- README.md
- Example-client-configuration-file.ini
- Example-contacts-file.txt
-)
-
-src_configure() {
- local mycmakeargs=(
- # set version manually, since autodetection works only with git
- "-DOPENMITTSU_CUSTOM_VERSION_STRING=${PV%.*}-${PV##*.}-00000000"
- "-DOPENMITTSU_DISABLE_VERSION_UPDATE_CHECK=ON"
- "-DOPENMITTSU_ENABLE_TESTS=$(usex test)"
- )
- cmake-utils_src_configure
-}
-
-src_test() {
- cd "${BUILD_DIR}" || die
- ./openMittsuTests || die
-}
-
-src_install() {
- local my_pn="openMittsu"
- cmake-utils_src_install
- newicon resources/icon.png ${my_pn}.png
- make_desktop_entry ${my_pn} ${my_pn} ${my_pn}
- rm "${ED}"/usr/bin/${my_pn}VersionInfo || die
- rm -f "${ED}"/usr/bin/${my_pn}Tests || die
-}
diff --git a/net-im/pidgin/Manifest b/net-im/pidgin/Manifest
index 1793616a9acd..e56f63e61b80 100644
--- a/net-im/pidgin/Manifest
+++ b/net-im/pidgin/Manifest
@@ -1,3 +1,3 @@
-DIST pidgin-2.10.9-irc_join_sleep.patch 534 BLAKE2B 0215cebb93993e19e700e4d4974351ab5e9a00ea094775076d8f439569b34c0ec2faaed360965867df58bc42677516983ce11a2601dd322c1bdf2f288253a5b8 SHA512 8de0d6f05e48cd5a3e894576e06c7fb82e4bfc778cce8bb179fa22e2a05f5c2390a0e4c5b626ee4b910a18eab170d8f4be200f435ce408a86575af99e51e3bdf
-DIST pidgin-2.13.0.tar.bz2 8994457 BLAKE2B 32be31509a90b924fba4a4dbaba304580d88dfc6d3bbe0c88ef12eef381f70e031af1a55ada2abfb6968a9967a9fdadfa69973482b80dea7bb554a983a96fa12 SHA512 68b3d1eefee111544c7eb347386d0aea4f47c3e320d5963a4e0d833ed6af7b1be243a7bcd6a38c9234b58601d10a9aebf8541f1d97decfeca754fa78dc693047
-DIST pidgin-eds-3.6.patch.bz2 2352 BLAKE2B 1d69dc55f43b9efe5d5278a017642702d67a297fe2587467ec0fdca7f9888e26640efe9ac2a18f77ae9c523bf125a2cec6d0bf621f0b2b16f55d30df1bf470df SHA512 a0195679ab55ed9c7ea18ace6dbf0fc994698f1f4eea9d8335dfdcdcd6a68975c0191bd22f150bf5a9a0a691ce7e9e73d79598e1e8be541efa1d9824a633d877
+DIST pidgin-2.14.10.tar.bz2 8229328 BLAKE2B 9f004abda0f00b315e763e8b17e4e938b44b8a971d5411d775b9428363ab2ae071462d6d16654fcc09270123c434ef2d1f639d7f6d85c08a83b05c0ba4342c21 SHA512 53241e9f62170fe7a8ea27ac03176d442f8aad4ed16da0033164b0949b00c3d476539b182e761950e7d6c385f22a891524c5f40a9cf8fe543b3003c37693314d
+DIST pidgin-2.14.12.tar.bz2 8226145 BLAKE2B 0f0bec301c196fb722b88998a2a420af4084aedb7563215bb44c2c74a670a20db030ac207f226cef7989477dba04a9655c71269564ccc3680b42946ee84fdb16 SHA512 ce016ab4c48448653ae22eead1ddc16f1d10f446c601f8abd2c85b4ea83a4e80092e1ce8182834d998b6587f42a92a9a91105b4db976e170ec7043bb6af3c54c
+DIST pidgin-2.14.13.tar.bz2 8230755 BLAKE2B 38dc8bbd8966b0fce9bdcc043077628df172568490c390e1b6730a326398557b0df2f6289c8fbcb55bee0dd73fad6efc4ca0341c0d172326ba69a6cc5afbd35c SHA512 8bce143079c9421370ec4762d6fdb9b4cacf41c754eecf55c678943b834b709af9c1969070f30361341c0f51576cad4dfcaff89935c2160446be46deb8d2d3ef
diff --git a/net-im/pidgin/files/pidgin-2.10.0-gold.patch b/net-im/pidgin/files/pidgin-2.10.0-gold.patch
deleted file mode 100644
index 819bfdc5c6bf..000000000000
--- a/net-im/pidgin/files/pidgin-2.10.0-gold.patch
+++ /dev/null
@@ -1,30 +0,0 @@
- pidgin/Makefile.am | 2 +-
- pidgin/Makefile.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/pidgin/Makefile.am b/pidgin/Makefile.am
-index b6a5bd4..96d207d 100644
---- a/pidgin/Makefile.am
-+++ b/pidgin/Makefile.am
-@@ -158,7 +158,7 @@ pidgin_LDADD = \
- $(GTKSPELL_LIBS) \
- $(LIBXML_LIBS) \
- $(GTK_LIBS) \
-- $(top_builddir)/libpurple/libpurple.la
-+ $(top_builddir)/libpurple/libpurple.la -lm
-
- if USE_INTERNAL_LIBGADU
- INTGG_CFLAGS = -DUSE_INTERNAL_LIBGADU
-diff --git a/pidgin/Makefile.in b/pidgin/Makefile.in
-index 615c196..0293e5c 100644
---- a/pidgin/Makefile.in
-+++ b/pidgin/Makefile.in
-@@ -607,7 +607,7 @@ EXTRA_DIST = \
- @ENABLE_GTK_TRUE@ $(GTKSPELL_LIBS) \
- @ENABLE_GTK_TRUE@ $(LIBXML_LIBS) \
- @ENABLE_GTK_TRUE@ $(GTK_LIBS) \
--@ENABLE_GTK_TRUE@ $(top_builddir)/libpurple/libpurple.la
-+@ENABLE_GTK_TRUE@ $(top_builddir)/libpurple/libpurple.la -lm
-
- @ENABLE_GTK_TRUE@@USE_INTERNAL_LIBGADU_TRUE@INTGG_CFLAGS = -DUSE_INTERNAL_LIBGADU
- @ENABLE_GTK_TRUE@AM_CPPFLAGS = \
diff --git a/net-im/pidgin/files/pidgin-2.10.10-eds-3.6-configure.ac.patch b/net-im/pidgin/files/pidgin-2.10.10-eds-3.6-configure.ac.patch
deleted file mode 100644
index 555ef8c1ab16..000000000000
--- a/net-im/pidgin/files/pidgin-2.10.10-eds-3.6-configure.ac.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -urN pidgin-2.10.10.orig/configure.ac pidgin-2.10.10/configure.ac
---- pidgin-2.10.10.orig/configure.ac 2014-10-17 04:19:33.000000000 +0400
-+++ pidgin-2.10.10/configure.ac 2014-10-28 15:56:27.853702740 +0300
-@@ -569,18 +569,10 @@
- dnl # Check for stuff needed by the Evolution integration plugin.
- dnl #######################################################################
- if test "x$enable_gevolution" = "xyes"; then
-- evo_deps="libebook-1.2 libedata-book-1.2 evolution-data-server-1.2 < 3.6"
-+ evo_deps="libebook-1.2 libedata-book-1.2 evolution-data-server-1.2 >= 3.6"
- PKG_CHECK_MODULES(EVOLUTION_ADDRESSBOOK, $evo_deps, , [
- enable_gevolution="no"
- ])
-- if test "x$enable_gevolution" = "xno"; then
-- evo_deps="libebook-1.0 libedata-book-1.0"
-- PKG_CHECK_MODULES(EVOLUTION_ADDRESSBOOK, $evo_deps, [
-- enable_gevolution="yes"
-- ], [
-- enable_gevolution="no"
-- ])
-- fi
- if test "x$enable_gevolution" = "xyes"; then
- AC_DEFINE(HAVE_EVOLUTION_ADDRESSBOOK, 1, [Define if we're using evolution addressbook.])
- AC_SUBST(EVOLUTION_ADDRESSBOOK_CFLAGS)
diff --git a/net-im/pidgin/files/pidgin-2.10.11-tinfo.patch b/net-im/pidgin/files/pidgin-2.10.11-tinfo.patch
deleted file mode 100644
index 370ac62a6e23..000000000000
--- a/net-im/pidgin/files/pidgin-2.10.11-tinfo.patch
+++ /dev/null
@@ -1,24 +0,0 @@
- configure.ac | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index 51471b1..81c57ff 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -635,6 +635,8 @@ AC_ARG_WITH(ncurses-headers, [AC_HELP_STRING([--with-ncurses-headers=DIR],
- [compile finch against the ncurses includes in DIR])],
- [ac_ncurses_includes="$withval"], [ac_ncurses_includes=""])
- if test "x$enable_consoleui" = "xyes"; then
-+ PKG_CHECK_MODULES([GNT], [ncursesw panelw], [], [
-+ PKG_CHECK_MODULES([GNT], [ncurses panel], [], [
- AC_CHECK_LIB(ncursesw, initscr, [GNT_LIBS="-lncursesw"], [enable_consoleui=no])
- AC_CHECK_LIB(panelw, update_panels, [GNT_LIBS="$GNT_LIBS -lpanelw"],
- [enable_consoleui=no], [$GNT_LIBS])
-@@ -699,6 +701,7 @@ if test "x$enable_consoleui" = "xyes"; then
- fi
- fi
- fi
-+ ])])
- fi
-
- if test "x$force_finch" = "xyes" -a "x$enable_consoleui" != "xyes"; then
diff --git a/net-im/pidgin/files/pidgin-2.10.9-fix-gtkmedia.patch b/net-im/pidgin/files/pidgin-2.10.9-fix-gtkmedia.patch
deleted file mode 100644
index 4cec32663808..000000000000
--- a/net-im/pidgin/files/pidgin-2.10.9-fix-gtkmedia.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/pidgin/Makefile.am 2014-02-02 22:29:20.000000000 +0100
-+++ b/pidgin/Makefile.am 2014-02-14 19:35:24.347547795 +0100
-@@ -154,6 +154,7 @@
- $(GSTREAMER_LIBS) \
- $(XSS_LIBS) \
- $(SM_LIBS) \
-+ $(X11_LIBS) \
- $(INTLLIBS) \
- $(GTKSPELL_LIBS) \
- $(LIBXML_LIBS) \
diff --git a/net-im/pidgin/files/pidgin-2.10.9-irc_join_sleep.patch b/net-im/pidgin/files/pidgin-2.10.9-irc_join_sleep.patch
new file mode 100644
index 000000000000..860a43a9551a
--- /dev/null
+++ b/net-im/pidgin/files/pidgin-2.10.9-irc_join_sleep.patch
@@ -0,0 +1,11 @@
+diff -ur ./pidgin-2.10.9.orig/libpurple/protocols/irc/irc.c pidgin-2.10.9/libpurple/protocols/irc/irc.c
+--- ./pidgin-2.10.9.orig/libpurple/protocols/irc/irc.c 2014-02-02 15:29:18.000000000 -0600
++++ pidgin-2.10.9/libpurple/protocols/irc/irc.c 2014-09-02 10:30:24.830599697 -0500
+@@ -742,6 +742,7 @@
+ struct irc_conn *irc = gc->proto_data;
+ const char *args[2];
+
++ g_usleep(500000);
+ args[0] = g_hash_table_lookup(data, "channel");
+ args[1] = g_hash_table_lookup(data, "password");
+ irc_cmd_join(irc, "join", NULL, args);
diff --git a/net-im/pidgin/files/pidgin-2.13.0-disable-one-jid-test.patch b/net-im/pidgin/files/pidgin-2.13.0-disable-one-jid-test.patch
deleted file mode 100644
index cf3a6de7bfb2..000000000000
--- a/net-im/pidgin/files/pidgin-2.13.0-disable-one-jid-test.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-https://bugs.gentoo.org/593338
-
-Workaround one failing test. test fails on all platforms.
-Needs to be fixed upstream.
-
---- a/libpurple/tests/test_jabber_jutil.c
-+++ b/libpurple/tests/test_jabber_jutil.c
-@@ -144,7 +144,16 @@ START_TEST(test_jabber_id_new)
- * string MUST NOT contain any LCat character."
- * The character is U+066D (ARABIC FIVE POINTED STAR).
- */
-+#if 0
-+ /*
-+ Fails in gentoo: https://bugs.gentoo.org/593338
-+
-+ 98%: Checks: 87, Failures: 1, Errors: 0
-+ test_jabber_jutil.c:147:F:JID validate:test_jabber_id_new:0: JID 'foo@example.com/Ù­simplexeÙ­' is invalid but jabber_id_new() allowed it
-+ FAIL check_libpurple (exit status: 1)
-+ */
- assert_invalid_jid("foo@example.com/Ù­simplexeÙ­");
-+#endif
-
- /* Ensure that jabber_id_new is properly lowercasing node and domains */
- assert_jid_parts("paul", "darkrain42.org", "PaUL@darkrain42.org");
diff --git a/net-im/pidgin/files/pidgin-2.13.0-fix-build-against-nm-1.0.patch b/net-im/pidgin/files/pidgin-2.13.0-fix-build-against-nm-1.0.patch
deleted file mode 100644
index d9d27930439c..000000000000
--- a/net-im/pidgin/files/pidgin-2.13.0-fix-build-against-nm-1.0.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-https://src.fedoraproject.org/rpms/pidgin/raw/master/f/pidgin-2.13.0-fix-build-against-nm-1.0.patch
-
-diff --git a/configure.ac b/configure.ac
-index 04836fa..0a2d451 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1423,18 +1423,24 @@ fi
- dnl Check for NetworkManager.h; if we don't have it, oh well
- if test "x$enable_dbus" = "xyes" ; then
- if test "x$enable_nm" = "xyes" ; then
-- PKG_CHECK_MODULES(NETWORKMANAGER, [NetworkManager >= 0.5.0], [
-+ PKG_CHECK_MODULES(NETWORKMANAGER, [libnm], [
- AC_SUBST(NETWORKMANAGER_CFLAGS)
- AC_SUBST(NETWORKMANAGER_LIBS)
- AC_DEFINE(HAVE_NETWORKMANAGER, 1, [Define if we have NetworkManager.])
- ], [
-- enable_nm=no
-- if test "x$force_deps" = "xyes" ; then
-- AC_MSG_ERROR([
-+ PKG_CHECK_MODULES(NETWORKMANAGER, [NetworkManager >= 0.5.0], [
-+ AC_SUBST(NETWORKMANAGER_CFLAGS)
-+ AC_SUBST(NETWORKMANAGER_LIBS)
-+ AC_DEFINE(HAVE_NETWORKMANAGER, 1, [Define if we have NetworkManager.])
-+ ], [
-+ enable_nm=no
-+ if test "x$force_deps" = "xyes" ; then
-+ AC_MSG_ERROR([
- NetworkManager development headers not found.
- Use --disable-nm if you do not need NetworkManager support.
- ])
-- fi])
-+ fi])
-+ ])
- fi
- else
- enable_nm=no
-diff --git a/libpurple/network.c b/libpurple/network.c
-index c43e3c7..b17e439 100644
---- a/libpurple/network.c
-+++ b/libpurple/network.c
-@@ -939,8 +939,13 @@ nm_update_state(NMState state)
- #if NM_CHECK_VERSION(0,8,992)
- case NM_STATE_DISCONNECTING:
- #endif
-+#if NM_CHECK_VERSION(1,0,0)
-+ if (prev != NM_STATE_CONNECTED_GLOBAL && prev != NM_STATE_UNKNOWN)
-+ break;
-+#else
- if (prev != NM_STATE_CONNECTED && prev != NM_STATE_UNKNOWN)
- break;
-+#endif
- if (ui_ops != NULL && ui_ops->network_disconnected != NULL)
- ui_ops->network_disconnected();
- break;
diff --git a/net-im/pidgin/files/pidgin-2.13.0-gnutls_sni_support.patch b/net-im/pidgin/files/pidgin-2.13.0-gnutls_sni_support.patch
deleted file mode 100644
index df6b8e5cd030..000000000000
--- a/net-im/pidgin/files/pidgin-2.13.0-gnutls_sni_support.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-# HG changeset patch
-# User Mihai Moldovan <ionic@ionic.de>
-# Date 1576498301 -3600
-# Branch release-2.x.y
-# Node ID 6dba8046e1b120c506e1d911c6aa8757d7774c57
-# Parent 7a975763d3b64bdd8dd5371d711a4add647ed726
-Implement SNI support for the gnutls SSL plugin.
-
-Note that gnutls is picky in regard to what it accepts as the server name - it
-MUST be a domain name. IP addresses are not supported according to the
-documentation.
-
-Hence, filter out IP addresses and hope that whatever is not recognized as
-such an address is actually a domain name. This will probably fail for more
-exotic addresses (especially in IPv6 realm), but wiring up a full-blown parser
-is too much effort and SSL plugins are not part of purple-3 anyway.
-
-Fixes #17300
-
-diff --git a/libpurple/plugins/ssl/ssl-gnutls.c b/libpurple/plugins/ssl/ssl-gnutls.c
---- a/libpurple/plugins/ssl/ssl-gnutls.c
-+++ b/libpurple/plugins/ssl/ssl-gnutls.c
-@@ -403,6 +403,10 @@
-
- gnutls_transport_set_ptr(gnutls_data->session, GINT_TO_POINTER(gsc->fd));
-
-+ /* SNI support. */
-+ if (gsc->host && !g_hostname_is_ip_address(gsc->host))
-+ gnutls_server_name_set(gnutls_data->session, GNUTLS_NAME_DNS, gsc->host, strlen(gsc->host));
-+
- gnutls_data->handshake_handler = purple_input_add(gsc->fd,
- PURPLE_INPUT_READ, ssl_gnutls_handshake_cb, gsc);
-
diff --git a/net-im/pidgin/files/pidgin-2.13.0-metainfo.patch b/net-im/pidgin/files/pidgin-2.13.0-metainfo.patch
deleted file mode 100644
index 34d1dc160445..000000000000
--- a/net-im/pidgin/files/pidgin-2.13.0-metainfo.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- pidgin-2.13.0/pidgin/Makefile.am
-+++ pidgin-2.13.0/pidgin/Makefile.am
-@@ -191,7 +191,7 @@
- apps_DATA = $(apps_in_files:.desktop.in=.desktop)
- @INTLTOOL_DESKTOP_RULE@
-
--appdatadir = $(datarootdir)/appdata
-+appdatadir = $(datarootdir)/metainfo
- appdata_DATA = $(appdata_in_files:.xml.in=.xml)
- appdata_in_files = data/pidgin.appdata.xml.in
-
diff --git a/net-im/pidgin/files/pidgin-2.13.0-python3_support.patch b/net-im/pidgin/files/pidgin-2.13.0-python3_support.patch
deleted file mode 100644
index 19ece4a9a223..000000000000
--- a/net-im/pidgin/files/pidgin-2.13.0-python3_support.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-# HG changeset patch
-# User John Bailey <rekkanoryo@rekkanoryo.org>
-# Date 1527918187 14400
-# Sat Jun 02 01:43:07 2018 -0400
-# Branch upstream-fedora-patches
-# Node ID ab3a54cf9afbd2a1cb6736c7ee424d8fc82e7b14
-# Parent de18cefddad5ffe593a192f3a20f6f91165ab516
-Modified Jan Synacek's purple-remote python3 compatibility patch to make it
-compatible with both python2 and python3.
-
-diff --git a/COPYRIGHT b/COPYRIGHT
---- a/COPYRIGHT
-+++ b/COPYRIGHT
-@@ -544,6 +544,7 @@
- Sun Microsystems
- Marcus Sundberg
- MÃ¥rten Svantesson (fursten)
-+Jan Synacek <jsynacek@redhat.com>
- Amir Szekely (kichik)
- Gábor Szuromi (kukkerman)
- Jakub Szypulka
-diff --git a/libpurple/purple-remote b/libpurple/purple-remote
---- a/libpurple/purple-remote
-+++ b/libpurple/purple-remote
-@@ -14,7 +14,11 @@
- import xml.dom.minidom
-
- sys.stdin = codecs.getwriter('utf-8')(sys.stdin);
--sys.stdout = codecs.getwriter('utf-8')(sys.stdout);
-+
-+if(sys.version_info > (3,0)):
-+ sys.stdout = codecs.getwriter('utf-8')(sys.stdout.detach());
-+else:
-+ sys.stdout = codecs.getwriter('utf-8')(sys.stdout);
-
- xml.dom.minidom.Element.all = xml.dom.minidom.Element.getElementsByTagName
-
diff --git a/net-im/pidgin/metadata.xml b/net-im/pidgin/metadata.xml
index c7542a5eab79..8875dc41710e 100644
--- a/net-im/pidgin/metadata.xml
+++ b/net-im/pidgin/metadata.xml
@@ -1,12 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
+ <email>nativemad@gentoo.org</email>
+ <name>Andreas Schuerch</name>
</maintainer>
<longdescription>
- Pidgin is an instant messaging program for Windows, Linux, BSD, and other Unixes. You can talk to your friends using AIM, ICQ, Jabber/XMPP, MSN Messenger, Yahoo!, Bonjour, Gadu-Gadu, IRC, Novell GroupWise Messenger, QQ, Lotus Sametime, SIMPLE, and Zephyr.
+ Pidgin is an instant messaging program for Windows, Linux, BSD, and other Unixes.
+ You can talk to your friends using AIM, ICQ, Jabber/XMPP, MSN Messenger, Yahoo!,
+ Bonjour, Gadu-Gadu, IRC, Novell GroupWise Messenger, QQ, Lotus Sametime, SIMPLE,
+ and Zephyr.
</longdescription>
<use>
<flag name="gadu">Enable Gadu Gadu protocol support</flag>
diff --git a/net-im/pidgin/pidgin-2.13.0-r8.ebuild b/net-im/pidgin/pidgin-2.14.10-r1.ebuild
index f3f3b6b1f4e3..9adb88007f14 100644
--- a/net-im/pidgin/pidgin-2.13.0-r8.ebuild
+++ b/net-im/pidgin/pidgin-2.14.10-r1.ebuild
@@ -1,26 +1,24 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
GENTOO_DEPEND_ON_PERL=no
-PYTHON_COMPAT=( python3_{6,7} )
+PYTHON_COMPAT=( python3_10 )
-inherit autotools gnome2-utils flag-o-matic toolchain-funcs multilib perl-module python-single-r1 xdg
+inherit autotools gnome2-utils flag-o-matic perl-module python-single-r1 xdg
DESCRIPTION="GTK Instant Messenger client"
HOMEPAGE="https://pidgin.im/"
-SRC_URI="
- mirror://sourceforge/${PN}/${P}.tar.bz2
- https://dev.gentoo.org/~polynomial-c/${PN}-eds-3.6.patch.bz2
- https://gist.githubusercontent.com/imcleod/77f38d11af11b2413ada/raw/46e9d6cb4d2f839832dad2d697bb141a88028e04/pidgin-irc-join-sleep.patch -> ${PN}-2.10.9-irc_join_sleep.patch"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0/2" # libpurple version
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
IUSE="aqua dbus debug doc eds gadu gnutls groupwise +gstreamer +gtk idn
meanwhile ncurses networkmanager nls perl pie prediction python sasl spell tcl
-tk +xscreensaver zephyr zeroconf"
+test tk v4l +xscreensaver zephyr zeroconf"
+RESTRICT="!test? ( test )"
# dbus requires python to generate C code for dbus bindings (thus DEPEND only).
# finch uses libgnt that links with libpython - {R,}DEPEND. But still there is
@@ -31,50 +29,48 @@ tk +xscreensaver zephyr zeroconf"
RDEPEND="
>=dev-libs/glib-2.16
>=dev-libs/libxml2-2.6.18
- ncurses? (
- sys-libs/ncurses:0=[unicode]
- dbus? ( ${PYTHON_DEPS} )
- python? ( ${PYTHON_DEPS} )
- )
- gtk? (
- >=x11-libs/gtk+-2.10:2[aqua=]
- x11-libs/libSM
- >=x11-libs/pango-1.4.0
- xscreensaver? ( x11-libs/libXScrnSaver )
- spell? ( >=app-text/gtkspell-2.0.2:2 )
- eds? ( >=gnome-extra/evolution-data-server-3.6:= )
- prediction? ( >=dev-db/sqlite-3.3:3 )
- )
- gstreamer? (
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- >=net-libs/farstream-0.2.7:0.2
- )
- zeroconf? ( net-dns/avahi[dbus] )
dbus? (
>=dev-libs/dbus-glib-0.71
>=sys-apps/dbus-0.90
$(python_gen_cond_dep '
- dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
')
)
- perl? ( >=dev-lang/perl-5.16:= )
- gadu? ( || (
- >=net-libs/libgadu-1.11.0[ssl,gnutls(+)]
- >=net-libs/libgadu-1.11.0[-ssl]
- ) )
+ gadu? ( >=net-libs/libgadu-1.11.0 )
gnutls? ( net-libs/gnutls:= )
!gnutls? (
dev-libs/nspr
dev-libs/nss
)
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=net-libs/farstream-0.2.7:0.2
+ )
+ gtk? (
+ >=x11-libs/gtk+-2.10:2[aqua=]
+ x11-libs/libSM
+ >=x11-libs/pango-1.4.0
+ xscreensaver? ( x11-libs/libXScrnSaver )
+ spell? ( >=app-text/gtkspell-2.0.2:2 )
+ eds? ( >=gnome-extra/evolution-data-server-3.6:= )
+ prediction? ( >=dev-db/sqlite-3.3:3 )
+ )
+ idn? ( net-dns/libidn:= )
meanwhile? ( net-libs/meanwhile )
+ ncurses? (
+ >=dev-libs/libgnt-$(ver_cut 1-2)
+ sys-libs/ncurses:=[unicode(+)]
+ dbus? ( ${PYTHON_DEPS} )
+ python? ( ${PYTHON_DEPS} )
+ )
+ networkmanager? ( net-misc/networkmanager )
+ perl? ( >=dev-lang/perl-5.16:= )
+ sasl? ( dev-libs/cyrus-sasl:2 )
tcl? ( dev-lang/tcl:0= )
tk? ( dev-lang/tk:0= )
- sasl? ( dev-libs/cyrus-sasl:2 )
- networkmanager? ( net-misc/networkmanager )
- idn? ( net-dns/libidn:= )
- !<x11-plugins/pidgin-facebookchat-1.69-r1
+ v4l? ( media-plugins/gst-plugins-v4l2 )
+ zeroconf? ( net-dns/avahi[dbus] )
"
# We want nls in case gtk is enabled, bug #
@@ -91,8 +87,9 @@ BDEPEND="
dev-lang/perl
dev-perl/XML-Parser
virtual/pkgconfig
- doc? ( app-doc/doxygen )
+ doc? ( app-text/doxygen )
!gtk? ( nls? ( ${NLS_DEPEND} ) )
+ test? ( >=dev-libs/check-0.9.4 )
"
DOCS=( AUTHORS HACKING NEWS README ChangeLog )
@@ -101,10 +98,11 @@ REQUIRED_USE="
dbus? ( ${PYTHON_REQUIRED_USE} )
networkmanager? ( dbus )
python? ( ${PYTHON_REQUIRED_USE} )
+ v4l? ( gstreamer )
"
# Enable Default protocols
-DYNAMIC_PRPLS="irc,jabber,oscar,simple"
+DEFAULT_PRPLS="irc,jabber,simple"
# List of plugins
# app-accessibility/pidgin-festival
@@ -114,7 +112,6 @@ DYNAMIC_PRPLS="irc,jabber,oscar,simple"
# x11-plugins/pidgin-encryption
# x11-plugins/pidgin-extprefs
# x11-plugins/pidgin-hotkeys
-# x11-plugins/pidgin-latex
# x11-plugins/pidgintex
# x11-plugins/pidgin-libnotify
# x11-plugins/pidgin-mbpurple
@@ -137,19 +134,7 @@ DYNAMIC_PRPLS="irc,jabber,oscar,simple"
# x11-plugins/pidgin-sendscreenshot
# x11-plugins/pidgimpd
-PATCHES=(
- "${FILESDIR}/${PN}-2.10.0-gold.patch"
- "${WORKDIR}/${PN}-eds-3.6.patch"
- "${FILESDIR}/${PN}-2.10.9-fix-gtkmedia.patch"
- "${FILESDIR}/${PN}-2.10.10-eds-3.6-configure.ac.patch"
- "${FILESDIR}/${PN}-2.10.11-tinfo.patch"
- "${DISTDIR}/${PN}-2.10.9-irc_join_sleep.patch" # 577286
- "${FILESDIR}/${PN}-2.13.0-disable-one-jid-test.patch" # 593338
- "${FILESDIR}/${PN}-2.13.0-python3_support.patch" #459996
- "${FILESDIR}/${PN}-2.13.0-gnutls_sni_support.patch" #708226
- "${FILESDIR}/${PN}-2.13.0-fix-build-against-nm-1.0.patch"
- "${FILESDIR}/${PN}-2.13.0-metainfo.patch"
-)
+PATCHES=( "${FILESDIR}/${PN}-2.10.9-irc_join_sleep.patch" ) # 577286
pkg_pretend() {
if ! use gtk && ! use ncurses ; then
@@ -174,6 +159,7 @@ pkg_setup() {
}
src_prepare() {
+ xdg_environment_reset
default
eautoreconf
}
@@ -184,47 +170,51 @@ src_configure() {
replace-flags -O? -O2
use pie && append-cflags -fPIE -pie
- use gadu && DYNAMIC_PRPLS+=",gg"
- use groupwise && DYNAMIC_PRPLS+=",novell"
- use meanwhile && DYNAMIC_PRPLS+=",sametime"
- use zephyr && DYNAMIC_PRPLS+=",zephyr"
- use zeroconf && DYNAMIC_PRPLS+=",bonjour"
+ use gadu && DEFAULT_PRPLS+=",gg"
+ use groupwise && DEFAULT_PRPLS+=",novell"
+ use meanwhile && DEFAULT_PRPLS+=",sametime"
+ use zephyr && DEFAULT_PRPLS+=",zephyr"
+ use zeroconf && DEFAULT_PRPLS+=",bonjour"
local myconf=(
--disable-mono
- --with-dynamic-prpls="${DYNAMIC_PRPLS}"
+ --disable-static
+ # Don't downgrade F_S, we already set it in toolchain, bug #890276
+ --disable-fortify
+ --with-dynamic-prpls="${DEFAULT_PRPLS}"
--with-system-ssl-certs="${EPREFIX}/etc/ssl/certs/"
--x-includes="${EPREFIX}"/usr/include/X11
- $(use_enable ncurses consoleui)
+ $(use_enable dbus)
+ $(use_enable debug)
+ $(use_enable doc doxygen)
+ $(use_enable gstreamer)
$(use_enable gtk gtkui)
$(use_enable gtk sm)
- $(usex gtk '--enable-nls' "$(use_enable nls)")
- $(use gtk && use_enable xscreensaver screensaver)
- $(use gtk && use_enable prediction cap)
- $(use gtk && use_enable eds gevolution)
- $(use gtk && use_enable spell gtkspell)
+ $(use_enable idn)
+ $(use_enable meanwhile)
+ $(use_enable networkmanager nm)
+ $(use_enable ncurses consoleui)
$(use_enable perl)
+ $(use_enable sasl cyrus-sasl )
$(use_enable tk)
$(use_enable tcl)
- $(use_enable debug)
- $(use_enable dbus)
- $(use_enable meanwhile)
- $(use_enable gstreamer)
- $(use_with gstreamer gstreamer 1.0)
- $(use_enable gstreamer farstream)
- $(use_enable gstreamer vv)
- $(use_enable sasl cyrus-sasl )
- $(use_enable doc doxygen)
- $(use_enable networkmanager nm)
+ $(use_enable v4l farstream)
+ $(use_enable v4l gstreamer-video)
+ $(use_enable v4l vv)
$(use_enable zeroconf avahi)
- $(use_enable idn)
+ $(use_with gstreamer gstreamer 1.0)
+ $(usex gtk '--enable-nls' "$(use_enable nls)")
+ $(use gtk && use_enable eds gevolution)
+ $(use gtk && use_enable prediction cap)
+ $(use gtk && use_enable spell gtkspell)
+ $(use gtk && use_enable xscreensaver screensaver)
)
- if use gnutls; then
+ if use gnutls ; then
einfo "Disabling NSS, using GnuTLS"
myconf+=(
- --enable-nss=no
--enable-gnutls=yes
+ --enable-nss=no
--with-gnutls-includes="${EPREFIX}/usr/include/gnutls"
--with-gnutls-libs="${EPREFIX}/usr/$(get_libdir)"
)
@@ -237,25 +227,25 @@ src_configure() {
fi
if use dbus || { use ncurses && use python ; } ; then
- myconf+=( --with-python=${PYTHON} )
+ myconf+=( --with-python3=${PYTHON} )
else
- myconf+=( --without-python )
+ myconf+=( --without-python3 )
fi
econf "${myconf[@]}"
}
src_install() {
- # setting this here because gnome2.eclass is not EAPI-7 ready
+ # setting this here because we no longer use gnome2.eclass
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1"
default
if use gtk ; then
# Fix tray paths for e16 (x11-wm/enlightenment) and other
- # implementations that are not complient with new hicolor theme yet, #323355
- local pixmapdir
- for d in 16 22 32 48; do
- pixmapdir=${ED}/usr/share/pixmaps/pidgin/tray/hicolor/${d}x${d}/actions
+ # implementations that are not compliant with new hicolor theme yet, #323355
+ local d f pixmapdir
+ for d in 16 22 32 48 ; do
+ pixmapdir="${ED}/usr/share/pixmaps/pidgin/tray/hicolor/${d}x${d}/actions"
mkdir "${pixmapdir}" || die
pushd "${pixmapdir}" >/dev/null || die
for f in ../status/*; do
@@ -266,19 +256,20 @@ src_install() {
fi
use perl && perl_delete_localpod
- if use python && use dbus ; then
- python_fix_shebang "${ED}"
+ use dbus && python_fix_shebang "${ED}"
+ if use python || use dbus ; then
python_optimize
fi
dodoc ${DOCS[@]} finch/plugins/pietray.py
docompress -x /usr/share/doc/${PF}/pietray.py
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
+ find "${ED}" -type f -name "*.la" -delete || die
}
src_test() {
# make default build logs slightly more useful
+ local -x GST_PLUGIN_SYSTEM_PATH_1_0=
emake check VERBOSE=1
}
diff --git a/net-im/pidgin/pidgin-2.13.0-r7.ebuild b/net-im/pidgin/pidgin-2.14.12.ebuild
index 4875939166f5..11bcb9864f23 100644
--- a/net-im/pidgin/pidgin-2.13.0-r7.ebuild
+++ b/net-im/pidgin/pidgin-2.14.12.ebuild
@@ -1,26 +1,24 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
GENTOO_DEPEND_ON_PERL=no
-PYTHON_COMPAT=( python3_{6,7} )
+PYTHON_COMPAT=( python3_{10..11} )
-inherit autotools flag-o-matic gnome2 toolchain-funcs multilib perl-module python-single-r1 xdg-utils
+inherit autotools gnome2-utils flag-o-matic perl-module python-single-r1 xdg
DESCRIPTION="GTK Instant Messenger client"
-HOMEPAGE="http://pidgin.im/"
-SRC_URI="
- mirror://sourceforge/${PN}/${P}.tar.bz2
- https://dev.gentoo.org/~polynomial-c/${PN}-eds-3.6.patch.bz2
- https://gist.githubusercontent.com/imcleod/77f38d11af11b2413ada/raw/46e9d6cb4d2f839832dad2d697bb141a88028e04/pidgin-irc-join-sleep.patch -> ${PN}-2.10.9-irc_join_sleep.patch"
+HOMEPAGE="https://pidgin.im/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0/2" # libpurple version
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
IUSE="aqua dbus debug doc eds gadu gnutls groupwise +gstreamer +gtk idn
meanwhile ncurses networkmanager nls perl pie prediction python sasl spell tcl
-tk +xscreensaver zephyr zeroconf" # mono
+test tk v4l +xscreensaver zephyr zeroconf"
+RESTRICT="!test? ( test )"
# dbus requires python to generate C code for dbus bindings (thus DEPEND only).
# finch uses libgnt that links with libpython - {R,}DEPEND. But still there is
@@ -31,67 +29,71 @@ tk +xscreensaver zephyr zeroconf" # mono
RDEPEND="
>=dev-libs/glib-2.16
>=dev-libs/libxml2-2.6.18
- ncurses? (
- sys-libs/ncurses:0=[unicode]
- dbus? ( ${PYTHON_DEPS} )
- python? ( ${PYTHON_DEPS} )
- )
- gtk? (
- >=x11-libs/gtk+-2.10:2[aqua=]
- x11-libs/libSM
- >=x11-libs/pango-1.4.0
- xscreensaver? ( x11-libs/libXScrnSaver )
- spell? ( >=app-text/gtkspell-2.0.2:2 )
- eds? ( >=gnome-extra/evolution-data-server-3.6:= )
- prediction? ( >=dev-db/sqlite-3.3:3 )
- )
- gstreamer? (
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- >=net-libs/farstream-0.2.7:0.2
- )
- zeroconf? ( net-dns/avahi[dbus] )
dbus? (
>=dev-libs/dbus-glib-0.71
>=sys-apps/dbus-0.90
$(python_gen_cond_dep '
- dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
')
)
- perl? ( >=dev-lang/perl-5.16:= )
- gadu? ( || (
- >=net-libs/libgadu-1.11.0[ssl,gnutls(+)]
- >=net-libs/libgadu-1.11.0[-ssl]
- ) )
+ gadu? ( >=net-libs/libgadu-1.11.0 )
gnutls? ( net-libs/gnutls:= )
!gnutls? (
dev-libs/nspr
dev-libs/nss
)
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=net-libs/farstream-0.2.7:0.2
+ )
+ gtk? (
+ >=x11-libs/gtk+-2.10:2[aqua=]
+ x11-libs/libSM
+ >=x11-libs/pango-1.4.0
+ xscreensaver? ( x11-libs/libXScrnSaver )
+ spell? ( >=app-text/gtkspell-2.0.2:2 )
+ eds? ( >=gnome-extra/evolution-data-server-3.6:= )
+ prediction? ( >=dev-db/sqlite-3.3:3 )
+ )
+ idn? ( net-dns/libidn:= )
meanwhile? ( net-libs/meanwhile )
+ ncurses? (
+ >=dev-libs/libgnt-$(ver_cut 1-2)
+ sys-libs/ncurses:=[unicode(+)]
+ dbus? ( ${PYTHON_DEPS} )
+ python? ( ${PYTHON_DEPS} )
+ )
+ networkmanager? ( net-misc/networkmanager )
+ perl? ( >=dev-lang/perl-5.16:= )
+ sasl? ( dev-libs/cyrus-sasl:2 )
tcl? ( dev-lang/tcl:0= )
tk? ( dev-lang/tk:0= )
- sasl? ( dev-libs/cyrus-sasl:2 )
- networkmanager? ( <net-misc/networkmanager-1.19 )
- idn? ( net-dns/libidn:= )
- !<x11-plugins/pidgin-facebookchat-1.69-r1"
- # Mono support crashes pidgin
- #mono? ( dev-lang/mono )"
+ v4l? ( media-plugins/gst-plugins-v4l2 )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
# We want nls in case gtk is enabled, bug #
-NLS_DEPEND=">=dev-util/intltool-0.41.1 sys-devel/gettext"
-
-DEPEND="$RDEPEND
- dev-lang/perl
- dev-perl/XML-Parser
- virtual/pkgconfig
+NLS_DEPEND="
+ >=dev-util/intltool-0.41.1
+ sys-devel/gettext
+"
+DEPEND="
+ ${RDEPEND}
gtk? (
x11-base/xorg-proto
${NLS_DEPEND}
)
dbus? ( ${PYTHON_DEPS} )
- doc? ( app-doc/doxygen )
- !gtk? ( nls? ( ${NLS_DEPEND} ) )"
+"
+BDEPEND="
+ dev-lang/perl
+ dev-perl/XML-Parser
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+ !gtk? ( nls? ( ${NLS_DEPEND} ) )
+ test? ( >=dev-libs/check-0.9.4 )
+"
DOCS=( AUTHORS HACKING NEWS README ChangeLog )
@@ -99,10 +101,11 @@ REQUIRED_USE="
dbus? ( ${PYTHON_REQUIRED_USE} )
networkmanager? ( dbus )
python? ( ${PYTHON_REQUIRED_USE} )
+ v4l? ( gstreamer )
"
# Enable Default protocols
-DYNAMIC_PRPLS="irc,jabber,oscar,simple"
+DEFAULT_PRPLS="irc,jabber,simple"
# List of plugins
# app-accessibility/pidgin-festival
@@ -112,7 +115,6 @@ DYNAMIC_PRPLS="irc,jabber,oscar,simple"
# x11-plugins/pidgin-encryption
# x11-plugins/pidgin-extprefs
# x11-plugins/pidgin-hotkeys
-# x11-plugins/pidgin-latex
# x11-plugins/pidgintex
# x11-plugins/pidgin-libnotify
# x11-plugins/pidgin-mbpurple
@@ -135,18 +137,6 @@ DYNAMIC_PRPLS="irc,jabber,oscar,simple"
# x11-plugins/pidgin-sendscreenshot
# x11-plugins/pidgimpd
-PATCHES=(
- "${FILESDIR}/${PN}-2.10.0-gold.patch"
- "${WORKDIR}/${PN}-eds-3.6.patch"
- "${FILESDIR}/${PN}-2.10.9-fix-gtkmedia.patch"
- "${FILESDIR}/${PN}-2.10.10-eds-3.6-configure.ac.patch"
- "${FILESDIR}/${PN}-2.10.11-tinfo.patch"
- "${DISTDIR}/${PN}-2.10.9-irc_join_sleep.patch" # 577286
- "${FILESDIR}/${PN}-2.13.0-disable-one-jid-test.patch" # 593338
- "${FILESDIR}/${PN}-2.13.0-python3_support.patch" #459996
- "${FILESDIR}/${PN}-2.13.0-gnutls_sni_support.patch" #708226
-)
-
pkg_pretend() {
if ! use gtk && ! use ncurses ; then
elog "You did not pick the ncurses or gtk use flags, only libpurple"
@@ -170,6 +160,7 @@ pkg_setup() {
}
src_prepare() {
+ xdg_environment_reset
default
eautoreconf
}
@@ -180,70 +171,82 @@ src_configure() {
replace-flags -O? -O2
use pie && append-cflags -fPIE -pie
- use gadu && DYNAMIC_PRPLS+=",gg"
- use groupwise && DYNAMIC_PRPLS+=",novell"
- use meanwhile && DYNAMIC_PRPLS+=",sametime"
- use zephyr && DYNAMIC_PRPLS+=",zephyr"
- use zeroconf && DYNAMIC_PRPLS+=",bonjour"
+ use gadu && DEFAULT_PRPLS+=",gg"
+ use groupwise && DEFAULT_PRPLS+=",novell"
+ use meanwhile && DEFAULT_PRPLS+=",sametime"
+ use zephyr && DEFAULT_PRPLS+=",zephyr"
+ use zeroconf && DEFAULT_PRPLS+=",bonjour"
local myconf=(
--disable-mono
- --with-dynamic-prpls="${DYNAMIC_PRPLS}"
+ --disable-static
+ # Don't downgrade F_S, we already set it in toolchain, bug #890276
+ --disable-fortify
+ --with-dynamic-prpls="${DEFAULT_PRPLS}"
--with-system-ssl-certs="${EPREFIX}/etc/ssl/certs/"
--x-includes="${EPREFIX}"/usr/include/X11
- $(use_enable ncurses consoleui)
+ $(use_enable dbus)
+ $(use_enable debug)
+ $(use_enable doc doxygen)
+ $(use_enable gstreamer)
$(use_enable gtk gtkui)
$(use_enable gtk sm)
- $(usex gtk '--enable-nls' "$(use_enable nls)")
- $(use gtk && use_enable xscreensaver screensaver)
- $(use gtk && use_enable prediction cap)
- $(use gtk && use_enable eds gevolution)
- $(use gtk && use_enable spell gtkspell)
+ $(use_enable idn)
+ $(use_enable meanwhile)
+ $(use_enable networkmanager nm)
+ $(use_enable ncurses consoleui)
$(use_enable perl)
+ $(use_enable sasl cyrus-sasl )
$(use_enable tk)
$(use_enable tcl)
- $(use_enable debug)
- $(use_enable dbus)
- $(use_enable meanwhile)
- $(use_enable gstreamer)
- $(use_with gstreamer gstreamer 1.0)
- $(use_enable gstreamer farstream)
- $(use_enable gstreamer vv)
- $(use_enable sasl cyrus-sasl )
- $(use_enable doc doxygen)
- $(use_enable networkmanager nm)
+ $(use_enable v4l farstream)
+ $(use_enable v4l gstreamer-video)
+ $(use_enable v4l vv)
$(use_enable zeroconf avahi)
- $(use_enable idn)
+ $(use_with gstreamer gstreamer 1.0)
+ $(usex gtk '--enable-nls' "$(use_enable nls)")
+ $(use gtk && use_enable eds gevolution)
+ $(use gtk && use_enable prediction cap)
+ $(use gtk && use_enable spell gtkspell)
+ $(use gtk && use_enable xscreensaver screensaver)
)
- if use gnutls; then
+ if use gnutls ; then
einfo "Disabling NSS, using GnuTLS"
- myconf+=( --enable-nss=no --enable-gnutls=yes )
- myconf+=( --with-gnutls-includes="${EPREFIX}/usr/include/gnutls" )
- myconf+=( --with-gnutls-libs="${EPREFIX}/usr/$(get_libdir)" )
+ myconf+=(
+ --enable-gnutls=yes
+ --enable-nss=no
+ --with-gnutls-includes="${EPREFIX}/usr/include/gnutls"
+ --with-gnutls-libs="${EPREFIX}/usr/$(get_libdir)"
+ )
else
einfo "Disabling GnuTLS, using NSS"
- myconf+=( --enable-gnutls=no --enable-nss=yes )
+ myconf+=(
+ --enable-gnutls=no
+ --enable-nss=yes
+ )
fi
if use dbus || { use ncurses && use python ; } ; then
- myconf+=( --with-python=${PYTHON} )
+ myconf+=( --with-python3=${PYTHON} )
else
- myconf+=( --without-python )
+ myconf+=( --without-python3 )
fi
econf "${myconf[@]}"
}
src_install() {
- gnome2_src_install
+ # setting this here because we no longer use gnome2.eclass
+ export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1"
+ default
if use gtk ; then
# Fix tray paths for e16 (x11-wm/enlightenment) and other
- # implementations that are not complient with new hicolor theme yet, #323355
- local pixmapdir
- for d in 16 22 32 48; do
- pixmapdir=${ED%/}/usr/share/pixmaps/pidgin/tray/hicolor/${d}x${d}/actions
+ # implementations that are not compliant with new hicolor theme yet, #323355
+ local d f pixmapdir
+ for d in 16 22 32 48 ; do
+ pixmapdir="${ED}/usr/share/pixmaps/pidgin/tray/hicolor/${d}x${d}/actions"
mkdir "${pixmapdir}" || die
pushd "${pixmapdir}" >/dev/null || die
for f in ../status/*; do
@@ -254,28 +257,36 @@ src_install() {
fi
use perl && perl_delete_localpod
- if use python && use dbus ; then
- python_fix_shebang "${ED}"
+ use dbus && python_fix_shebang "${ED}"
+ if use python || use dbus ; then
python_optimize
fi
- dodoc ${DOCS} finch/plugins/pietray.py
+ dodoc ${DOCS[@]} finch/plugins/pietray.py
docompress -x /usr/share/doc/${PF}/pietray.py
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
+ find "${ED}" -type f -name "*.la" -delete || die
}
src_test() {
# make default build logs slightly more useful
+ local -x GST_PLUGIN_SYSTEM_PATH_1_0=
emake check VERBOSE=1
}
+pkg_preinst() {
+ gnome2_gconf_savelist
+ xdg_pkg_preinst
+}
+
pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
+ gnome2_gconf_install
+ gnome2_schemas_update
+ xdg_pkg_postinst
}
pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ xdg_pkg_postrm
}
diff --git a/net-im/pidgin/pidgin-2.14.13.ebuild b/net-im/pidgin/pidgin-2.14.13.ebuild
new file mode 100644
index 000000000000..a46f86cb655a
--- /dev/null
+++ b/net-im/pidgin/pidgin-2.14.13.ebuild
@@ -0,0 +1,297 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GENTOO_DEPEND_ON_PERL=no
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit autotools gnome2-utils flag-o-matic perl-module python-single-r1 xdg
+
+DESCRIPTION="GTK Instant Messenger client"
+HOMEPAGE="https://pidgin.im/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0/2" # libpurple version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+# The new gui useflag depends on the gtk useflag, as most pidgin plugins depend
+# on the gtk flag. As soon as all plugins have been updated to use the new
+# gui flag, the gtk flag can get removed.
+IUSE="aqua dbus debug doc eds gadu gnutls groupwise +gstreamer +gtk +gui idn
+meanwhile ncurses networkmanager nls perl pie prediction python sasl spell tcl
+test tk v4l +xscreensaver zephyr zeroconf"
+RESTRICT="!test? ( test )"
+
+# dbus requires python to generate C code for dbus bindings (thus DEPEND only).
+# finch uses libgnt that links with libpython - {R,}DEPEND. But still there is
+# no way to build dbus and avoid libgnt linkage with python. If you want this
+# send patch upstream.
+# purple-url-handler and purple-remote require dbus-python thus in reality we
+# rdepend on python if dbus enabled. But it is possible to separate this dep.
+RDEPEND="
+ >=dev-libs/glib-2.16
+ >=dev-libs/libxml2-2.6.18
+ dbus? (
+ >=dev-libs/dbus-glib-0.71
+ >=sys-apps/dbus-0.90
+ $(python_gen_cond_dep '
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ ')
+ )
+ gadu? ( >=net-libs/libgadu-1.11.0 )
+ gnutls? ( net-libs/gnutls:= )
+ !gnutls? (
+ dev-libs/nspr
+ dev-libs/nss
+ )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=net-libs/farstream-0.2.7:0.2
+ )
+ gtk? (
+ >=x11-libs/gtk+-2.10:2[aqua=]
+ x11-libs/libSM
+ >=x11-libs/pango-1.4.0
+ xscreensaver? ( x11-libs/libXScrnSaver )
+ spell? ( >=app-text/gtkspell-2.0.2:2 )
+ eds? ( >=gnome-extra/evolution-data-server-3.6:= )
+ prediction? ( >=dev-db/sqlite-3.3:3 )
+ )
+ idn? ( net-dns/libidn:= )
+ meanwhile? ( net-libs/meanwhile )
+ ncurses? (
+ >=dev-libs/libgnt-$(ver_cut 1-2)
+ sys-libs/ncurses:=[unicode(+)]
+ dbus? ( ${PYTHON_DEPS} )
+ python? ( ${PYTHON_DEPS} )
+ )
+ networkmanager? ( net-misc/networkmanager )
+ perl? ( >=dev-lang/perl-5.16:= )
+ sasl? ( dev-libs/cyrus-sasl:2 )
+ tcl? ( dev-lang/tcl:0= )
+ tk? ( dev-lang/tk:0= )
+ v4l? ( media-plugins/gst-plugins-v4l2 )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+
+# We want nls in case gtk is enabled, bug #
+NLS_DEPEND="
+ >=dev-util/intltool-0.41.1
+ sys-devel/gettext
+"
+DEPEND="
+ ${RDEPEND}
+ gtk? (
+ x11-base/xorg-proto
+ ${NLS_DEPEND}
+ )
+ dbus? ( ${PYTHON_DEPS} )
+"
+BDEPEND="
+ dev-lang/perl
+ dev-perl/XML-Parser
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+ !gtk? ( nls? ( ${NLS_DEPEND} ) )
+ test? ( >=dev-libs/check-0.9.4 )
+"
+
+DOCS=( AUTHORS HACKING NEWS README ChangeLog )
+
+REQUIRED_USE="
+ dbus? ( ${PYTHON_REQUIRED_USE} )
+ gtk? ( gui )
+ gui? ( gtk )
+ networkmanager? ( dbus )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ v4l? ( gstreamer )
+"
+
+# Enable Default protocols
+DEFAULT_PRPLS="irc,jabber,simple"
+
+# List of plugins
+# app-accessibility/pidgin-festival
+# net-im/librvp
+# x11-plugins/guifications
+# x11-plugins/msn-pecan
+# x11-plugins/pidgin-encryption
+# x11-plugins/pidgin-extprefs
+# x11-plugins/pidgin-hotkeys
+# x11-plugins/pidgintex
+# x11-plugins/pidgin-libnotify
+# x11-plugins/pidgin-mbpurple
+# x11-plugins/pidgin-bot-sentry
+# x11-plugins/pidgin-otr
+# x11-plugins/pidgin-rhythmbox
+# x11-plugins/purple-plugin_pack
+# x11-themes/pidgin-smileys
+# x11-plugins/pidgin-knotify
+# Plugins in Sunrise:
+# x11-plugins/pidgin-audacious-remote
+# x11-plugins/pidgin-autoanswer
+# x11-plugins/pidgin-birthday-reminder
+# x11-plugins/pidgin-blinklight
+# x11-plugins/pidgin-convreverse
+# x11-plugins/pidgin-embeddedvideo
+# x11-plugins/pidgin-extended-blist-sort
+# x11-plugins/pidgin-gfire
+# x11-plugins/pidgin-lastfm
+# x11-plugins/pidgin-sendscreenshot
+# x11-plugins/pidgimpd
+
+pkg_pretend() {
+ if ! use gtk && ! use ncurses ; then
+ elog "You did not pick the ncurses or gtk use flags, only libpurple"
+ elog "will be built."
+ fi
+
+ # dbus is enabled, no way to disable linkage with python => python is enabled
+ #REQUIRED_USE="gtk? ( nls ) dbus? ( python )"
+ if use gtk && ! use nls ; then
+ ewarn "gtk build => nls is enabled!"
+ fi
+ if use dbus && ! use python ; then
+ elog "dbus is enabled, no way to disable linkage with python => python is enabled"
+ fi
+}
+
+pkg_setup() {
+ if use python || use dbus ; then
+ python-single-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ xdg_environment_reset
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # Stabilize things, for your own good
+ strip-flags
+ replace-flags -O? -O2
+ use pie && append-cflags -fPIE -pie
+
+ use gadu && DEFAULT_PRPLS+=",gg"
+ use groupwise && DEFAULT_PRPLS+=",novell"
+ use meanwhile && DEFAULT_PRPLS+=",sametime"
+ use zephyr && DEFAULT_PRPLS+=",zephyr"
+ use zeroconf && DEFAULT_PRPLS+=",bonjour"
+
+ local myconf=(
+ --disable-mono
+ --disable-static
+ # Don't downgrade F_S, we already set it in toolchain, bug #890276
+ --disable-fortify
+ --with-dynamic-prpls="${DEFAULT_PRPLS}"
+ --with-system-ssl-certs="${EPREFIX}/etc/ssl/certs/"
+ --x-includes="${EPREFIX}"/usr/include/X11
+ $(use_enable dbus)
+ $(use_enable debug)
+ $(use_enable doc doxygen)
+ $(use_enable gstreamer)
+ $(use_enable gtk gtkui)
+ $(use_enable gtk sm)
+ $(use_enable idn)
+ $(use_enable meanwhile)
+ $(use_enable networkmanager nm)
+ $(use_enable ncurses consoleui)
+ $(use_enable perl)
+ $(use_enable sasl cyrus-sasl )
+ $(use_enable tk)
+ $(use_enable tcl)
+ $(use_enable v4l farstream)
+ $(use_enable v4l gstreamer-video)
+ $(use_enable v4l vv)
+ $(use_enable zeroconf avahi)
+ $(use_with gstreamer gstreamer 1.0)
+ $(usex gtk '--enable-nls' "$(use_enable nls)")
+ $(use gtk && use_enable eds gevolution)
+ $(use gtk && use_enable prediction cap)
+ $(use gtk && use_enable spell gtkspell)
+ $(use gtk && use_enable xscreensaver screensaver)
+ )
+
+ if use gnutls ; then
+ einfo "Disabling NSS, using GnuTLS"
+ myconf+=(
+ --enable-gnutls=yes
+ --enable-nss=no
+ --with-gnutls-includes="${EPREFIX}/usr/include/gnutls"
+ --with-gnutls-libs="${EPREFIX}/usr/$(get_libdir)"
+ )
+ else
+ einfo "Disabling GnuTLS, using NSS"
+ myconf+=(
+ --enable-gnutls=no
+ --enable-nss=yes
+ )
+ fi
+
+ if use dbus || { use ncurses && use python ; } ; then
+ myconf+=( --with-python3=${PYTHON} )
+ else
+ myconf+=( --without-python3 )
+ fi
+ # set variable to prevent configure script from calling gconftool-2
+ GCONF_SCHEMA_INSTALL_SOURCE=/etc/gconf/schemas econf "${myconf[@]}"
+}
+
+src_install() {
+ # setting this here because we no longer use gnome2.eclass
+ export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1"
+ default
+
+ if use gtk ; then
+ # Fix tray paths for e16 (x11-wm/enlightenment) and other
+ # implementations that are not compliant with new hicolor theme yet, #323355
+ local d f pixmapdir
+ for d in 16 22 32 48 ; do
+ pixmapdir="${ED}/usr/share/pixmaps/pidgin/tray/hicolor/${d}x${d}/actions"
+ mkdir "${pixmapdir}" || die
+ pushd "${pixmapdir}" >/dev/null || die
+ for f in ../status/*; do
+ ln -s ${f} || die
+ done
+ popd >/dev/null || die
+ done
+ fi
+ use perl && perl_delete_localpod
+
+ use dbus && python_fix_shebang "${ED}"
+ if use python || use dbus ; then
+ python_optimize
+ fi
+
+ dodoc ${DOCS[@]} finch/plugins/pietray.py
+ docompress -x /usr/share/doc/${PF}/pietray.py
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
+
+src_test() {
+ # make default build logs slightly more useful
+ local -x GST_PLUGIN_SYSTEM_PATH_1_0=
+ emake check VERBOSE=1
+}
+
+pkg_preinst() {
+ gnome2_gconf_savelist
+ xdg_pkg_preinst
+}
+
+pkg_postinst() {
+ gnome2_gconf_install
+ gnome2_schemas_update
+ xdg_pkg_postinst
+}
+
+pkg_postrm() {
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ xdg_pkg_postrm
+}
diff --git a/net-im/poezio/Manifest b/net-im/poezio/Manifest
index 9187b8c3e15f..89fdd00059f4 100644
--- a/net-im/poezio/Manifest
+++ b/net-im/poezio/Manifest
@@ -1 +1 @@
-DIST poezio-0.12.tar.gz 585750 BLAKE2B d79cab965b39a9ea191c763e1560bedbf46e3107e1b301a651103caf8f9e63b8465925ea01ac4e2e6b747b66cf5d4be8cabd8be80a069fe4eafcf331c7daada8 SHA512 6249daf23c6f4c1b25a9de686abaa62076e1eac7566da0a174ae3a82e3a53b7f2a86145d20d587a7ee43c8b679d90cb381d5afbfc7860459c5a497e97af32ff4
+DIST poezio-0.14.tar.gz 662379 BLAKE2B 467741d82945c084c79811d41ff85358ad236d0dcefca7e6f1f8ed5d78aa127f800d2370d624ebaf9e2eb20e1038f280c2e874694ea2b86965fe329b82c4b7d8 SHA512 6e68954a918c645592e2d2f8a265e2f2445a39e256c0525a5517e758a90cc404e066cc08d67ad0f8a3c7d6f3efd61f13a776737d110dd23df7a5f7fab54fc6b5
diff --git a/net-im/poezio/files/Do-not-install-man-pages-and-files-in-usr-share-poez.patch b/net-im/poezio/files/Do-not-install-man-pages-and-files-in-usr-share-poez.patch
new file mode 100644
index 000000000000..7b85ba892c43
--- /dev/null
+++ b/net-im/poezio/files/Do-not-install-man-pages-and-files-in-usr-share-poez.patch
@@ -0,0 +1,22 @@
+From 343c1e9be4cbf76c0ae437143b4000e36a1488ca Mon Sep 17 00:00:00 2001
+From: Florian Schmaus <flo@geekplace.eu>
+Date: Mon, 12 Jul 2021 15:08:30 +0200
+Subject: [PATCH] Do not install man pages and files in /usr/share/poezio
+
+Signed-off-by: Florian Schmaus <flo@geekplace.eu>
+--- a/setup.py
++++ b/setup.py
+@@ -156,13 +156,9 @@ setup(
+ scripts=['scripts/poezio_logs'],
+ entry_points={'console_scripts': ['poezio = poezio.__main__:run']},
+ data_files=([
+- ('share/man/man1/', ['data/poezio.1', 'data/poezio_logs.1']),
+- ('share/poezio/', ['README.rst', 'COPYING', 'CHANGELOG']),
+ ('share/applications/', ['data/io.poez.Poezio.desktop']),
+ ('share/metainfo/', ['data/io.poez.Poezio.appdata.xml'])
+ ]
+- + find_doc('share/doc/poezio/source', 'source')
+- + find_doc('share/doc/poezio/html', 'build/html')
+ + sphinx_files_found
+ ),
+ install_requires=['slixmpp>=1.6.0', 'aiodns', 'pyasn1_modules', 'pyasn1', 'typing_extensions', 'setuptools'],
diff --git a/net-im/poezio/metadata.xml b/net-im/poezio/metadata.xml
index 0f3aace8afd4..116cdcfb8474 100644
--- a/net-im/poezio/metadata.xml
+++ b/net-im/poezio/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>andrey_utkin@gentoo.org</email>
- <name>Andrey Utkin</name>
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
</maintainer>
<upstream>
<remote-id type="pypi">poezio</remote-id>
+ <remote-id type="codeberg">poezio/poezio</remote-id>
</upstream>
</pkgmetadata>
diff --git a/net-im/poezio/poezio-0.12.ebuild b/net-im/poezio/poezio-0.12.ebuild
deleted file mode 100644
index 435612e4aec7..000000000000
--- a/net-im/poezio/poezio-0.12.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_6 )
-
-inherit distutils-r1 readme.gentoo-r1
-
-DESCRIPTION="Console XMPP client that looks like most famous IRC clients"
-HOMEPAGE="https://poez.io/"
-LICENSE="ZLIB"
-SLOT="0"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_REPO_URI="https://git.poez.io/${PN}.git"
- inherit git-r3
-else
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-RDEPEND="
- dev-python/aiodns[${PYTHON_USEDEP}]
- dev-python/pyasn1-modules[${PYTHON_USEDEP}]
- dev-python/pyasn1[${PYTHON_USEDEP}]
- dev-python/slixmpp[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-DOC_CONTENTS="
-Install these optional runtime dependencies for additional features.
-* dev-python/potr for OTR encryption support.
-* dev-python/pyinotify for screen autoaway plugin support.
-"
-DISABLE_AUTOFORMATTING=true
-
-src_prepare() {
- default
- # Delete unmaintained plugin which requires an excessive external dep
- rm plugins/mpd_client.py || die
-}
-
-src_install() {
- distutils-r1_src_install
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/net-im/poezio/poezio-0.14.ebuild b/net-im/poezio/poezio-0.14.ebuild
new file mode 100644
index 000000000000..31269b9415ce
--- /dev/null
+++ b/net-im/poezio/poezio-0.14.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+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/ https://codeberg.org/poezio/poezio"
+LICENSE="GPL-3+"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://lab.louiz.org/${PN}/${PN}.git https://github.com/poezio/poezio.git"
+ inherit git-r3
+
+ # We build the html documentation using sphinx.
+ BDEPEND="dev-python/sphinx"
+else
+ inherit pypi
+ KEYWORDS="amd64"
+fi
+
+RDEPEND="
+ dev-python/aiodns[${PYTHON_USEDEP}]
+ dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ >=dev-python/slixmpp-1.8.2[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}/Do-not-install-man-pages-and-files-in-usr-share-poez.patch"
+)
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ default
+ # Delete unmaintained plugin which requires an excessive external dep
+ rm plugins/mpd_client.py || die
+}
+
+src_compile() {
+ distutils-r1_src_compile
+
+ if [[ -n "${EGIT_REPO_URI}" ]]; then
+ emake -C doc html
+ fi
+}
+
+# Poezio provides its own Python C extension 'poopt', which needs to be
+# correctly discovered to run the tests. See
+# https://projects.gentoo.org/python/guide/test.html#importerrors-for-c-extensions
+python_test() {
+ cd "${T}" || die
+ epytest "${S}"/test
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ doman data/poezio.1 data/poezio_logs.1
+
+ if [[ -n "${EGIT_REPO_URI}" ]]; then
+ docinto html
+ dodoc -r doc/build/html/*
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ optfeature "screen autoaway support" dev-python/pyinotify
+}
diff --git a/net-im/poezio/poezio-9999.ebuild b/net-im/poezio/poezio-9999.ebuild
index 2946371c46b8..65ae78d42495 100644
--- a/net-im/poezio/poezio-9999.ebuild
+++ b/net-im/poezio/poezio-9999.ebuild
@@ -1,21 +1,26 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-PYTHON_COMPAT=( python3_6 )
+EAPI=8
-inherit distutils-r1 readme.gentoo-r1
+DISTUTILS_USE_PEP517=setuptools
+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/"
-LICENSE="ZLIB"
+HOMEPAGE="https://poez.io/ https://codeberg.org/poezio/poezio"
+LICENSE="GPL-3+"
SLOT="0"
if [[ "${PV}" == "9999" ]]; then
- EGIT_REPO_URI="https://lab.louiz.org/${PN}/${PN}.git"
+ EGIT_REPO_URI="https://lab.louiz.org/${PN}/${PN}.git https://github.com/poezio/poezio.git"
inherit git-r3
+
+ # We build the html documentation using sphinx.
+ BDEPEND="dev-python/sphinx"
else
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ inherit pypi
KEYWORDS="~amd64"
fi
@@ -23,17 +28,14 @@ RDEPEND="
dev-python/aiodns[${PYTHON_USEDEP}]
dev-python/pyasn1-modules[${PYTHON_USEDEP}]
dev-python/pyasn1[${PYTHON_USEDEP}]
- dev-python/slixmpp[${PYTHON_USEDEP}]
+ >=dev-python/slixmpp-1.8.2[${PYTHON_USEDEP}]
"
-distutils_enable_tests pytest
+PATCHES=(
+ "${FILESDIR}/Do-not-install-man-pages-and-files-in-usr-share-poez.patch"
+)
-DOC_CONTENTS="
-Install these optional runtime dependencies for additional features.
-* dev-python/potr for OTR encryption support.
-* dev-python/pyinotify for screen autoaway plugin support.
-"
-DISABLE_AUTOFORMATTING=true
+distutils_enable_tests pytest
src_prepare() {
default
@@ -41,11 +43,35 @@ src_prepare() {
rm plugins/mpd_client.py || die
}
+src_compile() {
+ distutils-r1_src_compile
+
+ if [[ -n "${EGIT_REPO_URI}" ]]; then
+ emake -C doc html
+ fi
+}
+
+# Poezio provides its own Python C extension 'poopt', which needs to be
+# correctly discovered to run the tests. See
+# https://projects.gentoo.org/python/guide/test.html#importerrors-for-c-extensions
+python_test() {
+ cd "${T}" || die
+ epytest "${S}"/test
+}
+
src_install() {
distutils-r1_src_install
- readme.gentoo_create_doc
+
+ doman data/poezio.1 data/poezio_logs.1
+
+ if [[ -n "${EGIT_REPO_URI}" ]]; then
+ docinto html
+ dodoc -r doc/build/html/*
+ fi
}
pkg_postinst() {
- readme.gentoo_print_elog
+ xdg_pkg_postinst
+
+ optfeature "screen autoaway support" dev-python/pyinotify
}
diff --git a/net-im/profanity/Manifest b/net-im/profanity/Manifest
index 856411b5b46f..5c33bdd43b21 100644
--- a/net-im/profanity/Manifest
+++ b/net-im/profanity/Manifest
@@ -1,2 +1,6 @@
-DIST profanity-0.6.0.tar.gz 741812 BLAKE2B ba6cff070ee0e8a83b52677f6551c1d7397cd25993982d6b5390590a4924d902050504cb8803ee2741262b1409e4d75e9f223397f87f39d7dc86fcc56a0e5df6 SHA512 c7d8e74b764276f59fccfa029d45271032db315cdbf6e00deccbd611f202983a0930fed99021202333047acee9f3f0d7779cd9bb3628d2e5c4757e3de8c3629e
-DIST profanity-0.7.1.tar.gz 788754 BLAKE2B 447c761233ce6989081d3ed7a585d90713f4266dfc22ff816aea7c014f642f57989f7f767d8cf40cdd36c3152f45c6700f3905e0d12b864533aac61ac4dc7aaa SHA512 a6e159a5452ebb193dcff74dc8673de5dbc4bc5b2f2b8abc129641fc1b4b370aee9617dc0b26cfcc6aae58a1a900fda29356e61cdc17ee7ba69c879d6ccc2339
+DIST profanity-0.13.1.tar.xz 621836 BLAKE2B e038fa01272150cb7974b03f88f64335bf1690115dbbb1c6fe04c79acb69db18c556edf41316af1d363f9715cd2e7aeb3f3bd867836704b620d9a87976b64fa9 SHA512 6d7d3c96c65e26c15cac1157bd296c1dbd3e2471aec959d6c319c68b70ec21cef0c40d7b4eed40c30c377a766db9f13a774ccb4880c227ee368e4dd607d9c267
+DIST profanity-0.14.0-fix-test-lto.patch 751 BLAKE2B b73a35c643845979dab9079dc38adfbb4b62d6c07c31533cb79d0e10aba6476c6570000dc5f8b71e9507c0fe713fb27a00dcb9b3e869c84a3d81f28b7a702c24 SHA512 ad82ddd06282ec56bfab88a4094216378f56c08b517a03beefd8fbc7b5c5d0a328ac75103cd99fb0c18b2418c65cee6517d600a100d0bc6d42a448687e253f9c
+DIST profanity-0.14.0-ox-carbons.patch 1525 BLAKE2B 85fe9a76a8c735047365d56555c8e1df7906b5a676740a165fc5d9eab3933124b58abf6bdd0b448b5030a51cd1fad3ce8627cc03a2fbdacdd20c5dcc71d194e1 SHA512 36cfbb12ef7889ae5f318e35da2b0edf39dca067cefb9ac921f27cba0f52746eaae9d65b7631be392dd6e9a15d1fc8f8a3de36efe8707c756e9b008291e7f55e
+DIST profanity-0.14.0-plugins-install.patch 2295 BLAKE2B 8b67718abdb620875b9040f550685189acf5a2776aa5f45422e3471c13ae05bd773c05652048940d5b8d10d88c9a013c3262742db7c84b0ff0c108f5f78ead45 SHA512 a8912d5a33d4d6eebf85733f616ed729a05688b4acf70c927aa733755527fd4e523c3a485bbb0390b2006225e8420e1d76db7e91d2122af41496c0081e3b0cea
+DIST profanity-0.14.0-xscreensaver.patch 1678 BLAKE2B fe350b2249e45224b6510bb5730f38eafeb47e60a44035eaf88771940c9f0e556cc72ca737cb68c0b148b9faff442b9c9b6cdf9169a3db7ff6c7a60c2bdfc025 SHA512 2875df728b9957fc3bc8734a87c0e1a48913170b9718d6664ea65187327e26da1a7b2f5b80fe243a5ce5ab74983e4f3d22113747f44f8b8e8c13c871d31cf651
+DIST profanity-0.14.0.tar.gz 936272 BLAKE2B ec2ae625950a838ee50d6d3a87910bec76f28777bd662e909f394f18c277662694611a59d3be6c7f66821c2800a94b08f94b27a68d82e4de33b7d2f7b14ddf18 SHA512 25afd2f3146e6ed9f573f0e073cad0f06f7f8a21441c3c2c61641442d1aa5b9a7a817cdccc17354b32045ab9a965a95495a30c49088577a5060e8969725ea86e
diff --git a/net-im/profanity/metadata.xml b/net-im/profanity/metadata.xml
index 7b1cc59ac055..7b75b4cdd81c 100644
--- a/net-im/profanity/metadata.xml
+++ b/net-im/profanity/metadata.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>andrey_utkin@gentoo.org</email>
- <name>Andrey Utkin</name>
+ <maintainer type="person" proxied="yes">
+ <email>jubalh@iodoru.org</email>
+ <name>Michael Vetter</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
</maintainer>
<longdescription>
Profanity is a console based XMPP client written in C using
@@ -12,6 +16,11 @@
<use>
<flag name="gpg">Enable OpenPGP encryption</flag>
<flag name="omemo">Enable OMEMO encryption</flag>
+ <flag name="omemo-qrcode">Enable exchanging OMEMO information via QR code</flag>
<flag name="otr">Enable encrypted conversations using Off-The-Records messaging</flag>
+ <flag name="python">Enable Python plugins support</flag>
</use>
+ <upstream>
+ <remote-id type="github">profanity-im/profanity</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/profanity/profanity-0.13.1.ebuild b/net-im/profanity/profanity-0.13.1.ebuild
new file mode 100644
index 000000000000..e4e9ada1cc2d
--- /dev/null
+++ b/net-im/profanity/profanity-0.13.1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="A console based XMPP client inspired by Irssi"
+HOMEPAGE="https://profanity-im.github.io"
+SRC_URI="https://github.com/profanity-im/profanity/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="libnotify omemo otr gpg test xscreensaver"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-db/sqlite:3
+ || ( app-accessibility/at-spi2-atk dev-libs/atk )
+ dev-libs/glib:2
+ dev-libs/libassuan
+ dev-libs/libgpg-error
+ >=dev-libs/libstrophe-0.12.2
+ media-libs/harfbuzz:=
+ net-misc/curl
+ sys-libs/ncurses:=[unicode(+)]
+ sys-libs/readline:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango
+ x11-misc/shared-mime-info
+ virtual/libcrypt:=
+ gpg? ( app-crypt/gpgme:= )
+ libnotify? ( x11-libs/libnotify )
+ omemo? (
+ dev-libs/libgcrypt:=
+ net-libs/libsignal-protocol-c
+ )
+ otr? ( net-libs/libotr )
+ xscreensaver? (
+ x11-libs/libXScrnSaver
+ x11-libs/libX11
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/cmocka )
+"
+
+src_configure() {
+ local myeconfargs=(
+ --enable-gdk-pixbuf
+ $(use_enable libnotify notifications)
+ $(use_enable omemo)
+ $(use_enable otr)
+ $(use_enable gpg pgp)
+ $(use_with xscreensaver)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/net-im/profanity/profanity-0.14.0-r1.ebuild b/net-im/profanity/profanity-0.14.0-r1.ebuild
new file mode 100644
index 000000000000..7ffbb30da303
--- /dev/null
+++ b/net-im/profanity/profanity-0.14.0-r1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit python-single-r1
+
+DESCRIPTION="A console based XMPP client inspired by Irssi"
+HOMEPAGE="https://profanity-im.github.io"
+SRC_URI="
+ https://github.com/profanity-im/profanity/releases/download/${PV}/${P}.tar.gz
+ https://github.com/profanity-im/profanity/commit/122434a.patch
+ -> ${PN}-0.14.0-ox-carbons.patch
+ https://github.com/profanity-im/profanity/commit/2ed6211c.patch
+ -> ${PN}-0.14.0-xscreensaver.patch
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="libnotify omemo omemo-qrcode otr gpg test xscreensaver python"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="omemo-qrcode? ( omemo ) python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ >=dev-libs/libstrophe-0.12.3:=
+ media-libs/harfbuzz:=
+ net-misc/curl
+ sys-libs/ncurses:=[unicode(+)]
+ sys-libs/readline:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango
+ x11-misc/shared-mime-info
+ gpg? ( app-crypt/gpgme:= )
+ libnotify? ( x11-libs/libnotify )
+ omemo? (
+ dev-libs/libgcrypt:=
+ net-libs/libsignal-protocol-c
+ )
+ omemo-qrcode? ( media-gfx/qrencode:= )
+ otr? ( net-libs/libotr )
+ python? ( ${PYTHON_DEPS} )
+ xscreensaver? (
+ x11-libs/libXScrnSaver
+ x11-libs/libX11
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/cmocka )
+ python? (
+ $(python_gen_cond_dep '
+ dev-python/cython[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${DISTDIR}/${PN}-0.14.0-ox-carbons.patch"
+ "${DISTDIR}/${PN}-0.14.0-xscreensaver.patch"
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-gdk-pixbuf
+ $(use_enable libnotify notifications)
+ $(use_enable omemo)
+ $(use_enable omemo-qrcode)
+ $(use_enable otr)
+ $(use_enable python python-plugins)
+ $(use_enable gpg pgp)
+ $(use_with xscreensaver)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/net-im/profanity/profanity-0.14.0-r2.ebuild b/net-im/profanity/profanity-0.14.0-r2.ebuild
new file mode 100644
index 000000000000..3df1e94dec4e
--- /dev/null
+++ b/net-im/profanity/profanity-0.14.0-r2.ebuild
@@ -0,0 +1,102 @@
+# 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-single-r1
+
+DESCRIPTION="A console based XMPP client inspired by Irssi"
+HOMEPAGE="https://profanity-im.github.io"
+SRC_URI="
+ https://github.com/profanity-im/profanity/releases/download/${PV}/${P}.tar.gz
+ https://github.com/profanity-im/profanity/commit/122434a.patch
+ -> ${PN}-0.14.0-ox-carbons.patch
+ https://github.com/profanity-im/profanity/commit/2ed6211c.patch
+ -> ${PN}-0.14.0-xscreensaver.patch
+ https://github.com/profanity-im/profanity/commit/b8817470.patch
+ -> ${PN}-0.14.0-plugins-install.patch
+ https://github.com/profanity-im/profanity/commit/6b9d0e86.patch
+ -> ${PN}-0.14.0-fix-test-lto.patch
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="libnotify omemo omemo-qrcode otr gpg test xscreensaver python"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="omemo-qrcode? ( omemo ) python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ >=dev-libs/libstrophe-0.12.3:=
+ media-libs/harfbuzz:=
+ net-misc/curl
+ sys-libs/ncurses:=[unicode(+)]
+ sys-libs/readline:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango
+ x11-misc/shared-mime-info
+ gpg? ( app-crypt/gpgme:= )
+ libnotify? ( x11-libs/libnotify )
+ omemo? (
+ dev-libs/libgcrypt:=
+ net-libs/libsignal-protocol-c
+ )
+ omemo-qrcode? ( media-gfx/qrencode:= )
+ otr? ( net-libs/libotr )
+ python? ( ${PYTHON_DEPS} )
+ xscreensaver? (
+ x11-libs/libXScrnSaver
+ x11-libs/libX11
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/cmocka )
+ python? (
+ $(python_gen_cond_dep '
+ dev-python/cython[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${DISTDIR}/${PN}-0.14.0-ox-carbons.patch"
+ "${DISTDIR}/${PN}-0.14.0-xscreensaver.patch"
+ "${DISTDIR}/${PN}-0.14.0-plugins-install.patch"
+ "${DISTDIR}/${PN}-0.14.0-fix-test-lto.patch"
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-gdk-pixbuf
+ $(use_enable libnotify notifications)
+ $(use_enable omemo)
+ $(use_enable omemo-qrcode)
+ $(use_enable otr)
+ $(use_enable python python-plugins)
+ $(use_enable gpg pgp)
+ $(use_with xscreensaver)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/net-im/profanity/profanity-0.14.0.ebuild b/net-im/profanity/profanity-0.14.0.ebuild
new file mode 100644
index 000000000000..1c3dbeb86ba2
--- /dev/null
+++ b/net-im/profanity/profanity-0.14.0.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="A console based XMPP client inspired by Irssi"
+HOMEPAGE="https://profanity-im.github.io"
+SRC_URI="https://github.com/profanity-im/profanity/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="libnotify omemo omemo-qrcode otr gpg test xscreensaver"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="omemo-qrcode? ( omemo )"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ >=dev-libs/libstrophe-0.12.3:=
+ media-libs/harfbuzz:=
+ net-misc/curl
+ sys-libs/ncurses:=[unicode(+)]
+ sys-libs/readline:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango
+ x11-misc/shared-mime-info
+ gpg? ( app-crypt/gpgme:= )
+ libnotify? ( x11-libs/libnotify )
+ omemo? (
+ dev-libs/libgcrypt:=
+ net-libs/libsignal-protocol-c
+ )
+ omemo-qrcode? ( media-gfx/qrencode:= )
+ otr? ( net-libs/libotr )
+ xscreensaver? (
+ x11-libs/libXScrnSaver
+ x11-libs/libX11
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/cmocka )
+"
+
+src_configure() {
+ local myeconfargs=(
+ --enable-gdk-pixbuf
+ $(use_enable libnotify notifications)
+ $(use_enable omemo)
+ $(use_enable omemo-qrcode)
+ $(use_enable otr)
+ $(use_enable gpg pgp)
+ $(use_with xscreensaver)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/net-im/profanity/profanity-0.6.0.ebuild b/net-im/profanity/profanity-0.6.0.ebuild
deleted file mode 100644
index 402ca75c0859..000000000000
--- a/net-im/profanity/profanity-0.6.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A console based XMPP client inspired by Irssi"
-HOMEPAGE="http://www.profanity.im/"
-SRC_URI="http://www.profanity.im/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="libnotify otr gpg xscreensaver"
-
-DEPEND="
- dev-libs/expat
- dev-libs/glib
- dev-libs/libstrophe:=
- dev-libs/openssl:0=
- net-misc/curl
- sys-apps/util-linux
- sys-libs/ncurses:=[unicode]
- gpg? ( app-crypt/gpgme:= )
- libnotify? ( x11-libs/libnotify )
- otr? ( net-libs/libotr )
- xscreensaver? (
- x11-libs/libXScrnSaver
- x11-libs/libX11 )
- "
-RDEPEND="${DEPEND}"
-
-src_configure() {
- econf \
- $(use_enable libnotify notifications) \
- $(use_enable otr) \
- $(use_enable gpg pgp) \
- $(use_with xscreensaver)
-}
diff --git a/net-im/profanity/profanity-0.7.1.ebuild b/net-im/profanity/profanity-0.7.1.ebuild
deleted file mode 100644
index faaf4beb3402..000000000000
--- a/net-im/profanity/profanity-0.7.1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A console based XMPP client inspired by Irssi"
-HOMEPAGE="https://profanity-im.github.io"
-SRC_URI="https://profanity-im.github.io/${PN}-${PV}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="libnotify omemo otr gpg xscreensaver"
-
-DEPEND="
- dev-libs/expat
- dev-libs/glib
- dev-libs/libstrophe:=
- dev-libs/openssl:0=
- net-misc/curl
- sys-apps/util-linux
- sys-libs/ncurses:=[unicode]
- gpg? ( app-crypt/gpgme:= )
- libnotify? ( x11-libs/libnotify )
- omemo? (
- net-libs/libsignal-protocol-c
- dev-libs/libgcrypt
- )
- otr? ( net-libs/libotr )
- xscreensaver? (
- x11-libs/libXScrnSaver
- x11-libs/libX11 )
- "
-RDEPEND="${DEPEND}"
-
-src_configure() {
- econf \
- $(use_enable libnotify notifications) \
- $(use_enable omemo) \
- $(use_enable otr) \
- $(use_enable gpg pgp) \
- $(use_with xscreensaver)
-}
diff --git a/net-im/prosody-modules/Manifest b/net-im/prosody-modules/Manifest
new file mode 100644
index 000000000000..f201aea92483
--- /dev/null
+++ b/net-im/prosody-modules/Manifest
@@ -0,0 +1 @@
+DIST prosody-modules-0_pre20230221.tar.xz 1243536 BLAKE2B d9bf42acf22f94ab0e3a530ca09e3cdac066c46f8b3e443b1c6e0768e6e0a516175452f673edf85832e527e0533c7ab65f51f328af4f01883d02d91e45880c84 SHA512 b49f4e05ed7b2dbac319380a929240366b2da559bd612838ab447b2b705a962b5d006f1a087d3bbd9df0b6ab307030811747fb2cc78fa2d2e1ab6c8020767c84
diff --git a/net-im/prosody-modules/metadata.xml b/net-im/prosody-modules/metadata.xml
new file mode 100644
index 000000000000..ef7d6f03aa22
--- /dev/null
+++ b/net-im/prosody-modules/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <longdescription>
+ Prosody can be customized extensively using modules (plugins) to change
+ its default behaviour and to add new features and functionality.
+
+ Please note that each module is in a different state of development.
+ Some are proof-of-concept, others are quite stable and ready for production use.
+ Be sure to read the documentation page of any module before installing it on your server.
+ </longdescription>
+</pkgmetadata>
diff --git a/net-im/prosody-modules/prosody-modules-0_pre20230221.ebuild b/net-im/prosody-modules/prosody-modules-0_pre20230221.ebuild
new file mode 100644
index 000000000000..2950cf906871
--- /dev/null
+++ b/net-im/prosody-modules/prosody-modules-0_pre20230221.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit savedconfig
+
+DESCRIPTION="A collection of community-maintained modules for Prosody"
+HOMEPAGE="https://modules.prosody.im"
+SRC_URI="https://dev.gentoo.org/~conikost/distfiles/${P}.tar.xz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="net-im/prosody"
+
+src_prepare() {
+ default
+
+ # Exclude 'misc' folder from install, since it does not provide any modules.
+ echo "# Remove all modules from this list, which you don't want to install." > prosody-modules.conf || die
+ find * -maxdepth 0 -type d ! -name misc >> prosody-modules.conf || die
+
+ use savedconfig && restore_config prosody-modules.conf
+}
+
+src_install() {
+ insinto "/usr/$(get_libdir)/prosody/community-modules"
+ while read prosody_module; do
+ if ! [[ "${prosody_module}" = \#* ]]; then
+ if [[ -f "${prosody_module}/README.markdown" ]]; then
+ newdoc "${prosody_module}/README.markdown" "README.${prosody_module}"
+ rm "${prosody_module}/README.markdown" || die
+ fi
+
+ doins -r "${prosody_module}"
+ fi
+ done <prosody-modules.conf
+
+ save_config prosody-modules.conf
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ savedconfig_pkg_postinst
+
+ einfo "In order to use the community modules on an existing instance, you have to add"
+ einfo "'/usr/$(get_libdir)/prosody/community-modules' into 'plugin_paths'"
+ einfo "into your prosody configuration file '/etc/jabber/prosody.cfg.lua.'"
+ einfo ""
+ einfo "Example: plugin_paths = { \"/usr/$(get_libdir)/prosody/modules\","
+ einfo "\"/usr/$(get_libdir)/prosody/community-modules\" };"
+}
diff --git a/net-im/prosody-modules/prosody-modules-9999.ebuild b/net-im/prosody-modules/prosody-modules-9999.ebuild
new file mode 100644
index 000000000000..fe62bc7a36e7
--- /dev/null
+++ b/net-im/prosody-modules/prosody-modules-9999.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit mercurial savedconfig
+
+EHG_REPO_URI="https://hg.prosody.im/${PN}/"
+
+DESCRIPTION="A collection of community-maintained modules for Prosody"
+HOMEPAGE="https://modules.prosody.im"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS=""
+
+RDEPEND="net-im/prosody"
+
+src_prepare() {
+ default
+
+ # Exclude 'misc' folder from install, since it does not provide any modules.
+ echo "# Remove all modules from this list, which you don't want to install." > prosody-modules.conf || die
+ find * -maxdepth 0 -type d ! -name misc >> prosody-modules.conf || die
+
+ use savedconfig && restore_config prosody-modules.conf
+}
+
+src_install() {
+ insinto "/usr/$(get_libdir)/prosody/community-modules"
+ while read prosody_module; do
+ if ! [[ "${prosody_module}" = \#* ]]; then
+ if [[ -f "${prosody_module}/README.markdown" ]]; then
+ newdoc "${prosody_module}/README.markdown" "README.${prosody_module}"
+ rm "${prosody_module}/README.markdown" || die
+ fi
+
+ doins -r "${prosody_module}"
+ fi
+ done <prosody-modules.conf
+
+ save_config prosody-modules.conf
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ savedconfig_pkg_postinst
+
+ einfo "In order to use the community modules on an existing instance, you have to add"
+ einfo "'/usr/$(get_libdir)/prosody/community-modules' into 'plugin_paths'"
+ einfo "into your prosody configuration file '/etc/jabber/prosody.cfg.lua.'"
+ einfo ""
+ einfo "Example: plugin_paths = { \"/usr/$(get_libdir)/prosody/modules\","
+ einfo "\"/usr/$(get_libdir)/prosody/community-modules\" };"
+}
diff --git a/net-im/prosody/Manifest b/net-im/prosody/Manifest
index a0adccc13376..8454059a66ea 100644
--- a/net-im/prosody/Manifest
+++ b/net-im/prosody/Manifest
@@ -1 +1 @@
-DIST prosody-0.11.5.tar.gz 425122 BLAKE2B d65720a0c9d533a4be70847b690ecf037ae4b2fcbd090c81e2346d515599f3f148061103df2ffe46122a55694a3d35d53ab2b379fb5fb317e3b84a0ff5e82c29 SHA512 43a9facee8d61b69e277e7e8a9091fbfa60be71d6141195dff991f6020c8afadacce26f356b869cb2d7edd9be285e9ce1bcd822f9628cc845d91757e818a0dff
+DIST prosody-0.12.4.tar.gz 616043 BLAKE2B 6bbe779424a6de6b5d266c3f6301282e010b96c9baca79d8dff46ab91365e6c5fdaa1b52c3caaaf33dad0990fa2c298f0447d37fcc018067f6efcc23d633b4fc SHA512 e035ec9af3831c596ababbc0320f352b7253d3ee968c9937998ffc255839173c9278912a0897fa9f0a0665bc43603f8570b5e15dfd1cba4571599e86a98d8cf4
diff --git a/net-im/prosody/files/prosody-0.12.0-gentoo.patch b/net-im/prosody/files/prosody-0.12.0-gentoo.patch
new file mode 100644
index 000000000000..3b2ba75b15c8
--- /dev/null
+++ b/net-im/prosody/files/prosody-0.12.0-gentoo.patch
@@ -0,0 +1,29 @@
+--- a/prosody.cfg.lua.dist
++++ b/prosody.cfg.lua.dist
+@@ -17,6 +17,15 @@
+ -- Settings in this section apply to the whole server and are the default settings
+ -- for any virtual hosts
+
++-- Prosody will use this user and group for launching the service.
++-- Gentoo uses by default prosody:prosody (uid:gid) for all Jabber related services.
++prosody_user = "prosody"
++prosody_group = "prosody"
++
++-- Prosody will create this pid file after it has been successfully started.
++-- Please don't change that path, as it's being used by the Gentoo init scripts.
++pidfile = "/run/prosody/prosody.pid"
++
+ -- This is a (by default, empty) list of accounts that are admins
+ -- for the server. Note that you must create the accounts separately
+ -- (see https://prosody.im/doc/creating_accounts for info)
+@@ -26,7 +35,9 @@
+ -- This option allows you to specify additional locations where Prosody
+ -- will search first for modules. For additional modules you can install, see
+ -- the community module repository at https://modules.prosody.im/
+---plugin_paths = {}
++-- The default included path is for the optional net-im/prosody-modules package,
++-- which provides additional community maintained modules.
++plugin_paths = { "/usr/GENTOO_LIBDIR/prosody/modules", "/usr/GENTOO_LIBDIR/prosody/community-modules" };
+
+ -- This is the list of modules Prosody will load on startup.
+ -- Documentation for bundled modules can be found at: https://prosody.im/doc/modules
diff --git a/net-im/prosody/files/prosody-0.9.2-cfg.lua.patch b/net-im/prosody/files/prosody-0.9.2-cfg.lua.patch
deleted file mode 100644
index 15c09a24fd80..000000000000
--- a/net-im/prosody/files/prosody-0.9.2-cfg.lua.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-diff -ru prosody-0.9.2/prosody.cfg.lua.dist prosody-0.9.2-gentoo/prosody.cfg.lua.dist
---- prosody-0.9.2/prosody.cfg.lua.dist 2013-12-08 19:05:39.000000000 +0100
-+++ prosody-0.9.2-gentoo/prosody.cfg.lua.dist 2014-01-27 03:00:44.929196948 +0100
-@@ -1,5 +1,3 @@
---- Prosody Example Configuration File
----
- -- Information on configuring Prosody can be found on our
- -- website at http://prosody.im/doc/configure
- --
-@@ -7,9 +5,6 @@
- -- when you have finished by running: luac -p prosody.cfg.lua
- -- If there are any errors, it will let you know what and where
- -- they are, otherwise it will keep quiet.
----
---- The only thing left to do is rename this file to remove the .dist ending, and fill in the
---- blanks. Good luck, and happy Jabbering!
-
-
- ---------- Server-wide settings ----------
-@@ -63,7 +58,7 @@
- --"http_files"; -- Serve static files from a directory over HTTP
-
- -- Other specific functionality
-- --"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
-+ "posix"; -- POSIX functionality, sends server to background, enables syslog, etc. (Keep enabled for Gentoo.)
- --"groups"; -- Shared roster support
- --"announce"; -- Send announcement to all online users
- --"welcome"; -- Welcome users who register accounts
-@@ -72,6 +67,12 @@
- --"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
- };
-
-+-- Settings for Gentoo init script and net-im/jabber-base permissions system:
-+daemonize = true;
-+prosody_user = "jabber";
-+prosody_group = "jabber";
-+pidfile = "/var/run/jabber/prosody.pid";
-+
- -- These modules are auto-loaded, but should you want
- -- to disable them then uncomment them here:
- modules_disabled = {
-@@ -139,8 +140,8 @@
- -- Logging configuration
- -- For advanced logging see http://prosody.im/doc/logging
- log = {
-- info = "prosody.log"; -- Change 'info' to 'debug' for verbose logging
-- error = "prosody.err";
-+ info = "/var/log/jabber/prosody.log"; -- Change 'info' to 'debug' for verbose logging
-+ error = "/var/log/jabber/prosody.err";
- -- "*syslog"; -- Uncomment this for logging to syslog
- -- "*console"; -- Log to the console, useful for debugging with daemonize=false
- }
diff --git a/net-im/prosody/files/prosody.initd-r2 b/net-im/prosody/files/prosody.initd-r2
deleted file mode 100644
index a6b623dd6225..000000000000
--- a/net-im/prosody/files/prosody.initd-r2
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-description="Prosody is a server for Jabber/XMPP written in Lua."
-description_reload="Reload configuration and reopen log files."
-extra_started_commands="reload"
-pidfile="/var/run/jabber/prosody.pid"
-
-depend() {
- use dns
- need net
- provide jabber-server
-}
-
-checkconfig() {
- if [ ! -e /etc/jabber/prosody.cfg.lua ] ; then
- eerror "You need a /etc/jabber/prosody.cfg.lua file to run prosody"
- return 1
- fi
- luac -p /etc/jabber/prosody.cfg.lua
- return $?
-}
-
-start() {
- checkconfig || return 1
- checkpath -q -d -m 0770 -o jabber:jabber "$(dirname ${pidfile})"
- checkpath -q -f -m 0770 -o jabber:jabber "${pidfile}"
- checkpath -q -d -m 0750 -o jabber:jabber /var/log/jabber
- ebegin "Starting Prosody XMPP Server"
- prosodyctl start
- eend $?
-}
-
-stop() {
- ebegin "Stopping Prosody XMPP Server"
- prosodyctl stop
- eend $?
-}
-
-reload() {
- checkconfig || return 1
- ebegin "Reloading configuration of Prosody XMPP Server"
- prosodyctl reload
- eend $?
-}
diff --git a/net-im/prosody/files/prosody.initd-r6 b/net-im/prosody/files/prosody.initd-r6
new file mode 100644
index 000000000000..e4138c597b23
--- /dev/null
+++ b/net-im/prosody/files/prosody.initd-r6
@@ -0,0 +1,46 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+extra_started_commands="reload"
+name="Prosody XMPP server"
+prosody_config="/etc/prosody/prosody.cfg.lua"
+prosody_data="/var/lib/prosody"
+prosody_logs="/var/log/prosody"
+prosody_pid="/run/prosody"
+pidfile="${prosody_pid}/prosody.pid"
+
+command="/usr/bin/prosody"
+command_args="--daemonize"
+commandctl="/usr/bin/prosodyctl"
+command_group="prosody"
+command_user="prosody"
+
+checkconfig() {
+ if [ ! -f "${prosody_config}" ]; then
+ eerror "Please create ${prosody_config} before starting Prosody!"
+ return 1
+ fi
+
+ ${commandctl} check config
+ return $?
+}
+
+depend() {
+ need net
+ use dns postgresql
+}
+
+reload() {
+ ebegin "Reloading configuration"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
+
+start_pre() {
+ checkconfig || return 1
+
+ checkpath -d -m 0750 -o "${command_user}:${command_group}" -q "${prosody_data}"
+ checkpath -d -m 0750 -o "${command_user}:${command_group}" -q "${prosody_logs}"
+ checkpath -d -m 0750 -o "${command_user}:${command_group}" -q "${prosody_pid}"
+}
diff --git a/net-im/prosody/files/prosody.service b/net-im/prosody/files/prosody.service
deleted file mode 100644
index 5c5ea87bd542..000000000000
--- a/net-im/prosody/files/prosody.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=Prosody XMPP (Jabber) server
-After=network.target
-
-[Service]
-Type=forking
-PIDFile=/var/run/jabber/prosody.pid
-ExecStart=/usr/bin/prosodyctl start
-ExecReload=/usr/bin/prosodyctl reload
-ExecStop=/usr/bin/prosodyctl stop
-
-[Install]
-WantedBy=multi-user.target
diff --git a/net-im/prosody/files/prosody.service-r3 b/net-im/prosody/files/prosody.service-r3
new file mode 100644
index 000000000000..dec39e4b0b22
--- /dev/null
+++ b/net-im/prosody/files/prosody.service-r3
@@ -0,0 +1,17 @@
+[Unit]
+Description=Prosody XMPP server
+After=network.target
+
+[Service]
+Group=prosody
+PIDFile=/run/prosody/prosody.pid
+ExecStart=/usr/bin/prosody --daemonize
+ExecReload=/bin/kill -HUP $MAINPID
+User=prosody
+ExecStartPre=!/bin/mkdir -p /var/log/prosody
+ExecStartPre=!/bin/mkdir -p /var/lib/prosody
+ExecStartPre=!/bin/chown -R prosody /var/log/prosody
+ExecStartPre=!/bin/chown -R prosody /var/lib/prosody
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-im/prosody/files/prosody.tmpfilesd b/net-im/prosody/files/prosody.tmpfilesd
deleted file mode 100644
index 924ba434659c..000000000000
--- a/net-im/prosody/files/prosody.tmpfilesd
+++ /dev/null
@@ -1 +0,0 @@
-d /var/run/jabber 710 jabber jabber
diff --git a/net-im/prosody/files/prosody.tmpfilesd-r2 b/net-im/prosody/files/prosody.tmpfilesd-r2
new file mode 100644
index 000000000000..78949f3db82c
--- /dev/null
+++ b/net-im/prosody/files/prosody.tmpfilesd-r2
@@ -0,0 +1 @@
+d /run/prosody 750 prosody prosody - -
diff --git a/net-im/prosody/files/prosody_cfg-0.11.2-r1.patch b/net-im/prosody/files/prosody_cfg-0.11.2-r1.patch
deleted file mode 100644
index 94423a834ae1..000000000000
--- a/net-im/prosody/files/prosody_cfg-0.11.2-r1.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/prosody.cfg.lua.dist 2019-03-19 15:11:16.355743969 +0100
-+++ b/prosody.cfg.lua.dist 2019-03-19 15:14:42.810995725 +0100
-@@ -32,6 +32,13 @@
- -- will look for modules first. For community modules, see https://modules.prosody.im/
- --plugin_paths = {}
-
-+-- Gentoo uses the jabber:jabber uid/gid for all Jabber-related services
-+prosody_user = "jabber"
-+prosody_group = "jabber"
-+
-+-- Make sure prosodyctl checks in the right spot for the PID file
-+pidfile = "/run/jabber/prosody.pid"
-+
- -- This is the list of modules Prosody will load on startup.
- -- It looks for mod_modulename.lua in the plugins folder, so make sure that exists too.
- -- Documentation for bundled modules can be found at: https://prosody.im/doc/modules
diff --git a/net-im/prosody/metadata.xml b/net-im/prosody/metadata.xml
index 93caf7b71d75..0cde39ba3d07 100644
--- a/net-im/prosody/metadata.xml
+++ b/net-im/prosody/metadata.xml
@@ -1,12 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>klausman@gentoo.org</email>
- </maintainer>
- <use>
- <flag name="libevent">Use libevent for event handling</flag>
- <flag name="zlib">Support for compressing XMPP streams with mod_compression</flag>
- <flag name="jit">Use LuaJIT instead of vanilla Lua</flag>
- </use>
+ <maintainer type="person">
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
+ </maintainer>
+ <longdescription>
+ Prosody is a modern XMPP communication server.
+ It aims to be easy to set up and configure,
+ and efficient with system resources.
+ Additionally, for developers it aims to be easy to extend
+ and give a flexible system on which to rapidly develop
+ added functionality, or prototype new protocols.
+ </longdescription>
+ <use>
+ <flag name="libevent">Use libevent for event handling</flag>
+ </use>
</pkgmetadata>
diff --git a/net-im/prosody/prosody-0.11.5.ebuild b/net-im/prosody/prosody-0.11.5.ebuild
deleted file mode 100644
index 77ea1552347c..000000000000
--- a/net-im/prosody/prosody-0.11.5.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib systemd toolchain-funcs
-
-DESCRIPTION="Prosody is a flexible communications server for Jabber/XMPP written in Lua"
-HOMEPAGE="https://prosody.im/"
-SRC_URI="https://prosody.im/downloads/source/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm x86"
-IUSE="ipv6 jit libevent libressl mysql postgres sqlite ssl test zlib"
-RESTRICT="!test? ( test )"
-
-BASE_DEPEND="net-im/jabber-base
- dev-lua/LuaBitOp
- !jit? ( >=dev-lang/lua-5.1:0 )
- jit? ( dev-lang/luajit:2 )
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl:= )
- >=net-dns/libidn-1.1:="
-
-DEPEND="${BASE_DEPEND}
- test? ( dev-lua/busted )"
-
-RDEPEND="${BASE_DEPEND}
- >=dev-lua/luaexpat-1.3.0
- dev-lua/luafilesystem
- !ipv6? ( dev-lua/luasocket )
- ipv6? ( >=dev-lua/luasocket-3 )
- libevent? ( >=dev-lua/luaevent-0.4.3 )
- mysql? ( dev-lua/luadbi[mysql] )
- postgres? ( dev-lua/luadbi[postgres] )
- sqlite? ( dev-lua/luadbi[sqlite] )
- ssl? ( dev-lua/luasec )
- zlib? ( dev-lua/lua-zlib )"
-
-PATCHES=("${FILESDIR}/prosody_cfg-0.11.2-r1.patch")
-
-JABBER_ETC="/etc/jabber"
-JABBER_SPOOL="/var/spool/jabber"
-
-src_configure() {
- # the configure script is handcrafted (and yells at unknown options)
- # hence do not use 'econf'
- ./configure \
- --ostype=linux \
- --prefix="${EPREFIX}/usr" \
- --libdir="${EPREFIX}/usr/$(get_libdir)" \
- --sysconfdir="${EPREFIX}${JABBER_ETC}" \
- --datadir="${EPREFIX}${JABBER_SPOOL}" \
- --with-lua-include="${EPREFIX}/usr/include" \
- --with-lua-lib="${EPREFIX}/usr/$(get_libdir)/lua" \
- --runwith=lua"$(usev jit)" \
- --cflags="${CFLAGS} -Wall -fPIC" \
- --ldflags="${LDFLAGS} -shared" \
- --c-compiler="$(tc-getCC)" \
- --linker="$(tc-getCC)" || die "configure failed"
-
- rm makefile && mv GNUmakefile Makefile || die
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- systemd_dounit "${FILESDIR}/${PN}".service
- systemd_newtmpfilesd "${FILESDIR}/${PN}".tmpfilesd "${PN}".conf
- newinitd "${FILESDIR}/${PN}".initd-r2 ${PN}
- keepdir "${JABBER_SPOOL}"
-}
diff --git a/net-im/prosody/prosody-0.12.4.ebuild b/net-im/prosody/prosody-0.12.4.ebuild
new file mode 100644
index 000000000000..29ac71036832
--- /dev/null
+++ b/net-im/prosody/prosody-0.12.4.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+LUA_REQ_USE="deprecated(+)"
+
+inherit lua-single systemd tmpfiles toolchain-funcs
+
+DESCRIPTION="Prosody is a modern XMPP communication server"
+HOMEPAGE="https://prosody.im/"
+SRC_URI="https://prosody.im/downloads/source/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+IUSE="icu +idn +libevent ldap mysql postgres selinux +sqlite +ssl test +zlib"
+REQUIRED_USE="
+ ^^ ( icu idn )
+ ${LUA_REQUIRED_USE}
+"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ acct-group/prosody
+ acct-user/prosody
+ $(lua_gen_cond_dep 'dev-lua/luaexpat[${LUA_USEDEP}]')
+ $(lua_gen_cond_dep 'dev-lua/luafilesystem[${LUA_USEDEP}]')
+ dev-lua/luarocks[${LUA_SINGLE_USEDEP}]
+ $(lua_gen_cond_dep 'dev-lua/luasocket[${LUA_USEDEP}]')
+ $(lua_gen_cond_dep 'dev-lua/lua-unbound[${LUA_USEDEP}]')
+ $(lua_gen_cond_dep 'dev-lua/readline[${LUA_USEDEP}]')
+ icu? ( dev-libs/icu:= )
+ idn? ( net-dns/libidn:= )
+ ldap? ( $(lua_gen_cond_dep 'dev-lua/lualdap[${LUA_USEDEP}]') )
+ libevent? ( $(lua_gen_cond_dep 'dev-lua/luaevent[${LUA_USEDEP}]') )
+ dev-libs/openssl:0=
+ lua_single_target_lua5-1? ( $(lua_gen_cond_dep 'dev-lua/lua-bit32[lua_targets_lua5-1(-)]') )
+ mysql? ( $(lua_gen_cond_dep 'dev-lua/luadbi[mysql,${LUA_USEDEP}]') )
+ postgres? ( $(lua_gen_cond_dep 'dev-lua/luadbi[postgres,${LUA_USEDEP}]') )
+ sqlite? ( $(lua_gen_cond_dep 'dev-lua/luadbi[sqlite,${LUA_USEDEP}]') )
+ ssl? ( $(lua_gen_cond_dep 'dev-lua/luasec[${LUA_USEDEP}]') )
+ zlib? ( $(lua_gen_cond_dep 'dev-lua/lua-zlib[${LUA_USEDEP}]') )
+ ${LUA_DEPS}
+"
+
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-jabber )
+"
+
+BDEPEND="
+ virtual/pkgconfig
+ test? ( $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-0.12.0-gentoo.patch" )
+
+src_prepare() {
+ default
+
+ # Set correct plugin path for optional net-im/prosody-modules package
+ sed -e "s/GENTOO_LIBDIR/$(get_libdir)/g" -i prosody.cfg.lua.dist || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --add-cflags="${CFLAGS}"
+ --add-ldflags="${LDFLAGS}"
+ --c-compiler="$(tc-getCC)"
+ --datadir="${EPREFIX}/var/lib/prosody"
+ --idn-library="$(usex idn 'idn' 'icu')"
+ --libdir="${EPREFIX}/usr/$(get_libdir)"
+ --linker="$(tc-getCC)"
+ --lua-version="$(usex lua_single_target_luajit '5.1' $(ver_cut 1-2 $(lua_get_version)))"
+ --no-example-certs
+ --ostype="linux"
+ --prefix="${EPREFIX}/usr"
+ --runwith="${ELUA}"
+ --sysconfdir="${EPREFIX}/etc/prosody"
+ --with-lua-include="${EPREFIX}/$(lua_get_include_dir)"
+ --with-lua-lib="${EPREFIX}/$(lua_get_cmod_dir)"
+ )
+
+ # Since the configure script is handcrafted,
+ # and yells at unknown options, do not use 'econf'.
+ ./configure "${myeconfargs[@]}" || die
+
+ rm makefile || die
+ mv GNUmakefile Makefile || die
+}
+
+src_install() {
+ default
+
+ keepdir /var/lib/prosody
+
+ newinitd "${FILESDIR}"/prosody.initd-r6 prosody
+ systemd_newunit "${FILESDIR}"/prosody.service-r3 prosody.service
+
+ newtmpfiles "${FILESDIR}"/prosody.tmpfilesd-r2 prosody.conf
+}
+
+pkg_postinst() {
+ local migrate_to_prosody_user="false"
+ tmpfiles_process prosody.conf
+
+ if [[ ${REPLACING_VERSIONS} ]]; then
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 0.12.0; then
+ migrate_to_prosody_user="true"
+ break
+ fi
+ done
+ fi
+
+ # Sarting with >=0.12.0, the prosody configuration is now in
+ # /etc/prosody and no longer in /etc/jabber.
+ # See if we need to migrate the configuration. Furthermore,
+ # prosody 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_prosody_user}; then
+ local -A dirs_to_migrate=(
+ [/etc/jabber]=/etc/prosody
+ [/var/log/jabber]=/var/log/prosody
+ [/var/spool/jabber]=/var/lib/prosody
+ )
+
+ 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 prosody:prosody "${eroot_dst_dir}" || die
+ fi
+ done
+
+ # Update configuration file to match new pathes and permissions
+ local mysedargs=(
+ -e "'s#/etc/jabber#/etc/prosody#g'"
+ -e "'s#/run/jabber#/run/prosody#g'"
+ -e "'s#/var/log/jabber#/var/log/prosody#g'"
+ -e "'s/prosody_user.*/prosody_user = \"prosody\";/g'"
+ -e "'s/prosody_group.*/prosody_group = \"prosody\";/g'"
+ -i /etc/prosody/prosody.cfg.lua
+ )
+
+ eval sed "${mysedargs[@]}" || die
+
+ ewarn "Newer versions of the prosody (Gentoo) package use ${EROOT}/etc/prosody"
+ ewarn "(just as upstream) and *not* anymore ${EROOT}/etc/jabber."
+ ewarn "The files from ${EROOT}/etc/jabber where copied to ${EROOT}/etc/prosody."
+ ewarn "Also prosody's spool directory became ${EROOT}/var/lib/prosody (was ${EROOT}/var/spool/jabbber)."
+ ewarn "Please check your configuration."
+ fi
+}
diff --git a/net-im/psi/Manifest b/net-im/psi/Manifest
index f46215ca3707..b37108683037 100644
--- a/net-im/psi/Manifest
+++ b/net-im/psi/Manifest
@@ -1,2 +1,2 @@
-DIST psi-1.4.tar.xz 2119840 BLAKE2B 28298f526f23a4bcbb5452ca593163efd50c990a6bc9a2ed54d2136e0b34cf34ad2f1d4a81bd529a013b8aa351e8531f4bf9ea7faf3958085869dd75817828f8 SHA512 9bb8da58809270e5387e024f5ea031e28441e66cde53cde219beebe7b46bfa5c41d0a86110d1936d0ac2e15483ffb947f8998cbeeb415f72553cb78b67c57ed1
-DIST psi-l10n-1.4.tar.gz 3037957 BLAKE2B 2f61c60ee5bc323323ae98ab2eee7d2afec9462850f038fe72816810ef572e4a71a3647f83e09bf948485f56dfbc8dd3bea0a24f6258b13f08867319ca65deea SHA512 ef87a12dd992adcfe5fdc4e88c1d33d6fcd77b2554963e1563cee7ba650d096c3b074795a1a9e650945b1dc46a4936f9520ecd864559b1531cb31763399c258d
+DIST psi-1.5.tar.xz 2125104 BLAKE2B ee4114749b5958c61dccc45c2562d868f30a2f4765229c904c32d54d5730e2eaa9ab03e966fa5b83aba7e31d37fafb2b194c74a72f2404f3b51815bc525c5080 SHA512 c2e17dad346b5f7e8c97dc8959d99eaf4c30c1ba11c2d04b562af7b30482d5dbdc3a86508c4c29881ea0fc72db5a9d5fb4017768732cafee6a1d3025a39d8520
+DIST psi-l10n-1.5.tar.gz 3037979 BLAKE2B a1baef1b3c86c1b0a528d4395bd6aabf99e1ec4c077d5d0358d4fd9566fcc2d929f46688c3bb2f56ad1de840fa1699f33c211fa4c7597b66ba0842cccbfbc19c SHA512 d5ed8244fbaa9fdd9a40a14ef3660085c8c9c5a18352900fa8d947fad01aea5894c23d83dc16e8ebf9fe007905ecbb8eca7dfaa4e1cf0fa160af341967886cae
diff --git a/net-im/psi/metadata.xml b/net-im/psi/metadata.xml
index d1fdaf8e1f54..305df6d7d537 100644
--- a/net-im/psi/metadata.xml
+++ b/net-im/psi/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>rion4ik@gmail.com</email>
<name>Sergey Ilinykh</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
@@ -18,9 +18,7 @@
<flag name="extras">Enable Psi+ patchset</flag>
<flag name="hunspell">Enable spellchecking using <pkg>app-text/hunspell</pkg></flag>
<flag name="iconsets">Install additional iconsets, some of them have no clear licensing</flag>
- <flag name="keyring">Enable storing password in system keyring manager</flag>
<flag name="webengine">Enable themed, html-based chatlogs using <pkg>dev-qt/qtwebengine</pkg></flag>
- <flag name="webkit">Enable themed, html-based chatlogs using <pkg>dev-qt/qtwebkit</pkg></flag>
<flag name="whiteboarding">Enable experimental interactive SVG drawing</flag>
<flag name="xscreensaver">Use X screensaver protocol extension to monitor idle/active status based on mouse/keyboard events</flag>
</use>
diff --git a/net-im/psi/psi-1.4.ebuild b/net-im/psi/psi-1.5-r2.ebuild
index 9db7e130e003..6df2396c6e82 100644
--- a/net-im/psi/psi-1.4.ebuild
+++ b/net-im/psi/psi-1.5-r2.ebuild
@@ -1,30 +1,34 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
PLOCALES="be bg ca cs de en eo es et fa fi fr he hu it ja kk mk nl pl pt pt_BR ru sk sl sr@latin sv sw uk ur_PK vi zh_CN zh_TW"
PLOCALE_BACKUP="en"
-inherit l10n qmake-utils xdg
+inherit plocale qmake-utils xdg
DESCRIPTION="Qt XMPP client"
HOMEPAGE="https://psi-im.org"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.xz
https://github.com/psi-im/psi-l10n/archive/${PV}.tar.gz -> psi-l10n-${PV}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="aspell crypt dbus debug doc enchant +hunspell webengine webkit whiteboarding xscreensaver"
+KEYWORDS="amd64 x86"
+IUSE="aspell crypt dbus debug doc enchant +hunspell webengine whiteboarding xscreensaver"
REQUIRED_USE="
?? ( aspell enchant hunspell )
- webengine? ( !webkit )
"
-RDEPEND="
- app-crypt/qca:2[ssl]
+BDEPEND="
+ dev-qt/linguist-tools:5
+ virtual/pkgconfig
+ doc? ( app-text/doxygen[dot] )
+"
+DEPEND="
+ app-crypt/qca:2[qt5(+),ssl]
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
dev-qt/qtgui:5
@@ -39,20 +43,17 @@ RDEPEND="
x11-libs/libxcb
aspell? ( app-text/aspell )
dbus? ( dev-qt/qtdbus:5 )
- enchant? ( >=app-text/enchant-1.3.0:0 )
+ enchant? ( app-text/enchant:2 )
hunspell? ( app-text/hunspell:= )
webengine? (
dev-qt/qtwebchannel:5
dev-qt/qtwebengine:5[widgets]
)
- webkit? ( dev-qt/qtwebkit:5 )
whiteboarding? ( dev-qt/qtsvg:5 )
xscreensaver? ( x11-libs/libXScrnSaver )
"
-DEPEND="${RDEPEND}
- dev-qt/linguist-tools:5
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
+RDEPEND="${DEPEND}
+ dev-qt/qtimageformats
"
RESTRICT="test"
@@ -69,11 +70,11 @@ src_configure() {
$(use_enable hunspell)
$(use_enable xscreensaver xss)
$(use_enable whiteboarding)
+ $(use_enable webengine webkit)
+ $(use_with webengine webkit qtwebengine)
)
use debug && CONF+=("--debug")
- use webengine && CONF+=("--enable-webkit" "--with-webkit=qtwebengine")
- use webkit && CONF+=("--enable-webkit" "--with-webkit=qtwebkit")
# This may generate warnings if passed option already matches with default.
# Just ignore them. It's how qconf-based configure works and will be fixed in
@@ -109,7 +110,7 @@ src_install() {
"${mylrelease}" "translations/${PN}_${1}.ts" || die "lrelease ${1} failed"
doins "translations/${PN}_${1}.qm"
}
- l10n_for_each_locale_do install_locale
+ plocale_for_each_locale install_locale
}
pkg_postinst() {
diff --git a/net-im/psi/psi-9999.ebuild b/net-im/psi/psi-9999.ebuild
index cd78ecbc4995..6feefa2675ff 100644
--- a/net-im/psi/psi-9999.ebuild
+++ b/net-im/psi/psi-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
PLOCALES="be bg ca cs de el en eo es et fa fi fr he hu it ja kk mk nl pl pt_BR pt ru sk sl sr@latin sv sw uk ur_PK vi zh_CN zh_TW"
PLOCALE_BACKUP="en"
-inherit git-r3 cmake l10n qmake-utils xdg
+inherit git-r3 cmake plocale qmake-utils xdg
DESCRIPTION="Qt XMPP client"
HOMEPAGE="https://psi-im.org"
@@ -17,10 +17,10 @@ EGIT_REPO_URI="${PSI_URI}/${PN}.git"
PSI_LANGS_URI="${PSI_URI}/psi-l10n.git"
PSI_PLUS_LANGS_URI="${PSI_PLUS_URI}/psi-plus-l10n.git"
EGIT_MIN_CLONE_TYPE="single"
-LICENSE="GPL-2"
+LICENSE="GPL-2 iconsets? ( all-rights-reserved )"
SLOT="0"
KEYWORDS=""
-IUSE="aspell crypt dbus debug doc enchant extras +hunspell iconsets keyring webengine webkit xscreensaver"
+IUSE="aspell crypt dbus debug doc enchant extras +hunspell iconsets keyring webengine xscreensaver"
REQUIRED_USE="
?? ( aspell enchant hunspell )
@@ -30,11 +30,11 @@ REQUIRED_USE="
BDEPEND="
dev-qt/linguist-tools:5
virtual/pkgconfig
- doc? ( app-doc/doxygen )
- extras? ( >=sys-devel/qconf-2.4 )
+ doc? ( app-text/doxygen[dot] )
+ extras? ( >=dev-build/qconf-2.4 )
"
DEPEND="
- app-crypt/qca:2[ssl]
+ app-crypt/qca:2[qt5(+),ssl]
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
dev-qt/qtgui:5
@@ -47,6 +47,7 @@ DEPEND="
dev-qt/qtxml:5
net-dns/libidn:0
net-libs/http-parser:=
+ net-libs/usrsctp
sys-libs/zlib[minizip]
x11-libs/libX11
x11-libs/libxcb
@@ -54,13 +55,12 @@ DEPEND="
dbus? ( dev-qt/qtdbus:5 )
enchant? ( app-text/enchant:2 )
hunspell? ( app-text/hunspell:= )
- keyring? ( dev-libs/qtkeychain:= )
+ keyring? ( dev-libs/qtkeychain:=[qt5(+)] )
webengine? (
dev-qt/qtwebchannel:5
dev-qt/qtwebengine:5[widgets]
net-libs/http-parser
)
- webkit? ( dev-qt/qtwebkit:5 )
"
RDEPEND="${DEPEND}
dev-qt/qtimageformats
@@ -113,10 +113,6 @@ src_prepare() {
}
src_configure() {
- local chattype=basic
- use webengine && chattype=webengine
- use webkit && chattype=webkit
-
local mycmakeargs=(
-DPRODUCTION=OFF
-DUSE_ASPELL=$(usex aspell)
@@ -125,7 +121,7 @@ src_configure() {
-DUSE_DBUS=$(usex dbus)
-DINSTALL_PLUGINS_SDK=1
-DUSE_KEYCHAIN=$(usex keyring)
- -DCHAT_TYPE=$chattype
+ -DCHAT_TYPE=$(usex webengine webengine basic)
-DUSE_XSS=$(usex xscreensaver)
-DPSI_PLUS=$(usex extras)
)
@@ -158,7 +154,7 @@ src_install() {
"${mylrelease}" "translations/${PN}_${1}.ts" || die "lrelease ${1} failed"
doins "translations/${PN}_${1}.qm"
}
- l10n_for_each_locale_do install_locale
+ plocale_for_each_locale install_locale
}
pkg_postinst() {
diff --git a/net-im/psimedia/metadata.xml b/net-im/psimedia/metadata.xml
index 1cbe5d29cb70..fc9e6ec39274 100644
--- a/net-im/psimedia/metadata.xml
+++ b/net-im/psimedia/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>rion4ik@gmail.com</email>
<name>Sergey Ilinykh</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/net-im/psimedia/psimedia-9999.ebuild b/net-im/psimedia/psimedia-9999.ebuild
index 1dc21a73f501..7b5e885b9d42 100644
--- a/net-im/psimedia/psimedia-9999.ebuild
+++ b/net-im/psimedia/psimedia-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,7 +15,7 @@ SLOT="0"
KEYWORDS=""
IUSE="extras"
-BDEPEND="sys-devel/qconf"
+BDEPEND="dev-build/qconf"
DEPEND="
dev-libs/glib
dev-qt/qtcore:5
diff --git a/net-im/purple-events/metadata.xml b/net-im/purple-events/metadata.xml
index 98db88e3ccce..6390d982e4e5 100644
--- a/net-im/purple-events/metadata.xml
+++ b/net-im/purple-events/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<upstream>
diff --git a/net-im/purple-events/purple-events-0.99.1.ebuild b/net-im/purple-events/purple-events-0.99.1.ebuild
index dfc0c6bc7c50..b415329f383f 100644
--- a/net-im/purple-events/purple-events-0.99.1.ebuild
+++ b/net-im/purple-events/purple-events-0.99.1.ebuild
@@ -1,30 +1,34 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
-inherit autotools eutils ltprune
+inherit autotools
DESCRIPTION="Allows a fine-grained control over libpurple events"
-HOMEPAGE="http://purple-events.sardemff7.net/"
+HOMEPAGE="https://github.com/sardemff7/purple-events"
SRC_URI="https://github.com/sardemff7/purple-events/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
RDEPEND="net-im/pidgin"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
dev-util/intltool
sys-devel/gettext
- virtual/pkgconfig"
+ virtual/pkgconfig
+"
src_prepare() {
+ default
+
eautoreconf
}
src_install() {
default
- prune_libtool_files
+
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/net-im/qtox/Manifest b/net-im/qtox/Manifest
index 3c3bb122ec66..26687b415f4c 100644
--- a/net-im/qtox/Manifest
+++ b/net-im/qtox/Manifest
@@ -1 +1 @@
-DIST qTox-1.16.3.tar.gz 4256757 BLAKE2B 70103e2d912da86dab63424586c642a73614b4a408a53634b146d1e401d5b328a2b8c81c472a94e0e8804d774f693c1250e7263b263e80abef5e111372f29232 SHA512 a857266ffcf32b1963e3a4428501299ce19f3c087087583115dc01e41934fc31d52ea54d781fa93ec7e21f6e3303b4e22383ecaaa7f1f1dbf32d740db73aca4c
+DIST qTox-1.17.6.tar.gz 4777590 BLAKE2B d67ea8c1d5c478a791fd8594866130874c036f22ec9fd991e0f6c81fb7919824bba8e13675b0ffaf613188215a4fce6d07545476ab5565922b3989519aedd91f SHA512 840dfbca2cb1a3db4b5ab27cb408e183b152fcd87c0cb915ee58245e7c311b8682605e73497248072a5a48b239058b101a85235ed169d19606dc7bf61865f208
diff --git a/net-im/qtox/files/qtox-1.16.3-qt-5.13.patch b/net-im/qtox/files/qtox-1.16.3-qt-5.13.patch
deleted file mode 100644
index 16805843253a..000000000000
--- a/net-im/qtox/files/qtox-1.16.3-qt-5.13.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/CMakeLists.txt 2020-01-15 22:17:59.921502029 +0100
-+++ b/CMakeLists.txt 2020-01-15 22:19:55.834885195 +0100
-@@ -48,7 +48,6 @@
- set(RCC_OPTIONS -compress 9 -threshold 0)
-
- # Use C++11.
--set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
-
-@@ -56,7 +55,6 @@
- set(POSITION_INDEPENDENT_CODE True)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wstrict-overflow")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wstrict-aliasing")
--set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
-
- if (NOT WIN32)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector-all")
diff --git a/net-im/qtox/metadata.xml b/net-im/qtox/metadata.xml
index aa2232cb4665..fe84ae06f1e7 100644
--- a/net-im/qtox/metadata.xml
+++ b/net-im/qtox/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>chiitoo@gentoo.org</email>
+ <name>Jimi Huotari</name>
+ </maintainer>
<use>
- <flag name="notification">Adds support for GTK Status Notifier tray backends</flag>
- <flag name="X">Adds support for X11</flag>
+ <flag name="spellcheck">Enable spell checking support</flag>
+ <flag name="X">Enable auto-away support</flag>
</use>
<upstream>
<remote-id type="github">qTox/qTox</remote-id>
diff --git a/net-im/qtox/qtox-1.16.3-r1.ebuild b/net-im/qtox/qtox-1.16.3-r1.ebuild
deleted file mode 100644
index d29e70e3f7b1..000000000000
--- a/net-im/qtox/qtox-1.16.3-r1.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_P="qTox-${PV}"
-inherit cmake xdg
-
-DESCRIPTION="Most feature-rich GUI for net-libs/tox using Qt5"
-HOMEPAGE="https://github.com/qTox/qTox"
-SRC_URI="https://github.com/qTox/qTox/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="notification test X"
-
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-BDEPEND="
- dev-qt/linguist-tools:5
- virtual/pkgconfig
-"
-RDEPEND="
- dev-db/sqlcipher
- dev-libs/libsodium:=
- dev-qt/qtconcurrent:5
- dev-qt/qtcore:5
- || (
- dev-qt/qtgui:5[gif,jpeg,png,X(-)]
- dev-qt/qtgui:5[gif,jpeg,png,xcb(-)]
- )
- dev-qt/qtnetwork:5
- dev-qt/qtopengl:5
- dev-qt/qtsql:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-gfx/qrencode:=
- media-libs/libexif:=
- media-libs/openal
- >=media-video/ffmpeg-2.6.3:=[webp,v4l]
- net-libs/tox:0/0.2[av]
- notification? ( x11-libs/gtk+:2 )
- X? ( x11-libs/libX11
- x11-libs/libXScrnSaver )
-"
-DEPEND="${RDEPEND}
- test? ( dev-qt/qttest:5 )
-"
-
-PATCHES=( "${FILESDIR}/${P}-qt-5.13.patch" ) # bug #699152
-
-src_prepare() {
- cmake_src_prepare
-
- # bug 628574
- if ! use test; then
- sed -i CMakeLists.txt -e "/include(Testing)/d" || die
- sed -i cmake/Dependencies.cmake -e "/find_package(Qt5Test/d" || die
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DENABLE_STATUSNOTIFIER=$(usex notification)
- -DENABLE_GTK_SYSTRAY=$(usex notification)
- -DPLATFORM_EXTENSIONS=$(usex X)
- -DUSE_FILTERAUDIO=OFF
- -DGIT_DESCRIBE="${PV}"
- )
-
- cmake_src_configure
-}
diff --git a/net-im/qtox/qtox-1.17.6-r2.ebuild b/net-im/qtox/qtox-1.17.6-r2.ebuild
new file mode 100644
index 000000000000..ca93183efb05
--- /dev/null
+++ b/net-im/qtox/qtox-1.17.6-r2.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake xdg
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/qTox/qTox.git"
+else
+ MY_P="qTox-${PV}"
+ SRC_URI="https://github.com/qTox/qTox/releases/download/v${PV}/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+ KEYWORDS="amd64 ~x86"
+ S="${WORKDIR}/qTox"
+fi
+
+DESCRIPTION="Instant messaging client using the encrypted p2p Tox protocol"
+HOMEPAGE="https://qtox.github.io/"
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="+spellcheck test X"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ dev-qt/linguist-tools:5
+ virtual/pkgconfig
+"
+RDEPEND="
+ dev-db/sqlcipher
+ dev-libs/libsodium:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5[gif(+),jpeg,png,X(-)]
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-gfx/qrencode:=
+ media-libs/libexif
+ media-libs/openal
+ media-video/ffmpeg:=[webp,v4l]
+ >=net-libs/tox-0.2.13:=[av]
+ spellcheck? ( kde-frameworks/sonnet:5 )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXScrnSaver
+ )
+"
+DEPEND="${RDEPEND}
+ test? ( dev-qt/qttest:5 )
+ X? ( x11-base/xorg-proto )
+"
+
+DOCS=( CHANGELOG.md README.md doc/user_manual_en.md )
+
+src_prepare() {
+ cmake_src_prepare
+
+ # bug 628574
+ if ! use test; then
+ sed -i CMakeLists.txt -e "/include(Testing)/d" || die
+ sed -i cmake/Dependencies.cmake -e "/find_package(Qt5Test/d" || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DPLATFORM_EXTENSIONS=$(usex X)
+ -DUPDATE_CHECK=OFF
+ -DUSE_CCACHE=OFF
+ -DSPELL_CHECK=$(usex spellcheck)
+ -DSVGZ_ICON=ON
+ -DASAN=OFF
+ -DDESKTOP_NOTIFICATIONS=OFF
+ -DSTRICT_OPTIONS=OFF
+ )
+
+ [[ ${PV} != 9999 ]] && mycmakeargs+=( -DGIT_DESCRIBE=${PV} )
+
+ cmake_src_configure
+}
+
+src_test() {
+ # The excluded tests require network access.
+ cmake_src_test -E "test_(bsu|core)"
+}
diff --git a/net-im/qtox/qtox-9999.ebuild b/net-im/qtox/qtox-9999.ebuild
index 8e6526263d3a..efe18c5045f9 100644
--- a/net-im/qtox/qtox-9999.ebuild
+++ b/net-im/qtox/qtox-9999.ebuild
@@ -1,18 +1,26 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit cmake git-r3 xdg
+inherit cmake xdg
-DESCRIPTION="Most feature-rich GUI for net-libs/tox using Qt5"
-HOMEPAGE="https://github.com/qTox/qTox"
-EGIT_REPO_URI="https://github.com/qTox/qTox.git"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/qTox/qTox.git"
+else
+ MY_P="qTox-${PV}"
+ SRC_URI="https://github.com/qTox/qTox/releases/download/v${PV}/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/qTox"
+fi
+
+DESCRIPTION="Instant messaging client using the encrypted p2p Tox protocol"
+HOMEPAGE="https://qtox.github.io/"
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS=""
-IUSE="notification test X"
+IUSE="+spellcheck test X"
RESTRICT="!test? ( test )"
@@ -25,29 +33,32 @@ RDEPEND="
dev-libs/libsodium:=
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
- || (
- dev-qt/qtgui:5[gif,jpeg,png,X(-)]
- dev-qt/qtgui:5[gif,jpeg,png,xcb(-)]
- )
+ dev-qt/qtgui:5[gif(+),jpeg,png,X(-)]
dev-qt/qtnetwork:5
dev-qt/qtopengl:5
- dev-qt/qtsql:5
dev-qt/qtsvg:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
media-gfx/qrencode:=
- media-libs/libexif:=
+ media-libs/libexif
media-libs/openal
- >=media-video/ffmpeg-2.6.3:=[webp,v4l]
- net-libs/tox:0/0.2[av]
- notification? ( x11-libs/gtk+:2 )
- X? ( x11-libs/libX11
- x11-libs/libXScrnSaver )
+ media-video/ffmpeg:=[webp,v4l]
+ >=net-libs/tox-0.2.13:=[av]
+ >=net-libs/toxext-0.0.3
+ >=net-libs/tox_extension_messages-0.0.3
+ spellcheck? ( kde-frameworks/sonnet:5 )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXScrnSaver
+ )
"
DEPEND="${RDEPEND}
test? ( dev-qt/qttest:5 )
+ X? ( x11-base/xorg-proto )
"
+DOCS=( CHANGELOG.md README.md doc/user_manual_en.md )
+
src_prepare() {
cmake_src_prepare
@@ -60,11 +71,22 @@ src_prepare() {
src_configure() {
local mycmakeargs=(
- -DENABLE_STATUSNOTIFIER=$(usex notification)
- -DENABLE_GTK_SYSTRAY=$(usex notification)
-DPLATFORM_EXTENSIONS=$(usex X)
- -DUSE_FILTERAUDIO=OFF
+ -DUPDATE_CHECK=OFF
+ -DUSE_CCACHE=OFF
+ -DSPELL_CHECK=$(usex spellcheck)
+ -DSVGZ_ICON=ON
+ -DASAN=OFF
+ -DDESKTOP_NOTIFICATIONS=OFF
+ -DSTRICT_OPTIONS=OFF
)
+ [[ ${PV} != 9999 ]] && mycmakeargs+=( -DGIT_DESCRIBE=${PV} )
+
cmake_src_configure
}
+
+src_test() {
+ # The excluded tests require network access.
+ cmake_src_test -E "test_(bsu|core)"
+}
diff --git a/net-im/ricochet/Manifest b/net-im/ricochet/Manifest
deleted file mode 100644
index 5b3657813636..000000000000
--- a/net-im/ricochet/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ricochet-1.1.4.tar.gz 1292671 BLAKE2B 15a71496b01992060fbdbedb0c73365aa250d9e6c4b5bb6223cbcd727a1cf062b1b9cd094d17ae33471e6095a071b1ea6d553a1bb2168974d45486995e204e9b SHA512 9f20fe8e34ea1d8d5b252eee1e164f0a97bf5b3818e864270ea79c0f018b229ec04b1b27acf44415bb646d48b9d1a0ada455a4f77fafdb6e4d21e62292b778a1
diff --git a/net-im/ricochet/metadata.xml b/net-im/ricochet/metadata.xml
deleted file mode 100644
index 6bf484adc0d0..000000000000
--- a/net-im/ricochet/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lucianposton@pm.me</email>
- <name>Lucian Poston</name>
- </maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
-</pkgmetadata>
diff --git a/net-im/ricochet/ricochet-1.1.4.ebuild b/net-im/ricochet/ricochet-1.1.4.ebuild
deleted file mode 100644
index b26be1ac4f28..000000000000
--- a/net-im/ricochet/ricochet-1.1.4.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit gnome2-utils qmake-utils
-
-if [[ ${PV} == "9999" ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/ricochet-im/ricochet"
-else
- SRC_URI="https://github.com/ricochet-im/ricochet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Privacy-focused instant messaging through Tor hidden services"
-HOMEPAGE="https://ricochet.im"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="debug hardened"
-
-RDEPEND="
- dev-libs/openssl:0=
- dev-libs/protobuf:0=
- dev-qt/qtcore:5
- dev-qt/qtdeclarative:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5
- dev-qt/qtquickcontrols:5
- dev-qt/qtwidgets:5
- net-vpn/tor"
-DEPEND="${RDEPEND}
- dev-qt/linguist-tools:5
- virtual/pkgconfig"
-
-src_configure() {
- local qmakeargs=( 'DEFINES+=RICOCHET_NO_PORTABLE' )
- qmakeargs+=( $(usex debug 'CONFIG+=debug' 'CONFIG+=release') )
- qmakeargs+=( $(usex hardened 'CONFIG+=hardened' 'CONFIG+=no-hardened') )
-
- eqmake5 "${qmakeargs[@]}"
-}
-
-src_install() {
- emake INSTALL_ROOT="${D}" install
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
-}
diff --git a/net-im/ricochet/ricochet-9999.ebuild b/net-im/ricochet/ricochet-9999.ebuild
deleted file mode 100644
index b770332effdf..000000000000
--- a/net-im/ricochet/ricochet-9999.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit gnome2-utils qmake-utils
-
-if [[ ${PV} == "9999" ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/ricochet-im/ricochet"
-else
- SRC_URI="https://github.com/ricochet-im/ricochet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Privacy-focused instant messaging through Tor hidden services"
-HOMEPAGE="https://ricochet.im"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="debug hardened"
-
-RDEPEND="
- dev-libs/openssl:0=
- dev-libs/protobuf:0=
- dev-qt/qtcore:5
- dev-qt/qtdeclarative:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5
- dev-qt/qtquickcontrols:5
- dev-qt/qtwidgets:5
- net-vpn/tor"
-DEPEND="${RDEPEND}
- dev-qt/linguist-tools:5
- virtual/pkgconfig"
-
-src_prepare() {
- eapply_user
-
- # workaround bug https://github.com/ricochet-im/ricochet/issues/582
- cp contrib/usr.bin.ricochet-apparmor contrib/usr.bin.ricochet
-}
-
-src_configure() {
- local qmakeargs=( 'DEFINES+=RICOCHET_NO_PORTABLE' )
- qmakeargs+=( 'DEFINES+=APPARMOR' )
- qmakeargs+=( $(usex debug 'CONFIG+=debug' 'CONFIG+=release') )
- qmakeargs+=( $(usex hardened 'CONFIG+=hardened' 'CONFIG+=no-hardened') )
-
- eqmake5 "${qmakeargs[@]}"
-}
-
-src_install() {
- emake INSTALL_ROOT="${D}" install
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
-}
diff --git a/net-im/rocketchat-desktop-bin/Manifest b/net-im/rocketchat-desktop-bin/Manifest
new file mode 100644
index 000000000000..4ffcf7efd980
--- /dev/null
+++ b/net-im/rocketchat-desktop-bin/Manifest
@@ -0,0 +1,2 @@
+DIST rocketchat-3.8.16-linux-x86_64.rpm 68712989 BLAKE2B b572047c535b6bcbca9e2a7b37060674aca9a4b356955e8ddf2b3e396b9f60e169d65fe5ffae292e43962b2045eb27c440f497fe950c6d66764b903e7e1700e1 SHA512 3a891396c3f92b5a47f2436047a6724089072bc3f4bd8a56830dfcb3347550dd71e7a2c3ce7c56b5c2c3de99384cdd470ea1005c705649a40a642404dc9e689f
+DIST rocketchat-3.9.10-linux-x86_64.rpm 73538525 BLAKE2B be674b902c9c75481c51b50d3de3922a296adbf44eade04a4e1b01988254d4635aa2915f7566b59535fb0026aa41bf8fee121f5748b29ccc44c89b271df3d484 SHA512 75df8faef6b775eaa0e405319ae3d9f69244a93c38b1cc4ccd87be21c7f66f1f03246b0fe1de09c9eeeb70e6898609e6906c64914e57d2a24b7ada908f2737d2
diff --git a/net-im/rocketchat-desktop-bin/metadata.xml b/net-im/rocketchat-desktop-bin/metadata.xml
new file mode 100644
index 000000000000..42dd05249f7c
--- /dev/null
+++ b/net-im/rocketchat-desktop-bin/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">RocketChat/Rocket.Chat.Electron</remote-id>
+ <bugs-to>https://github.com/RocketChat/Rocket.Chat.Electron/issues</bugs-to>
+ </upstream>
+ <!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.8.16.ebuild b/net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.8.16.ebuild
new file mode 100644
index 000000000000..75bd8b080cc3
--- /dev/null
+++ b/net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.8.16.ebuild
@@ -0,0 +1,105 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_LANGS="
+ af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he
+ hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
+ sv sw ta te th tr uk ur vi zh-CN zh-TW
+"
+
+inherit chromium-2 desktop rpm xdg
+
+DESCRIPTION="The Ultimate Open Source Web Chat Platform"
+HOMEPAGE="https://rocket.chat"
+SRC_URI="https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${PV}/rocketchat-${PV}-linux-x86_64.rpm"
+S="${WORKDIR}"
+
+KEYWORDS="-* ~amd64"
+# Electron bundles a bunch of things
+LICENSE="
+ MIT BSD BSD-2 BSD-4 AFL-2.1 Apache-2.0 Ms-PL GPL-2 LGPL-2.1 APSL-2
+ unRAR OFL CC-BY-SA-3.0 MPL-2.0 android public-domain all-rights-reserved
+"
+SLOT="0"
+RESTRICT="bindist mirror"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/libayatana-appindicator
+ dev-libs/nspr
+ dev-libs/nss
+ media-fonts/noto-emoji
+ media-libs/alsa-lib
+ net-print/cups
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/libnotify
+ x11-libs/libxcb
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libxkbcommon
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXtst
+ x11-libs/libXScrnSaver
+ x11-libs/pango
+"
+
+QA_PREBUILT="opt/Rocket.Chat/*"
+
+pkg_pretend() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_prepare() {
+ default
+ # cleanup languages
+ pushd "opt/Rocket.Chat/locales" || die
+ chromium_remove_language_paks
+ popd || die
+}
+
+src_configure() {
+ chromium_suid_sandbox_check_kernel_config
+ default
+}
+
+src_install() {
+ for size in {16,32,48,64,128,256,512,1024}; do
+ doicon -s ${size} "usr/share/icons/hicolor/${size}x${size}/apps/rocketchat-desktop.png"
+ done
+
+ domenu usr/share/applications/rocketchat-desktop.desktop
+
+ local DESTDIR="/opt/Rocket.Chat"
+
+ # https://github.com/RocketChat/Rocket.Chat.Electron/issues/2536
+ dosym ../../usr/lib64/libayatana-appindicator3.so "${DESTDIR}"/libappindicator3.so
+
+ pushd "opt/Rocket.Chat" || die
+
+ exeinto "${DESTDIR}"
+ doexe chrome-sandbox rocketchat-desktop *.so*
+
+ insinto "${DESTDIR}"
+ doins *.pak *.bin *.json *.dat
+ insopts -m0755
+ doins -r locales resources
+
+ # Chrome-sandbox requires the setuid bit to be specifically set.
+ # see https://github.com/electron/electron/issues/17972
+ fperms 4755 "${DESTDIR}"/chrome-sandbox
+
+ dosym "${DESTDIR}"/rocketchat-desktop /opt/bin/rocketchat-desktop
+ popd || die
+}
diff --git a/net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.9.10.ebuild b/net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.9.10.ebuild
new file mode 100644
index 000000000000..75bd8b080cc3
--- /dev/null
+++ b/net-im/rocketchat-desktop-bin/rocketchat-desktop-bin-3.9.10.ebuild
@@ -0,0 +1,105 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_LANGS="
+ af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he
+ hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
+ sv sw ta te th tr uk ur vi zh-CN zh-TW
+"
+
+inherit chromium-2 desktop rpm xdg
+
+DESCRIPTION="The Ultimate Open Source Web Chat Platform"
+HOMEPAGE="https://rocket.chat"
+SRC_URI="https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${PV}/rocketchat-${PV}-linux-x86_64.rpm"
+S="${WORKDIR}"
+
+KEYWORDS="-* ~amd64"
+# Electron bundles a bunch of things
+LICENSE="
+ MIT BSD BSD-2 BSD-4 AFL-2.1 Apache-2.0 Ms-PL GPL-2 LGPL-2.1 APSL-2
+ unRAR OFL CC-BY-SA-3.0 MPL-2.0 android public-domain all-rights-reserved
+"
+SLOT="0"
+RESTRICT="bindist mirror"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/libayatana-appindicator
+ dev-libs/nspr
+ dev-libs/nss
+ media-fonts/noto-emoji
+ media-libs/alsa-lib
+ net-print/cups
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/libnotify
+ x11-libs/libxcb
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libxkbcommon
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXtst
+ x11-libs/libXScrnSaver
+ x11-libs/pango
+"
+
+QA_PREBUILT="opt/Rocket.Chat/*"
+
+pkg_pretend() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_prepare() {
+ default
+ # cleanup languages
+ pushd "opt/Rocket.Chat/locales" || die
+ chromium_remove_language_paks
+ popd || die
+}
+
+src_configure() {
+ chromium_suid_sandbox_check_kernel_config
+ default
+}
+
+src_install() {
+ for size in {16,32,48,64,128,256,512,1024}; do
+ doicon -s ${size} "usr/share/icons/hicolor/${size}x${size}/apps/rocketchat-desktop.png"
+ done
+
+ domenu usr/share/applications/rocketchat-desktop.desktop
+
+ local DESTDIR="/opt/Rocket.Chat"
+
+ # https://github.com/RocketChat/Rocket.Chat.Electron/issues/2536
+ dosym ../../usr/lib64/libayatana-appindicator3.so "${DESTDIR}"/libappindicator3.so
+
+ pushd "opt/Rocket.Chat" || die
+
+ exeinto "${DESTDIR}"
+ doexe chrome-sandbox rocketchat-desktop *.so*
+
+ insinto "${DESTDIR}"
+ doins *.pak *.bin *.json *.dat
+ insopts -m0755
+ doins -r locales resources
+
+ # Chrome-sandbox requires the setuid bit to be specifically set.
+ # see https://github.com/electron/electron/issues/17972
+ fperms 4755 "${DESTDIR}"/chrome-sandbox
+
+ dosym "${DESTDIR}"/rocketchat-desktop /opt/bin/rocketchat-desktop
+ popd || die
+}
diff --git a/net-im/sendxmpp-amm/Manifest b/net-im/sendxmpp-amm/Manifest
new file mode 100644
index 000000000000..100ecb6e86ea
--- /dev/null
+++ b/net-im/sendxmpp-amm/Manifest
@@ -0,0 +1 @@
+DIST sendxmpp-amm-1.1.1.tar.gz 14012 BLAKE2B 769f888ad5522a5566f4b6fa4478ebe9321850eb3c21c9677dd96b36244a62dd7bdcc70c7093f5cd27721c14cd056c58cb740e6b5f2469afb32130dabc34ca3f SHA512 64b813647e50ec1cb1c6d123ce93ad89abcb1d734a9bf2867d6be8e8b9eae1f315db18f7c5fde6504cfcaa31dd4aad619006c97c4ffc1fa54056287f3b194198
diff --git a/net-im/sendxmpp-amm/metadata.xml b/net-im/sendxmpp-amm/metadata.xml
new file mode 100644
index 000000000000..89250bb227b0
--- /dev/null
+++ b/net-im/sendxmpp-amm/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Florian Schmaus</name>
+ <email>flow@gentoo.org</email>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="github">flowdalic/sendxmpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/sendxmpp-amm/sendxmpp-amm-1.1.1-r1.ebuild b/net-im/sendxmpp-amm/sendxmpp-amm-1.1.1-r1.ebuild
new file mode 100644
index 000000000000..0f3324d28b3a
--- /dev/null
+++ b/net-im/sendxmpp-amm/sendxmpp-amm-1.1.1-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ORIG_PN="${PN%-amm}"
+
+DESCRIPTION="Send XMPP (Jabber) messages via command line"
+HOMEPAGE="https://github.com/flowdalic/sendxmpp"
+
+if [[ "${PV}" == "9999" ]] || [[ -n "${EGIT_COMMIT_ID}" ]]; then
+ EGIT_REPO_URI="https://github.com/Flowdalic/${ORIG_PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/flowdalic/${ORIG_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 ~arm64"
+ S="${WORKDIR}/${ORIG_PN}-${PV}"
+fi
+
+LICENSE="GPL-3+"
+
+SLOT="0"
+
+RDEPEND="
+ dev-lang/ammonite-repl-bin[scala2-13]
+ !net-im/sendxmpp
+"
+
+src_prepare() {
+ default
+ # Ensure that the script is using the right Scala version.
+ sed -i '1 s;^.*$;#!/usr/bin/env amm-2.13;' sendxmpp || die
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ default
+ dobin sendxmpp
+}
diff --git a/net-im/sendxmpp-amm/sendxmpp-amm-9999.ebuild b/net-im/sendxmpp-amm/sendxmpp-amm-9999.ebuild
new file mode 100644
index 000000000000..c5dec761f9fd
--- /dev/null
+++ b/net-im/sendxmpp-amm/sendxmpp-amm-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ORIG_PN="${PN%-amm}"
+
+DESCRIPTION="Send XMPP (Jabber) messages via command line"
+HOMEPAGE="https://github.com/flowdalic/sendxmpp"
+
+if [[ "${PV}" == "9999" ]] || [[ -n "${EGIT_COMMIT_ID}" ]]; then
+ EGIT_REPO_URI="https://github.com/Flowdalic/${ORIG_PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/flowdalic/${ORIG_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64"
+ S="${WORKDIR}/${ORIG_PN}-${PV}"
+fi
+
+LICENSE="GPL-3+"
+
+SLOT="0"
+
+RDEPEND="
+ dev-lang/ammonite-repl-bin[scala2-13]
+ !net-im/sendxmpp
+"
+
+src_prepare() {
+ default
+ # Ensure that the script is using the right Scala version.
+ sed -i '1 s;^.*$;#!/usr/bin/env amm-2.13;' sendxmpp.sc || die
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ default
+ newbin sendxmpp.sc sendxmpp
+}
diff --git a/net-im/sendxmpp/metadata.xml b/net-im/sendxmpp/metadata.xml
index 560b8ad5f525..9bfda17c308c 100644
--- a/net-im/sendxmpp/metadata.xml
+++ b/net-im/sendxmpp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/net-im/sendxmpp/sendxmpp-1.24.ebuild b/net-im/sendxmpp/sendxmpp-1.24.ebuild
index bdd1e66033ab..f170e4a2625c 100644
--- a/net-im/sendxmpp/sendxmpp-1.24.ebuild
+++ b/net-im/sendxmpp/sendxmpp-1.24.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
inherit perl-module
@@ -11,8 +11,7 @@ SRC_URI="https://github.com/lhost/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 hppa ppc sparc x86"
-IUSE=""
+KEYWORDS="amd64 ~hppa ppc sparc x86"
RDEPEND="dev-perl/Net-XMPP
dev-perl/Authen-SASL
diff --git a/net-im/signal-cli-bin/Manifest b/net-im/signal-cli-bin/Manifest
new file mode 100644
index 000000000000..e00539abdbd2
--- /dev/null
+++ b/net-im/signal-cli-bin/Manifest
@@ -0,0 +1,6 @@
+DIST signal-cli-bin-0.13.1.README.md 5538 BLAKE2B 9cef6c3db846dada9e855e445d2a0465b1ba6495e27cf4366bdf34e5c505ec5bf76c8d898a1d36a564e4a983eefd401cc94ab71804c6bd30367c84af065504d4 SHA512 575d355a7969dd748958c945c7d3c92de77882a63bf7111062d417127e465b1975e55a13853b83ccecf1307c0baf9eb1057c48363bd78a729b6f1c9e19ab134d
+DIST signal-cli-bin-0.13.1.gh.tar.gz 51796574 BLAKE2B dad3d4c3b1ac450b14edbdedd42abc62ece2941ea57d11239adb8cbf5bd82781b714260a62f7552a3879bfdfd2dd7b63dcb9d3ea33c65499c5aa4783a4bc253f SHA512 c82a1dadfbc37cc316fefb663a07d5e2366d31fa49a7a207fb3b2f1d68f55b41074f01704bada55b528bf60a3177a7ab74b612bc644ae57f8cb4a8115138d825
+DIST signal-cli-bin-0.13.1.signal-cli.1.adoc 28070 BLAKE2B 6530cefd79ca26673f8dda7b6e19574ed057aa92a2b940f55e951487254629d1f7c6ac03d30b682e7afc638ac859c31c1f3ac0542183316e1ba56c6dcd0e7d4c SHA512 8f98357f2ee2fb0102c847fb9ff91f0475386fb58708d9e37871ccb351fae7ab852c73eac5c3eedf154dc4bd4038c1d0f53f9024d1c0e0cb45bbd145f7dd09f9
+DIST signal-cli-bin-0.13.2.README.md 5538 BLAKE2B 9cef6c3db846dada9e855e445d2a0465b1ba6495e27cf4366bdf34e5c505ec5bf76c8d898a1d36a564e4a983eefd401cc94ab71804c6bd30367c84af065504d4 SHA512 575d355a7969dd748958c945c7d3c92de77882a63bf7111062d417127e465b1975e55a13853b83ccecf1307c0baf9eb1057c48363bd78a729b6f1c9e19ab134d
+DIST signal-cli-bin-0.13.2.gh.tar.gz 57251017 BLAKE2B a9a34e8e4bcab9e0825a4c037cc9b69255d46aaefbe8185eeb9b7d56fe7cd40e5a2f65a3873b72c6e1dbbd1251d6ff1b9206c68dc7db09df72be200dd77a48cc SHA512 472a558038a21e323c4f56c7698b31a2901ffcf318844fa787bb2b611621b7ae34a883bb3465cebf3495fa4b5b450b9ef5a6c9298f44996628cc4f517d79bd25
+DIST signal-cli-bin-0.13.2.signal-cli.1.adoc 28146 BLAKE2B a8bb25ccaed0cb3bf8583985f103b628b344646e5eb3aa62171b2e97a2f5131da3026891abc6e98ebae9107e55ad0846a0f9ce4f8e5d5e072e00f85b8d372ee6 SHA512 df82d33c0f53bbb641cb5fc4c85182b5f937ad30c0784ef2d183c91bf2ae23367960169a05bbf2e1d2f72aa76e26cd1d14c72ddf7ea369d5cefc0bed28607561
diff --git a/net-im/signal-cli-bin/files/signal-cli-bin-0.13.1-use-working-java-version.patch b/net-im/signal-cli-bin/files/signal-cli-bin-0.13.1-use-working-java-version.patch
new file mode 100644
index 000000000000..366ca18e19ed
--- /dev/null
+++ b/net-im/signal-cli-bin/files/signal-cli-bin-0.13.1-use-working-java-version.patch
@@ -0,0 +1,33 @@
+This patch searches the jre 21 binary in the gentoo specific directories.
+
+Signed-off-by: Julien Roy <julien@jroy.ca>
+
+--- a/bin/signal-cli
++++ b/bin/signal-cli
+@@ -118,13 +118,19 @@
+
+
+ # Determine the Java command to use to start the JVM.
+-if [ -n "$JAVA_HOME" ] ; then
+- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+- # IBM's JDK on AIX uses strange locations for the executables
+- JAVACMD=$JAVA_HOME/jre/sh/java
+- else
+- JAVACMD=$JAVA_HOME/bin/java
+- fi
++# This package needs Java 21,
++# so we must search for matching java binaries
++for I in /usr/lib*/openjdk-21 /opt/openjdk-bin-21 /opt/openjdk-jre-bin-21; do
++ J_TRY="$I/bin/java"
++ if [ -x "$J_TRY" ] ; then
++ "$J_TRY" -version 2>&1 | grep --fixed-strings --quiet "21."
++ if [ $? -eq 0 ] ; then
++ JAVACMD="$J_TRY"
++ break
++ fi
++ fi
++done
++if [ -n "$JAVACMD" ] ; then
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
diff --git a/net-im/signal-cli-bin/metadata.xml b/net-im/signal-cli-bin/metadata.xml
new file mode 100644
index 000000000000..4ccd37ebb6e5
--- /dev/null
+++ b/net-im/signal-cli-bin/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>julien@jroy.ca</email>
+ <name>Julien Roy</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>martin.dummer@gmx.net</email>
+ <name>Martin Dummer</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/AsamK/signal-cli/issues</bugs-to>
+ <changelog>https://github.com/AsamK/signal-cli/releases</changelog>
+ <doc>https://github.com/AsamK/signal-cli/wiki</doc>
+ <remote-id type="github">AsamK/signal-cli</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/signal-cli-bin/signal-cli-bin-0.13.1-r1.ebuild b/net-im/signal-cli-bin/signal-cli-bin-0.13.1-r1.ebuild
new file mode 100644
index 000000000000..200ffb194879
--- /dev/null
+++ b/net-im/signal-cli-bin/signal-cli-bin-0.13.1-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="signal-cli-${PV}"
+DESCRIPTION="Send and receive messages of Signal Messenger over a command line interface"
+HOMEPAGE="https://github.com/AsamK/signal-cli"
+SRC_URI="
+ https://github.com/AsamK/signal-cli/releases/download/v${PV}/${MY_P}.tar.gz -> ${P}.gh.tar.gz
+ https://github.com/AsamK/signal-cli/raw/v${PV}/README.md -> ${P}.README.md
+ https://github.com/AsamK/signal-cli/raw/v${PV}/man/signal-cli.1.adoc -> ${P}.signal-cli.1.adoc
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ virtual/jre:21
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ app-text/asciidoc
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.13.1-use-working-java-version.patch"
+)
+
+src_unpack() {
+ default
+ cp "${DISTDIR}/${P}.signal-cli.1.adoc" signal-cli.1.adoc || die
+}
+
+src_compile() {
+ default
+ a2x --no-xmllint --doctype manpage --format manpage "${WORKDIR}/signal-cli.1.adoc" || die
+}
+
+src_install() {
+ dodir /opt/signal-cli/{lib,bin}
+ insinto /opt/signal-cli
+ doins -r lib
+ into /opt/signal-cli
+ dobin bin/signal-cli
+ dosym -r /opt/signal-cli/bin/signal-cli /usr/bin/signal-cli
+ newdoc "${DISTDIR}/${P}.README.md" README.md
+ doman "${WORKDIR}/signal-cli.1"
+}
+
+pkg_postinst() {
+ elog "Please read /usr/share/doc/${PF}/README.md.bz2"
+ elog "how to register signal-cli with the signal service and how to send"
+ elog "and receive messages"
+}
diff --git a/net-im/signal-cli-bin/signal-cli-bin-0.13.2-r1.ebuild b/net-im/signal-cli-bin/signal-cli-bin-0.13.2-r1.ebuild
new file mode 100644
index 000000000000..200ffb194879
--- /dev/null
+++ b/net-im/signal-cli-bin/signal-cli-bin-0.13.2-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="signal-cli-${PV}"
+DESCRIPTION="Send and receive messages of Signal Messenger over a command line interface"
+HOMEPAGE="https://github.com/AsamK/signal-cli"
+SRC_URI="
+ https://github.com/AsamK/signal-cli/releases/download/v${PV}/${MY_P}.tar.gz -> ${P}.gh.tar.gz
+ https://github.com/AsamK/signal-cli/raw/v${PV}/README.md -> ${P}.README.md
+ https://github.com/AsamK/signal-cli/raw/v${PV}/man/signal-cli.1.adoc -> ${P}.signal-cli.1.adoc
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ virtual/jre:21
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ app-text/asciidoc
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.13.1-use-working-java-version.patch"
+)
+
+src_unpack() {
+ default
+ cp "${DISTDIR}/${P}.signal-cli.1.adoc" signal-cli.1.adoc || die
+}
+
+src_compile() {
+ default
+ a2x --no-xmllint --doctype manpage --format manpage "${WORKDIR}/signal-cli.1.adoc" || die
+}
+
+src_install() {
+ dodir /opt/signal-cli/{lib,bin}
+ insinto /opt/signal-cli
+ doins -r lib
+ into /opt/signal-cli
+ dobin bin/signal-cli
+ dosym -r /opt/signal-cli/bin/signal-cli /usr/bin/signal-cli
+ newdoc "${DISTDIR}/${P}.README.md" README.md
+ doman "${WORKDIR}/signal-cli.1"
+}
+
+pkg_postinst() {
+ elog "Please read /usr/share/doc/${PF}/README.md.bz2"
+ elog "how to register signal-cli with the signal service and how to send"
+ elog "and receive messages"
+}
diff --git a/net-im/signal-desktop-bin/Manifest b/net-im/signal-desktop-bin/Manifest
index dcf75ed56199..dfb58fba14da 100644
--- a/net-im/signal-desktop-bin/Manifest
+++ b/net-im/signal-desktop-bin/Manifest
@@ -1 +1 @@
-DIST signal-desktop_1.34.0_amd64.deb 99598948 BLAKE2B ce0a0bd37c0e6697397101e9fa37864e06dd0ed24af569b6e1084460e467d19b82d77e87c21943747ba4a24c269417183dd5d4bfac45b4c1d3f89d4c155c747f SHA512 56bf02ed593ab532bbbe9720d0466158ab5c33fc4c48b0e606f232159ca6d86386dc0fcc49ba39fee23c85239098d87eb7ff2849785bd56b936b7d1ae548168f
+DIST signal-desktop_7.6.0_amd64.deb 118903682 BLAKE2B ffa97bb21d2f0325e4ca5517b9e251f152bc061d6cf71a26e0df4d919a3f24f3a7eb4657ba24550a2549bee9296a1668f30ab89c4940ed6b448bbe63759d6a0c SHA512 69fa4f7e2d9b8521cd8825f07b41da4f52142f800290af628c95e87fbadc51ff0bf7f9d037117162b7a293589b01050987bfb9e48e3ba0cc8e10f201a825e5b8
diff --git a/net-im/signal-desktop-bin/metadata.xml b/net-im/signal-desktop-bin/metadata.xml
index 8201d8fc6346..dfd4d77b4377 100644
--- a/net-im/signal-desktop-bin/metadata.xml
+++ b/net-im/signal-desktop-bin/metadata.xml
@@ -1,12 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>gentoo.2019@r123.de</email>
<name>Robert Siebeck</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">signalapp/Signal-Desktop</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/signal-desktop-bin/signal-desktop-bin-1.34.0.ebuild b/net-im/signal-desktop-bin/signal-desktop-bin-1.34.0.ebuild
deleted file mode 100644
index b339b110aafd..000000000000
--- a/net-im/signal-desktop-bin/signal-desktop-bin-1.34.0.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN="${PN/-bin/}"
-
-inherit eutils pax-utils unpacker xdg-utils
-
-DESCRIPTION="Allows you to send and receive messages of Signal Messenger on your computer"
-HOMEPAGE="https://signal.org/
- https://github.com/signalapp/Signal-Desktop"
-SRC_URI="https://updates.signal.org/desktop/apt/pool/main/s/${MY_PN}/${MY_PN}_${PV}_amd64.deb"
-
-LICENSE="GPL-3 MIT MIT-with-advertising BSD-1 BSD-2 BSD Apache-2.0 ISC openssl ZLIB APSL-2 icu Artistic-2 LGPL-2.1"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-IUSE=""
-
-BDEPEND="app-admin/chrpath"
-RDEPEND="
- dev-libs/nss
- media-libs/mesa[X(+)]
- net-print/cups
- x11-libs/gtk+:3[X]
- x11-libs/libXScrnSaver
- x11-libs/libXtst"
-
-QA_PREBUILT="opt/Signal/signal-desktop
- opt/Signal/chrome-sandbox
- opt/Signal/crashpad_handler
- opt/Signal/libffmpeg.so
- opt/Signal/libGLESv2.so
- opt/Signal/libnode.so
- opt/Signal/libVkICD_mock_icd.so
- opt/Signal/libvk_swiftshader.so
- opt/Signal/swiftshader/libGLESv2.so
- opt/Signal/resources/app.asar.unpacked/node_modules/sharp/build/Release/sharp.node
- opt/Signal/resources/app.asar.unpacked/node_modules/sharp/vendor/lib/*
- opt/Signal/resources/app.asar.unpacked/node_modules/zkgroup/libzkgroup.so"
-
-RESTRICT="splitdebug"
-
-S="${WORKDIR}"
-
-src_prepare() {
- default
- sed -e 's|\("/opt/Signal/signal-desktop"\)|\1 --start-in-tray|g' \
- -i usr/share/applications/signal-desktop.desktop || die
- unpack usr/share/doc/signal-desktop/changelog.gz
- # Fix Bug 706352
- chrpath opt/Signal/resources/app.asar.unpacked/node_modules/sharp/vendor/lib/libjpeg.so.8.2.2 -r '$ORIGIN:/target/lib' || die
- chrpath opt/Signal/resources/app.asar.unpacked/node_modules/sharp/vendor/lib/libffi.so.6.0.4 -d || die
-}
-
-src_install() {
- insinto /
- dodoc changelog
- doins -r opt
- insinto /usr/share
- doins -r usr/share/applications
- doins -r usr/share/icons
- fperms +x /opt/Signal/signal-desktop /opt/Signal/chrome-sandbox
- fperms u+s /opt/Signal/chrome-sandbox
- pax-mark m opt/Signal/signal-desktop opt/Signal/chrome-sandbox
-
- dosym ../../opt/Signal/${MY_PN} /usr/bin/${MY_PN}
- dosym ../../usr/lib64/libEGL.so opt/Signal/libEGL.so
- dosym ../../../usr/lib64/libEGL.so opt/Signal/swiftshader/libEGL.so
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-
- optfeature "using the tray icon in Xfce desktop environments" xfce-extra/xfce4-statusnotifier-plugin
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
diff --git a/net-im/signal-desktop-bin/signal-desktop-bin-7.6.0.ebuild b/net-im/signal-desktop-bin/signal-desktop-bin-7.6.0.ebuild
new file mode 100644
index 000000000000..4ddfe8d854e5
--- /dev/null
+++ b/net-im/signal-desktop-bin/signal-desktop-bin-7.6.0.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN/-bin/}"
+
+inherit pax-utils unpacker xdg
+
+DESCRIPTION="Allows you to send and receive messages of Signal Messenger on your computer"
+HOMEPAGE="https://signal.org/
+ https://github.com/signalapp/Signal-Desktop"
+SRC_URI="https://updates.signal.org/desktop/apt/pool/s/${MY_PN}/${MY_PN}_${PV}_amd64.deb"
+S="${WORKDIR}"
+
+LICENSE="GPL-3 MIT MIT-with-advertising BSD-1 BSD-2 BSD Apache-2.0 ISC openssl ZLIB APSL-2 icu Artistic-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="-* amd64"
+IUSE="+sound"
+RESTRICT="splitdebug"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ >=media-fonts/noto-emoji-20231130
+ media-libs/alsa-lib
+ media-libs/mesa[X(+)]
+ net-print/cups
+ sys-apps/dbus[X]
+ x11-libs/cairo
+ x11-libs/gtk+:3[X]
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/pango
+ sound? (
+ || (
+ media-libs/libpulse
+ media-sound/apulse
+ )
+ )
+"
+
+QA_PREBUILT="
+ opt/Signal/chrome_crashpad_handler
+ opt/Signal/chrome-sandbox
+ opt/Signal/libEGL.so
+ opt/Signal/libGLESv2.so
+ opt/Signal/libffmpeg.so
+ opt/Signal/libvk_swiftshader.so
+ opt/Signal/libvulkan.so.1
+ opt/Signal/resources/app.asar.unpacked/node_modules/*
+ opt/Signal/signal-desktop
+ opt/Signal/swiftshader/libEGL.so
+ opt/Signal/swiftshader/libGLESv2.so"
+
+src_prepare() {
+ default
+ sed -e 's| --no-sandbox||g' \
+ -i usr/share/applications/signal-desktop.desktop || die
+ unpack usr/share/doc/signal-desktop/changelog.gz
+}
+
+src_install() {
+ insinto /
+ dodoc changelog
+ doins -r opt
+ insinto /usr/share
+
+ if has_version media-sound/apulse[-sdk] && ! has_version media-sound/pulseaudio; then
+ sed -i 's/Exec=/Exec=apulse /g' usr/share/applications/signal-desktop.desktop || die
+ fi
+
+ doins -r usr/share/applications
+ doins -r usr/share/icons
+ fperms +x /opt/Signal/signal-desktop /opt/Signal/chrome-sandbox /opt/Signal/chrome_crashpad_handler
+ fperms u+s /opt/Signal/chrome-sandbox
+ pax-mark m opt/Signal/signal-desktop opt/Signal/chrome-sandbox opt/Signal/chrome_crashpad_handler
+
+ dosym -r /opt/Signal/${MY_PN} /usr/bin/${MY_PN}
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ elog "For using the tray icon on compatible desktop environments, start Signal with"
+ elog " '--start-in-tray' or '--use-tray-icon'."
+}
diff --git a/net-im/skype-dbus-mock/Manifest b/net-im/skype-dbus-mock/Manifest
deleted file mode 100644
index 891c4cd4f5f8..000000000000
--- a/net-im/skype-dbus-mock/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST skype-dbus-mock-0_pre20181011.tar.gz 2851 BLAKE2B fbb2d476d6a0402ea6ac70198d0aac87c24d7c9815fe27b03631625df10f24c71634f7f22eec2256869746cbf9d308ab3275380a755455ebbbb23ad2adcdd5a2 SHA512 d566a91cb279fe07626744e6196e3dcf7b36a5535bb8fe3cd7e6245d874bdf82f7948bd7f476f73c72f972894ee250d89a9eb055fdf55af9cbe97b1b05e39e16
diff --git a/net-im/skype-dbus-mock/metadata.xml b/net-im/skype-dbus-mock/metadata.xml
deleted file mode 100644
index fbd99da1cd1b..000000000000
--- a/net-im/skype-dbus-mock/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>mattsch@gmail.com</email>
- <name>Matthew Schultz</name>
- </maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
-</pkgmetadata>
diff --git a/net-im/skype-dbus-mock/skype-dbus-mock-0_pre20181011.ebuild b/net-im/skype-dbus-mock/skype-dbus-mock-0_pre20181011.ebuild
deleted file mode 100644
index 5b0c162a6955..000000000000
--- a/net-im/skype-dbus-mock/skype-dbus-mock-0_pre20181011.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_6,3_7} )
-
-inherit python-r1
-
-GIT_COMMIT="3a9e2882ac5c0ad6be3c5cb5c7da008b4cfa51da"
-DESCRIPTION="Mocked systemd dbus interface for skype 8.30+"
-HOMEPAGE="https://github.com/maelnor/skype-dbus-mock"
-SRC_URI="https://github.com/maelnor/${PN}/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="${PYTHON_DEPS}"
-RDEPEND="${DEPEND}
- >=net-im/skypeforlinux-8.30
- dev-python/dbus-python[${PYTHON_USEDEP}]
- !sys-apps/systemd
- !sys-auth/elogind"
-
-S=${WORKDIR}/${PN}-${GIT_COMMIT}
-
-src_install() {
- newbin skype-dbus-mock.py skype-dbus-mock
- insinto /usr/share/dbus-1/system-services
- doins org.freedesktop.login1.service
- insinto /usr/share/dbus-1/system.d
- doins skype-dbus-mock.conf
-}
-
-pkg_postinst() {
- ewarn "Restart dbus service to apply changes"
-}
diff --git a/net-im/skypeforlinux/Manifest b/net-im/skypeforlinux/Manifest
index e2f1cba7a312..a21a682fc0fc 100644
--- a/net-im/skypeforlinux/Manifest
+++ b/net-im/skypeforlinux/Manifest
@@ -1 +1,2 @@
-DIST skypeforlinux_8.59.0.77-1.x86_64.rpm 108914465 BLAKE2B 9d8300b9d315b95528e7e453a4b2175a22cc598634f0b517e6e0b45dfd7c04d6cee92d46d455486ee00ea1953617132e6c97576d5cc344988912aa3df03609e8 SHA512 4faa158605c13ee66bf49aad8e1b06f0429772c676088559fb28f6012cf263c1425f830678edd9605cfd69a4a0fb75f051fd96acd0a8a4fb636bb3a5beceb211
+DIST skypeforlinux_8.108.0.205_amd64.deb 121989382 BLAKE2B 9881f81d46e8b89e737a78b8671fbdc0739eb349751791539531e0191a44512d2130371b40e302c6dccc3d15d3b6d6ddb006546732a1d39fca386bb3869bb57f SHA512 2d84ea37635f8b725f4654cf163202a372423eb6695af66b8e7cdd52f8780f6360571f67d780f11a4df08b3f0e99349b9e0253f3887d0821c79183ab0adc446b
+DIST skypeforlinux_8.110.76.107_amd64.deb 122006300 BLAKE2B 124cb482280c17b0582f3ac67ec7e657de28d2be397e133fd1c552ad6738169fa902ea7b8e0d487e4e188e69049e977e7a18350b60ec6850f13140b749da6a26 SHA512 6f58b7589cc3e539d2b4f3cdcadcbcda8eea5f08ead406dd87891ad9f2e140fe4c7efb9c57842957a8c15f2d01f0d674fc13d8192ed270724c6e6480d1a58deb
diff --git a/net-im/skypeforlinux/metadata.xml b/net-im/skypeforlinux/metadata.xml
index ca0f90d43ac2..254b22aa40cc 100644
--- a/net-im/skypeforlinux/metadata.xml
+++ b/net-im/skypeforlinux/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>soap@gentoo.org</email>
- <name>David Seifert</name>
- </maintainer>
+ <!-- maintainer-needed -->
<longdescription>Skype is for doing things together, whenever you're apart. Skype's text, voice and video make it simple to share experiences with the people that matter to you, wherever they are.</longdescription>
</pkgmetadata>
diff --git a/net-im/skypeforlinux/skypeforlinux-8.59.0.77.ebuild b/net-im/skypeforlinux/skypeforlinux-8.108.0.205.ebuild
index c2755ee5b06c..a96df6bc8f2e 100644
--- a/net-im/skypeforlinux/skypeforlinux-8.59.0.77.ebuild
+++ b/net-im/skypeforlinux/skypeforlinux-8.108.0.205.ebuild
@@ -1,27 +1,28 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
MULTILIB_COMPAT=( abi_x86_64 )
-inherit chromium-2 desktop pax-utils rpm multilib-build xdg
+inherit chromium-2 desktop pax-utils unpacker multilib-build xdg
DESCRIPTION="Instant messaging client, with support for audio and video"
HOMEPAGE="https://www.skype.com/"
-SRC_URI="https://repo.skype.com/rpm/stable/${PN}_${PV}-1.x86_64.rpm"
+SRC_URI="https://repo.skype.com/deb/pool/main/s/skypeforlinux/${PN}_${PV}_amd64.deb"
+S="${WORKDIR}"
LICENSE="Skype-TOS MIT MIT-with-advertising BSD-1 BSD-2 BSD Apache-2.0 Boost-1.0 ISC CC-BY-SA-3.0 CC0-1.0 openssl ZLIB APSL-2 icu Artistic-2 LGPL-2.1"
SLOT="0"
KEYWORDS="-* ~amd64"
+IUSE="selinux"
-S="${WORKDIR}"
QA_PREBUILT="*"
RESTRICT="mirror bindist strip" #299368
RDEPEND="
app-crypt/libsecret[${MULTILIB_USEDEP}]
- dev-libs/atk[${MULTILIB_USEDEP}]
+ app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
dev-libs/expat[${MULTILIB_USEDEP}]
dev-libs/glib:2[${MULTILIB_USEDEP}]
dev-libs/nspr[${MULTILIB_USEDEP}]
@@ -33,6 +34,7 @@ RDEPEND="
net-print/cups[${MULTILIB_USEDEP}]
sys-apps/dbus[${MULTILIB_USEDEP}]
sys-devel/gcc[cxx]
+ sys-libs/glibc
virtual/ttf-fonts
x11-libs/cairo[${MULTILIB_USEDEP}]
x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
@@ -49,15 +51,18 @@ RDEPEND="
x11-libs/libXrender[${MULTILIB_USEDEP}]
x11-libs/libXtst[${MULTILIB_USEDEP}]
x11-libs/libxcb[${MULTILIB_USEDEP}]
+ x11-libs/libxkbcommon[${MULTILIB_USEDEP}]
x11-libs/libxkbfile[${MULTILIB_USEDEP}]
- x11-libs/pango[${MULTILIB_USEDEP}]"
+ x11-libs/pango[${MULTILIB_USEDEP}]
+ selinux? ( sec-policy/selinux-skype )
+"
pkg_setup() {
chromium_suid_sandbox_check_kernel_config
}
src_unpack() {
- rpm_src_unpack ${A}
+ unpack_deb ${A}
}
src_prepare() {
diff --git a/net-im/skypeforlinux/skypeforlinux-8.110.76.107.ebuild b/net-im/skypeforlinux/skypeforlinux-8.110.76.107.ebuild
new file mode 100644
index 000000000000..7013112b81ac
--- /dev/null
+++ b/net-im/skypeforlinux/skypeforlinux-8.110.76.107.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MULTILIB_COMPAT=( abi_x86_64 )
+
+inherit chromium-2 desktop pax-utils unpacker multilib-build xdg
+
+DESCRIPTION="Instant messaging client, with support for audio and video"
+HOMEPAGE="https://www.skype.com/"
+SRC_URI="https://repo.skype.com/deb/pool/main/s/skypeforlinux/${PN}_${PV}_amd64.deb"
+S="${WORKDIR}"
+
+LICENSE="Skype-TOS MIT MIT-with-advertising BSD-1 BSD-2 BSD Apache-2.0 Boost-1.0 ISC CC-BY-SA-3.0 CC0-1.0 openssl ZLIB APSL-2 icu Artistic-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="selinux"
+
+QA_PREBUILT="*"
+RESTRICT="mirror bindist strip" #299368
+
+RDEPEND="
+ app-crypt/libsecret[${MULTILIB_USEDEP}]
+ app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
+ dev-libs/expat[${MULTILIB_USEDEP}]
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ dev-libs/nspr[${MULTILIB_USEDEP}]
+ dev-libs/nss[${MULTILIB_USEDEP}]
+ media-libs/alsa-lib[${MULTILIB_USEDEP}]
+ media-libs/fontconfig:1.0[${MULTILIB_USEDEP}]
+ media-libs/freetype:2[${MULTILIB_USEDEP}]
+ media-libs/libv4l[${MULTILIB_USEDEP}]
+ net-print/cups[${MULTILIB_USEDEP}]
+ sys-apps/dbus[${MULTILIB_USEDEP}]
+ sys-devel/gcc[cxx]
+ sys-libs/glibc
+ virtual/ttf-fonts
+ x11-libs/cairo[${MULTILIB_USEDEP}]
+ x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXScrnSaver[${MULTILIB_USEDEP}]
+ x11-libs/libXcomposite[${MULTILIB_USEDEP}]
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXdamage[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXrender[${MULTILIB_USEDEP}]
+ x11-libs/libXtst[${MULTILIB_USEDEP}]
+ x11-libs/libxcb[${MULTILIB_USEDEP}]
+ x11-libs/libxkbcommon[${MULTILIB_USEDEP}]
+ x11-libs/libxkbfile[${MULTILIB_USEDEP}]
+ x11-libs/pango[${MULTILIB_USEDEP}]
+ selinux? ( sec-policy/selinux-skype )
+"
+
+pkg_setup() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_unpack() {
+ unpack_deb ${A}
+}
+
+src_prepare() {
+ default
+ sed -e "s!^SKYPE_PATH=.*!SKYPE_PATH=${EPREFIX}/opt/skypeforlinux/skypeforlinux!" \
+ -i usr/bin/skypeforlinux || die
+ sed -e "s!^Categories=.*!Categories=Network;InstantMessaging;Telephony;!" \
+ -e "/^OnlyShowIn=/d" \
+ -i usr/share/applications/skypeforlinux.desktop || die
+}
+
+src_install() {
+ dodir /opt
+ cp -a usr/share/skypeforlinux "${ED}"/opt || die
+
+ # remove chrome-sandbox binary, users should use kernel namespaces
+ # https://bugs.gentoo.org/692692#c18
+ rm "${ED}"/opt/skypeforlinux/chrome-sandbox || die
+
+ dobin usr/bin/skypeforlinux
+
+ dodoc usr/share/skypeforlinux/*.html
+ dodoc -r usr/share/doc/skypeforlinux/.
+ # symlink required for the "Help->3rd Party Notes" menu entry (otherwise frozen skype -> xdg-open)
+ dosym ${PF} usr/share/doc/skypeforlinux
+
+ doicon usr/share/pixmaps/skypeforlinux.png
+
+ local res
+ for res in 16 32 256 512; do
+ newicon -s ${res} usr/share/icons/hicolor/${res}x${res}/apps/skypeforlinux.png skypeforlinux.png
+ done
+
+ domenu usr/share/applications/skypeforlinux.desktop
+
+ pax-mark -m "${ED}"/opt/skypeforlinux/skypeforlinux
+ pax-mark -m "${ED}"/opt/skypeforlinux/resources/app.asar.unpacked/node_modules/slimcore/bin/slimcore.node
+}
diff --git a/net-im/slack/Manifest b/net-im/slack/Manifest
index e92becd89ed2..2c297abb9190 100644
--- a/net-im/slack/Manifest
+++ b/net-im/slack/Manifest
@@ -1,2 +1,2 @@
-DIST slack-desktop-4.3.2-amd64.deb 54914760 BLAKE2B 218d4ba6cc2057bb92b84bd8bbbf94e70022a9e65363c256190584f0a92e1615642583647af2813e02ec2eb243a3428016b1bff3bfbbc6a98f227aa63a94a967 SHA512 36536be0825e1803704304346ea9db2d1d03baddec954dea0c4560bec2b1800cf3e6d431796d1fcd3b9178e3eb070e9ae6da64e4d3949eff649050cab21d5cb2
-DIST slack-desktop-4.4.2-amd64.deb 54818266 BLAKE2B 12ce6cd423081b64919c511562c0508126d4e10f13168630b00d507c0c4b33f1291d158198ad9050008d43bd69755dd79dfa004443f83495aed7728560f318a6 SHA512 7680116ac8e438cea614484c814ed2903aab5432f8901799fdc2772471ca385a5a93d2dff43abe441ca4d4be0cae5d56c54119fb456483cfbb12c5621955f988
+DIST slack-desktop-4.37.101-amd64.deb 78933422 BLAKE2B b98574309a07812c9439aa18ce061eac5f8d3a8bbe1ec207b96dcd6ef5d32bb796348ada207123a4c9f75244b65f8de57b2290058b891f026c182e3697959fc9 SHA512 7ade44d443067c3330b28ec2ded8fabe84035c051d5e23e9f9f29a759833f7289491796ad2ca3855c840aa591e092048a2754ff429e7a2502c109577c0cef82d
+DIST slack-desktop-4.38.115-amd64.deb 79886658 BLAKE2B 6e5d4b8de0c3897650c8cb996008408c907987c08507f3a6ed595cd9ee3a6ac9196b6c4ca3e1b23cc64a118fcf986a5ab55263307d3353ab76d1c660230c6ee3 SHA512 b5699e293fe7e3716e0dce2fdfba39d11512b779740497c0204f403eecea4a45da289fb7aef4695dbd7c3489a7df8df1dca08bc0ffdb7b50b839cf78c6ff7edf
diff --git a/net-im/slack/metadata.xml b/net-im/slack/metadata.xml
index 15eca405ed06..79be733db06d 100644
--- a/net-im/slack/metadata.xml
+++ b/net-im/slack/metadata.xml
@@ -1,11 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>spiderx@spiderx.dp.ua</email>
<name>Vladimir Pavljuchenkov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="person">
+ <email>dlan@gentoo.org</email>
+ <name>Yixun Lan</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
@@ -16,6 +20,6 @@
and people.
</longdescription>
<upstream>
- <doc>https://get.slack.help/hc/en-us</doc>
+ <doc>https://slack.com/intl/en-us/help</doc>
</upstream>
</pkgmetadata>
diff --git a/net-im/slack/slack-4.3.2-r2.ebuild b/net-im/slack/slack-4.37.101.ebuild
index 01c6e59c2cfb..3d7a4b0058ab 100644
--- a/net-im/slack/slack-4.3.2-r2.ebuild
+++ b/net-im/slack/slack-4.37.101.ebuild
@@ -1,62 +1,59 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
MULTILIB_COMPAT=( abi_x86_64 )
-inherit desktop eutils multilib-build pax-utils unpacker xdg-utils
+inherit desktop multilib-build optfeature pax-utils unpacker xdg
DESCRIPTION="Team collaboration tool"
-HOMEPAGE="https://www.slack.com/"
-SRC_URI="https://downloads.slack-edge.com/linux_releases/${PN}-desktop-${PV}-amd64.deb"
+HOMEPAGE="https://slack.com"
+SRC_URI="https://downloads.slack-edge.com/releases/linux/${PV}/prod/x64/${PN}-desktop-${PV}-amd64.deb"
LICENSE="all-rights-reserved"
SLOT="0"
KEYWORDS="-* ~amd64"
-IUSE="appindicator"
+IUSE="appindicator +seccomp suid wayland"
RESTRICT="bindist mirror"
-RDEPEND="app-accessibility/at-spi2-atk:2[${MULTILIB_USEDEP}]
- app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
- dev-libs/atk:0[${MULTILIB_USEDEP}]
+RDEPEND="app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
dev-libs/expat:0[${MULTILIB_USEDEP}]
dev-libs/glib:2[${MULTILIB_USEDEP}]
dev-libs/nspr:0[${MULTILIB_USEDEP}]
dev-libs/nss:0[${MULTILIB_USEDEP}]
+ dev-libs/wayland[${MULTILIB_USEDEP}]
media-libs/alsa-lib:0[${MULTILIB_USEDEP}]
media-libs/mesa:0[${MULTILIB_USEDEP}]
net-print/cups:0[${MULTILIB_USEDEP}]
sys-apps/dbus:0[${MULTILIB_USEDEP}]
- sys-apps/util-linux:0[${MULTILIB_USEDEP}]
x11-libs/cairo:0[${MULTILIB_USEDEP}]
x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ x11-libs/libdrm:0[${MULTILIB_USEDEP}]
x11-libs/libX11:0[${MULTILIB_USEDEP}]
x11-libs/libxcb:0/1.12[${MULTILIB_USEDEP}]
x11-libs/libXcomposite:0[${MULTILIB_USEDEP}]
- x11-libs/libXcursor:0[${MULTILIB_USEDEP}]
x11-libs/libXdamage:0[${MULTILIB_USEDEP}]
x11-libs/libXext:0[${MULTILIB_USEDEP}]
x11-libs/libXfixes:0[${MULTILIB_USEDEP}]
- x11-libs/libXi:0[${MULTILIB_USEDEP}]
+ x11-libs/libxkbcommon:0[${MULTILIB_USEDEP}]
x11-libs/libxkbfile:0[${MULTILIB_USEDEP}]
x11-libs/libXrandr:0[${MULTILIB_USEDEP}]
- x11-libs/libXrender:0[${MULTILIB_USEDEP}]
- x11-libs/libXScrnSaver:0[${MULTILIB_USEDEP}]
- x11-libs/libXtst:0[${MULTILIB_USEDEP}]
x11-libs/pango:0[${MULTILIB_USEDEP}]
- appindicator? ( dev-libs/libappindicator:3[${MULTILIB_USEDEP}] )"
+ appindicator? ( dev-libs/libayatana-appindicator )"
-QA_PREBUILT="/opt/slack/chrome-sandbox
- opt/slack/slack
- opt/slack/resources/app.asar.unpacked/node_modules/*
- opt/slack/libffmpeg.so
+QA_PREBUILT="opt/slack/chrome-sandbox
+ opt/slack/chrome_crashpad_handler
opt/slack/libEGL.so
opt/slack/libGLESv2.so
+ opt/slack/libffmpeg.so
+ opt/slack/libvk_swiftshader.so
+ opt/slack/libvulkan.so.1
+ opt/slack/resources/app.asar.unpacked/node_modules/*
+ opt/slack/slack
opt/slack/swiftshader/libEGL.so
- opt/slack/swiftshader/libGLESv2.so
- opt/slack/swiftshader/libvk_swiftshader.so"
+ opt/slack/swiftshader/libGLESv2.so"
S="${WORKDIR}"
@@ -72,8 +69,23 @@ src_prepare() {
if use appindicator ; then
sed -i '/Exec/s|=|=env XDG_CURRENT_DESKTOP=Unity |' \
usr/share/applications/slack.desktop \
- || die "sed failed for slack.desktop"
+ || die "sed failed for appindicator"
+ fi
+
+ if ! use seccomp ; then
+ sed -i '/Exec/s/%U/%U --disable-seccomp-filter-sandbox/' \
+ usr/share/applications/slack.desktop \
+ || die "sed failed for seccomp"
fi
+
+ if use wayland ; then
+ sed -i '/Exec/s/%U/%U --enable-features=WebRTCPipeWireCapturer/' \
+ usr/share/applications/slack.desktop \
+ || die "sed failed for wayland"
+ fi
+
+ rm usr/lib/slack/LICENSE{,S-linux.json} \
+ || die "rm licenses failed"
}
src_install() {
@@ -81,24 +93,22 @@ src_install() {
doicon -s 512 usr/share/pixmaps/slack.png
domenu usr/share/applications/slack.desktop
- insinto /opt/slack
- doins -r usr/lib/slack/.
- fperms +x /opt/slack/slack
+ insinto /opt # wrt 720134
+ cp -a usr/lib/slack "${ED}"/opt || die "cp failed"
+
+ use suid && fperms u+s /opt/slack/chrome-sandbox # wrt 713094
dosym ../../opt/slack/slack usr/bin/slack
pax-mark -m "${ED}"/opt/slack/slack
+
+ # https://bugs.gentoo.org/898912
+ if use appindicator; then
+ dosym ../../usr/lib64/libayatana-appindicator3.so /opt/slack/libappindicator3.so
+ fi
}
pkg_postinst() {
optfeature "storing passwords via gnome-keyring" app-crypt/libsecret
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
+ xdg_pkg_postinst
}
diff --git a/net-im/slack/slack-4.4.2.ebuild b/net-im/slack/slack-4.38.115.ebuild
index 48b3a778dd01..3d7a4b0058ab 100644
--- a/net-im/slack/slack-4.4.2.ebuild
+++ b/net-im/slack/slack-4.38.115.ebuild
@@ -1,63 +1,59 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
MULTILIB_COMPAT=( abi_x86_64 )
-inherit desktop eutils multilib-build pax-utils unpacker xdg-utils
+inherit desktop multilib-build optfeature pax-utils unpacker xdg
DESCRIPTION="Team collaboration tool"
-HOMEPAGE="https://www.slack.com"
-SRC_URI="https://downloads.slack-edge.com/linux_releases/${PN}-desktop-${PV}-amd64.deb"
+HOMEPAGE="https://slack.com"
+SRC_URI="https://downloads.slack-edge.com/releases/linux/${PV}/prod/x64/${PN}-desktop-${PV}-amd64.deb"
LICENSE="all-rights-reserved"
SLOT="0"
KEYWORDS="-* ~amd64"
-IUSE="appindicator suid"
+IUSE="appindicator +seccomp suid wayland"
RESTRICT="bindist mirror"
-RDEPEND="app-accessibility/at-spi2-atk:2[${MULTILIB_USEDEP}]
- app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
- dev-libs/atk:0[${MULTILIB_USEDEP}]
+RDEPEND="app-accessibility/at-spi2-core:2[${MULTILIB_USEDEP}]
dev-libs/expat:0[${MULTILIB_USEDEP}]
dev-libs/glib:2[${MULTILIB_USEDEP}]
dev-libs/nspr:0[${MULTILIB_USEDEP}]
dev-libs/nss:0[${MULTILIB_USEDEP}]
+ dev-libs/wayland[${MULTILIB_USEDEP}]
media-libs/alsa-lib:0[${MULTILIB_USEDEP}]
media-libs/mesa:0[${MULTILIB_USEDEP}]
net-print/cups:0[${MULTILIB_USEDEP}]
sys-apps/dbus:0[${MULTILIB_USEDEP}]
- sys-apps/util-linux:0[${MULTILIB_USEDEP}]
x11-libs/cairo:0[${MULTILIB_USEDEP}]
x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ x11-libs/libdrm:0[${MULTILIB_USEDEP}]
x11-libs/libX11:0[${MULTILIB_USEDEP}]
x11-libs/libxcb:0/1.12[${MULTILIB_USEDEP}]
x11-libs/libXcomposite:0[${MULTILIB_USEDEP}]
- x11-libs/libXcursor:0[${MULTILIB_USEDEP}]
x11-libs/libXdamage:0[${MULTILIB_USEDEP}]
x11-libs/libXext:0[${MULTILIB_USEDEP}]
x11-libs/libXfixes:0[${MULTILIB_USEDEP}]
- x11-libs/libXi:0[${MULTILIB_USEDEP}]
+ x11-libs/libxkbcommon:0[${MULTILIB_USEDEP}]
x11-libs/libxkbfile:0[${MULTILIB_USEDEP}]
x11-libs/libXrandr:0[${MULTILIB_USEDEP}]
- x11-libs/libXrender:0[${MULTILIB_USEDEP}]
- x11-libs/libXScrnSaver:0[${MULTILIB_USEDEP}]
- x11-libs/libXtst:0[${MULTILIB_USEDEP}]
x11-libs/pango:0[${MULTILIB_USEDEP}]
- appindicator? ( dev-libs/libappindicator:3[${MULTILIB_USEDEP}] )"
-
-QA_PREBUILT="/opt/slack/chrome-sandbox
- /opt/slack/libEGL.so
- /opt/slack/libffmpeg.so
- /opt/slack/libGLESv2.so
- /opt/slack/resources/app.asar.unpacked/node_modules/*/*/build/Release/*.node
- /opt/slack/resources/app.asar.unpacked/node_modules/*/build/Release/*.node
- /opt/slack/slack
- /opt/slack/swiftshader/libEGL.so
- /opt/slack/swiftshader/libGLESv2.so
- /opt/slack/swiftshader/libvk_swiftshader.so"
+ appindicator? ( dev-libs/libayatana-appindicator )"
+
+QA_PREBUILT="opt/slack/chrome-sandbox
+ opt/slack/chrome_crashpad_handler
+ opt/slack/libEGL.so
+ opt/slack/libGLESv2.so
+ opt/slack/libffmpeg.so
+ opt/slack/libvk_swiftshader.so
+ opt/slack/libvulkan.so.1
+ opt/slack/resources/app.asar.unpacked/node_modules/*
+ opt/slack/slack
+ opt/slack/swiftshader/libEGL.so
+ opt/slack/swiftshader/libGLESv2.so"
S="${WORKDIR}"
@@ -73,8 +69,23 @@ src_prepare() {
if use appindicator ; then
sed -i '/Exec/s|=|=env XDG_CURRENT_DESKTOP=Unity |' \
usr/share/applications/slack.desktop \
- || die "sed failed for slack.desktop"
+ || die "sed failed for appindicator"
fi
+
+ if ! use seccomp ; then
+ sed -i '/Exec/s/%U/%U --disable-seccomp-filter-sandbox/' \
+ usr/share/applications/slack.desktop \
+ || die "sed failed for seccomp"
+ fi
+
+ if use wayland ; then
+ sed -i '/Exec/s/%U/%U --enable-features=WebRTCPipeWireCapturer/' \
+ usr/share/applications/slack.desktop \
+ || die "sed failed for wayland"
+ fi
+
+ rm usr/lib/slack/LICENSE{,S-linux.json} \
+ || die "rm licenses failed"
}
src_install() {
@@ -82,35 +93,22 @@ src_install() {
doicon -s 512 usr/share/pixmaps/slack.png
domenu usr/share/applications/slack.desktop
- insinto /opt/slack
- doins -r usr/lib/slack/.
-
- # this really should be done a better way than trying to parse
- # the QA_PREBUILT variable
- local path
- for path in ${QA_PREBUILT}; do
- local -a paths=(${D}/${path})
- for path in "${paths[@]}"; do
- fperms +x "${path#${D}/}"
- done
- done
+ insinto /opt # wrt 720134
+ cp -a usr/lib/slack "${ED}"/opt || die "cp failed"
use suid && fperms u+s /opt/slack/chrome-sandbox # wrt 713094
dosym ../../opt/slack/slack usr/bin/slack
pax-mark -m "${ED}"/opt/slack/slack
+
+ # https://bugs.gentoo.org/898912
+ if use appindicator; then
+ dosym ../../usr/lib64/libayatana-appindicator3.so /opt/slack/libappindicator3.so
+ fi
}
pkg_postinst() {
optfeature "storing passwords via gnome-keyring" app-crypt/libsecret
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
+ xdg_pkg_postinst
}
diff --git a/net-im/spectrum2/Manifest b/net-im/spectrum2/Manifest
index 7c194ddbe6e0..ff04b5209c99 100644
--- a/net-im/spectrum2/Manifest
+++ b/net-im/spectrum2/Manifest
@@ -1 +1 @@
-DIST spectrum2-2.0.12.tar.gz 839711 BLAKE2B 22dbc201135008effbd1aac52a708f5c942bd9a3c4a359622d1eb21ce104bdd3a6be64f1cb2ad5950b51e5f1772d77fce088d4a61a56532d970901656176d3f7 SHA512 bcd2797877583e6b59e5f1da430ed049e5bcdddfa9698f6d845f020847405ff8ee01b595d47d414105153e2a00e9a8fac171f45db5d39f72ddf0f6588bc71a36
+DIST spectrum2-2.2.1.tar.gz 666509 BLAKE2B c946cea46d99bd8126ad8270a8a01140d75ff989cf0cc0e2ff19ac830c01df4ad02a296959077f5a56707d509bafe937515f78adf7361a2e261497f5299dfe7d SHA512 c752f043f337157125da800ec5e5ed41b0f0f2bf8ee91c682a228779754557389469eb58610bef7793a0d68a303260f80a38a1519f61b62ba23e9a2222c6f399
diff --git a/net-im/spectrum2/files/spectrum2-2.0.12-boost-173-compatibility.patch b/net-im/spectrum2/files/spectrum2-2.0.12-boost-173-compatibility.patch
deleted file mode 100644
index b9a8adeee5a8..000000000000
--- a/net-im/spectrum2/files/spectrum2-2.0.12-boost-173-compatibility.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 1a6ede2dbf0f621e3e6864675befcbc32e02c8b6 Mon Sep 17 00:00:00 2001
-From: Conrad Kostecki <kostecki@his.de>
-Date: Thu, 14 May 2020 10:34:43 +0200
-Subject: [PATCH] Fix compilation with boost-1.73
-
-Signed-off-by: Conrad Kostecki <conrad@kostecki.com>
----
- include/transport/ThreadPool.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/include/transport/ThreadPool.h b/include/transport/ThreadPool.h
-index 5902f965..ffd07c8e 100644
---- a/include/transport/ThreadPool.h
-+++ b/include/transport/ThreadPool.h
-@@ -1,5 +1,6 @@
- #pragma once
-
-+#include <boost/bind.hpp>
- #include <boost/thread.hpp>
- #include <boost/thread/mutex.hpp>
- #include <queue>
diff --git a/net-im/spectrum2/files/spectrum2-2.0.12-gcc-10-compatibility.patch b/net-im/spectrum2/files/spectrum2-2.0.12-gcc-10-compatibility.patch
deleted file mode 100644
index ad13208b3e13..000000000000
--- a/net-im/spectrum2/files/spectrum2-2.0.12-gcc-10-compatibility.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 95e6968c0f8c95f6bd817e5081e0b10dea9d4269 Mon Sep 17 00:00:00 2001
-From: Conrad Kostecki <kostecki@his.de>
-Date: Wed, 13 May 2020 14:22:27 +0200
-Subject: [PATCH] Fix dfrotz compilation with GCC >= 10
-
-Since GCC enables by default -fno-common,
-the compilation of dfrotz due multiple definitions will fail.
-
-Signed-off-by: Conrad Kostecki <conrad@kostecki.com>
----
- backends/frotz/dfrotz/dumb/dumb_init.c | 2 +-
- backends/frotz/dfrotz/dumb/dumb_input.c | 2 +-
- backends/frotz/dfrotz/dumb/dumb_output.c | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/backends/frotz/dfrotz/dumb/dumb_init.c b/backends/frotz/dfrotz/dumb/dumb_init.c
-index 4b9c6704..35295b74 100644
---- a/backends/frotz/dfrotz/dumb/dumb_init.c
-+++ b/backends/frotz/dfrotz/dumb/dumb_init.c
-@@ -7,7 +7,7 @@
-
- #include "dumb_frotz.h"
-
--f_setup_t f_setup;
-+extern f_setup_t f_setup;
-
- #define INFORMATION "\
- An interpreter for all Infocom and other Z-Machine games.\n\
-diff --git a/backends/frotz/dfrotz/dumb/dumb_input.c b/backends/frotz/dfrotz/dumb/dumb_input.c
-index 4149b2b0..88fc8ae5 100644
---- a/backends/frotz/dfrotz/dumb/dumb_input.c
-+++ b/backends/frotz/dfrotz/dumb/dumb_input.c
-@@ -5,7 +5,7 @@
- */
-
- #include "dumb_frotz.h"
--f_setup_t f_setup;
-+extern f_setup_t f_setup;
-
- static char runtime_usage[] =
- "DUMB-FROTZ runtime help:\n"
-diff --git a/backends/frotz/dfrotz/dumb/dumb_output.c b/backends/frotz/dfrotz/dumb/dumb_output.c
-index 9e505167..6dc7db82 100644
---- a/backends/frotz/dfrotz/dumb/dumb_output.c
-+++ b/backends/frotz/dfrotz/dumb/dumb_output.c
-@@ -7,7 +7,7 @@
-
- #include "dumb_frotz.h"
-
--f_setup_t f_setup;
-+extern f_setup_t f_setup;
-
- static bool show_line_numbers = FALSE;
- static bool show_line_types = -1;
diff --git a/net-im/spectrum2/files/spectrum2.initd b/net-im/spectrum2/files/spectrum2.initd
index 8a35dbe75bc9..0ab25819804d 100644
--- a/net-im/spectrum2/files/spectrum2.initd
+++ b/net-im/spectrum2/files/spectrum2.initd
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
command="/usr/bin/spectrum2_manager"
@@ -41,7 +41,7 @@ stop() {
# Andrey Utkin <andrey_utkin@gentoo.org> (24 Nov 2018)
# Conrad Kostecki <conrad@kostecki.com> (24 Nov 2018)
# We are aware of many security issues caused by careless chowning, see
-# http://michael.orlitzky.com/articles/end_root_chowning_now_(make_etc-init.d_great_again).xhtml
+# https://michael.orlitzky.com/articles/end_root_chowning_now_(make_etc-init.d_great_again).xhtml
# We believe none of these issues apply.
# These pidfiles are not read by any privileged process.
# checkpath here chowns only the dir itself and doesn't act recursively.
diff --git a/net-im/spectrum2/metadata.xml b/net-im/spectrum2/metadata.xml
index 4a71c17c49c2..14c0f5b599ee 100644
--- a/net-im/spectrum2/metadata.xml
+++ b/net-im/spectrum2/metadata.xml
@@ -1,14 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
<name>Conrad Kostecki</name>
</maintainer>
- <maintainer type="person">
- <email>andrey_utkin@gentoo.org</email>
- <name>Andrey Utkin</name>
- </maintainer>
<longdescription>
Spectrum is an open source instant messaging transport.
It allows users to chat together even when they are using
@@ -23,4 +19,7 @@
<flag name="whatsapp">Enables the WhatsApp backend, based on <pkg>net-im/transwhat</pkg>.</flag>
<flag name="twitter">Enables the Twitter backend.</flag>
</use>
+ <upstream>
+ <remote-id type="github">SpectrumIM/spectrum2</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/spectrum2/spectrum2-2.0.12-r2.ebuild b/net-im/spectrum2/spectrum2-2.2.1.ebuild
index e2a557eb7113..659d8085be5d 100644
--- a/net-im/spectrum2/spectrum2-2.0.12-r2.ebuild
+++ b/net-im/spectrum2/spectrum2-2.2.1.ebuild
@@ -1,11 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-utils python-any-r1 systemd
+inherit cmake systemd tmpfiles
DESCRIPTION="An open source instant messaging transport"
HOMEPAGE="https://www.spectrum.im"
@@ -13,9 +11,13 @@ SRC_URI="https://github.com/SpectrumIM/spectrum2/archive/${PV}.tar.gz -> ${P}.ta
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="doc frotz irc mysql postgres purple sms +sqlite test twitter whatsapp xmpp"
-REQUIRED_USE="|| ( mysql postgres sqlite )"
+REQUIRED_USE="
+ || ( mysql postgres sqlite )
+ test? ( irc )
+"
+RESTRICT="!test? ( test )"
RDEPEND="
acct-group/spectrum
@@ -23,13 +25,13 @@ RDEPEND="
dev-libs/boost:=[nls]
dev-libs/expat
dev-libs/libev:=
- dev-libs/log4cxx
+ >=dev-libs/log4cxx-1.0.0:=
dev-libs/jsoncpp:=
- dev-libs/openssl:0=
+ dev-libs/openssl:=
dev-libs/popt
dev-libs/protobuf:=
- net-dns/libidn:0=
- net-im/swift:=
+ net-dns/libidn:=
+ >=net-im/swift-4.0.2-r2:=
net-misc/curl
sys-libs/zlib:=
frotz? ( !games-engines/frotz )
@@ -40,7 +42,7 @@ RDEPEND="
dev-db/mysql-connector-c
)
)
- postgres? ( >=dev-libs/libpqxx-6.4.5:= )
+ postgres? ( dev-libs/libpqxx:= )
purple? (
dev-libs/glib
net-im/pidgin:=
@@ -52,40 +54,21 @@ RDEPEND="
DEPEND="
${RDEPEND}
- doc? ( app-doc/doxygen )
- test? (
- ${PYTHON_DEPS}
- $(python_gen_any_dep 'dev-python/sleekxmpp[${PYTHON_USEDEP}]')
- dev-util/cppunit
- net-irc/ngircd
- )
-"
-
-# Tests are currently restricted, as they do completly fail
-RESTRICT="test"
-
-PATCHES="
- "${FILESDIR}/${P}-boost-173-compatibility.patch"
- "${FILESDIR}/${P}-gcc-10-compatibility.patch"
+ doc? ( app-text/doxygen )
+ test? ( dev-util/cppunit )
"
-python_check_deps() {
- has_version "dev-python/sleekxmpp[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
src_prepare() {
# Respect users LDFLAGS
sed -i -e "s/-Wl,-export-dynamic/& ${LDFLAGS}/" spectrum/src/CMakeLists.txt || die
- cmake-utils_src_prepare
+ cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
+ -DCMAKE_INSTALL_LOCALSTATEDIR="${EPREFIX}/var"
+ -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc"
-DENABLE_DOCS="$(usex doc)"
-DENABLE_FROTZ="$(usex frotz)"
-DENABLE_IRC="$(usex irc)"
@@ -98,18 +81,18 @@ src_configure() {
-DENABLE_TESTS="$(usex test)"
-DENABLE_TWITTER="$(usex twitter)"
-DENABLE_XMPP="$(usex xmpp)"
- -DLIB_INSTALL_DIR="$(get_libdir)"
)
- cmake-utils_src_configure
+ cmake_src_configure
}
src_test() {
- cd tests/libtransport && "${EPYTHON}" ../start.py || die
+ cd "${BUILD_DIR}/tests/libtransport" || die
+ ./libtransport_test || die
}
src_install() {
- cmake-utils_src_install
+ cmake_src_install
diropts -o spectrum -g spectrum
keepdir /var/log/spectrum2 /var/lib/spectrum2
@@ -117,7 +100,22 @@ src_install() {
newinitd "${FILESDIR}"/spectrum2.initd spectrum2
systemd_newunit "${FILESDIR}"/spectrum2.service spectrum2.service
- systemd_newtmpfilesd "${FILESDIR}"/spectrum2.tmpfiles-r1 spectrum2.conf
+ newtmpfiles "${FILESDIR}"/spectrum2.tmpfiles-r1 spectrum2.conf
einstalldocs
}
+
+pkg_postinst() {
+ tmpfiles_process spectrum2.conf
+
+ if [[ ${REPLACING_VERSIONS} ]]; then
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 2.2.0; then
+ ewarn "Starting with Release 2.2.0, the path for spectrum2"
+ ewarn "executable helper files has been changed from '/usr/bin'"
+ ewarn "to '/usr/libexec'. Please update your config files!"
+ break
+ fi
+ done
+ fi
+}
diff --git a/net-im/swift/Manifest b/net-im/swift/Manifest
index d0e86af54c3a..51cfbe5fc7ed 100644
--- a/net-im/swift/Manifest
+++ b/net-im/swift/Manifest
@@ -1 +1,2 @@
-DIST swift-4.0.2.tar.gz 19083393 BLAKE2B de4ad1c3d68dfc4d693cdebdf4e18809210aa4e83af31b77bf730c7018507877852b5ea634623c037250de4005606108bd0372d39177093769c5dc5f72bd4812 SHA512 b7d4b90f387d5ea4ac3ca31794eabd1f12a64274628d75c7570f40269777b9003182884730a6340c5e0b5b7928a68bda5e49be623b47da9fa64fe4c3f25be167
+DIST swift-4.0.3-python3-compatibility.patch.gz 14964 BLAKE2B ec98bee12734eb00037433b2791817d24a0a53effa653268a886b59358fb82f8e6c05739165f2518c9c5ad5b7ddfcef90734964eb6de647a24197e69b333ebc9 SHA512 95e1a0c49158cbf1392442103c960e2d458a99b34c3f32cdb47fec2d195b709d6c4b0c2961b4c49d05c19e590f2e2ca836c6f559b960015030bf8375b0604c3f
+DIST swift-4.0.3.tar.bz2 15124142 BLAKE2B 23896b72ffecc5148ade806ec6610c5edfa67ae9000e28383c7cf5a3c8bf275a6fc8208d1d6e7c7715e75bf133869ed404fd35bfb13998849209def3aab46c07 SHA512 59ebf69391f2cbdce538f0ee925f55eec0e8463c2f9b90899cb314f2a036f40ebdc357c4b6a6d3b71ae800ccf6ee6df5ff6011949ea0bb189cdf3e9f231e9733
diff --git a/net-im/swift/files/swift-4.0.2-make-generated-files-handle-unicode-characters.patch b/net-im/swift/files/swift-4.0.2-make-generated-files-handle-unicode-characters.patch
deleted file mode 100644
index 7fd2e386d9d9..000000000000
--- a/net-im/swift/files/swift-4.0.2-make-generated-files-handle-unicode-characters.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 39ff091cddf8fd5e01047d80c7ed60c150537705 Mon Sep 17 00:00:00 2001
-From: Thanos Doukoudakis <thanos.doukoudakis@isode.com>
-Date: Fri, 11 May 2018 11:26:39 +0100
-Subject: Make generated files handle Unicode characters
-
-This patch handles a case where some of the files used to generate COPYING,
-were containing unicode strings, which could lead to a failure when building
-sid package. The code now will check the type of the string before writing to
-the file, and if needed it will transform it to the appropriate format.
-
-Test-Information:
-Generated the sid package with package_all_platforms script with no problems.
-Created a debian sid box and tested the installation of the generated
-packages. Validated the output generated in Windows 10 and Ubuntu 16.04 builds
-through the "About" dialog in Swift.
-
-Change-Id: I05e518b758f316d9fbf23c1079be5a462e75106c
-
-diff --git a/BuildTools/SCons/Tools/textfile.py b/BuildTools/SCons/Tools/textfile.py
-index 89f8963..9b424f2 100644
---- a/BuildTools/SCons/Tools/textfile.py
-+++ b/BuildTools/SCons/Tools/textfile.py
-@@ -113,7 +113,11 @@ def _action(target, source, env):
- lsep = None
- for s in source:
- if lsep: fd.write(lsep)
-- fd.write(_do_subst(s, subs))
-+ stringtowrite = _do_subst(s, subs)
-+ if isinstance(stringtowrite, str):
-+ fd.write(stringtowrite)
-+ elif isinstance(stringtowrite, unicode):
-+ fd.write(stringtowrite.encode('utf-8'))
- lsep = linesep
- fd.close()
-
---
-cgit v0.10.2-6-g49f6
-
diff --git a/net-im/swift/files/swift-4.0.2-qt-5.11-compatibility.patch b/net-im/swift/files/swift-4.0.2-qt-5.11-compatibility.patch
deleted file mode 100644
index db633945b49d..000000000000
--- a/net-im/swift/files/swift-4.0.2-qt-5.11-compatibility.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 1d18148c86377787a8c77042b12ea66f20cb2ca9 Mon Sep 17 00:00:00 2001
-From: Tobias Markmann <tm@ayena.de>
-Date: Thu, 21 Jun 2018 13:04:56 +0200
-Subject: Add missing include for QAbstractItemModel
-
-This fixes building Swift with Qt 5.11.
-
-Test-Information:
-
-Builds and tests pass on macOS 10.13.5 with Qt 5.11.0.
-
-Change-Id: I1be2cd081d8a520ec38ab7cca5ada0d7fc39b777
-
-diff --git a/Swift/QtUI/UserSearch/QtUserSearchWindow.h b/Swift/QtUI/UserSearch/QtUserSearchWindow.h
-index 0714ac1..fe536ab 100644
---- a/Swift/QtUI/UserSearch/QtUserSearchWindow.h
-+++ b/Swift/QtUI/UserSearch/QtUserSearchWindow.h
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (c) 2010-2016 Isode Limited.
-+ * Copyright (c) 2010-2018 Isode Limited.
- * All rights reserved.
- * See the COPYING file for more information.
- */
-@@ -8,6 +8,7 @@
-
- #include <set>
-
-+#include <QAbstractItemModel>
- #include <QWizard>
-
- #include <Swiften/Base/Override.h>
---
-cgit v0.10.2-6-g49f6
-
diff --git a/net-im/swift/files/swift-4.0.2-qt-5.15-compatibility.patch b/net-im/swift/files/swift-4.0.2-qt-5.15-compatibility.patch
new file mode 100644
index 000000000000..37918db1980f
--- /dev/null
+++ b/net-im/swift/files/swift-4.0.2-qt-5.15-compatibility.patch
@@ -0,0 +1,10 @@
+--- a/Swift/QtUI/Roster/GroupItemDelegate.cpp
++++ b/Swift/QtUI/Roster/GroupItemDelegate.cpp
+@@ -7,6 +7,7 @@
+ #include <Swift/QtUI/Roster/GroupItemDelegate.h>
+
+ #include <QPainter>
++#include <QPainterPath>
+ #include <QPen>
+ #include <QtDebug>
+
diff --git a/net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch b/net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch
new file mode 100644
index 000000000000..4d94c2d10503
--- /dev/null
+++ b/net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch
@@ -0,0 +1,13 @@
+diff --git a/Swift/Controllers/ShowProfileController.h b/Swift/Controllers/ShowProfileController.h
+index 0d01ba1a0..5dc7197ff 100644
+--- a/Swift/Controllers/ShowProfileController.h
++++ b/Swift/Controllers/ShowProfileController.h
+@@ -18,6 +18,8 @@
+
+ #include <Swift/Controllers/UIEvents/UIEvent.h>
+
++#include <map>
++
+ namespace Swift {
+ class VCardManager;
+ class ProfileWindow;
diff --git a/net-im/swift/files/swift-4.0.3-libxml2-2.12-compatibility.patch b/net-im/swift/files/swift-4.0.3-libxml2-2.12-compatibility.patch
new file mode 100644
index 000000000000..b08a480835f3
--- /dev/null
+++ b/net-im/swift/files/swift-4.0.3-libxml2-2.12-compatibility.patch
@@ -0,0 +1,11 @@
+--- a/Swiften/Parser/LibXMLParser.cpp
++++ b/Swiften/Parser/LibXMLParser.cpp
+@@ -97,7 +97,7 @@
+ if (xmlParseChunk(p->context_, data.c_str(), boost::numeric_cast<int>(data.size()), false) == XML_ERR_OK) {
+ return true;
+ }
+- xmlError* error = xmlCtxtGetLastError(p->context_);
++ const xmlError* error = xmlCtxtGetLastError(p->context_);
+ if (error->code == XML_WAR_NS_URI || error->code == XML_WAR_NS_URI_RELATIVE) {
+ xmlCtxtResetLastError(p->context_);
+ p->context_->errNo = XML_ERR_OK;
diff --git a/net-im/swift/files/swift-4.0.3-reproducible-build.patch b/net-im/swift/files/swift-4.0.3-reproducible-build.patch
new file mode 100644
index 000000000000..951678f2303f
--- /dev/null
+++ b/net-im/swift/files/swift-4.0.3-reproducible-build.patch
@@ -0,0 +1,21 @@
+commit 39a684108ae5938105498e7744e70962308cde7b
+Author: kpcyrd <git@rxv.cc>
+Date: Wed Aug 25 23:30:17 2021 +0200
+
+ Reproducible Builds: Sort directory contents at build
+
+diff --git a/Swiften/SConscript b/Swiften/SConscript
+index f52637bdb..334f4489e 100644
+--- a/Swiften/SConscript
++++ b/Swiften/SConscript
+@@ -567,7 +567,9 @@ if env["SCONS_STAGE"] == "build" :
+ swiften_includes = []
+ swiften_public_includes = []
+ top_path = env.Dir("..").abspath
+- for root, dirs, files in os.walk(env.Dir(".").abspath) :
++ for root, dirs, files in sorted(os.walk(env.Dir(".").abspath)) :
++ dirs.sort()
++ files.sort()
+ if root.endswith("UnitTest") :
+ continue
+ for file in files :
diff --git a/net-im/swift/metadata.xml b/net-im/swift/metadata.xml
index 8c02d4f0e0a5..9246b510f67a 100644
--- a/net-im/swift/metadata.xml
+++ b/net-im/swift/metadata.xml
@@ -1,14 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
<name>Conrad Kostecki</name>
</maintainer>
- <maintainer type="person">
- <email>andrey_utkin@gentoo.org</email>
- <name>Andrey Utkin</name>
- </maintainer>
<longdescription>
Swift is an elegant, secure, adaptable and intuitive XMPP client,
with features that make it suitable for a wide range of use scenarios.
@@ -16,8 +12,4 @@
cross-platform, and performant C++ library for
implementing XMPP applications.
</longdescription>
- <use>
- <flag name="client">Build the full graphical XMPP client.</flag>
- <flag name="gconf">Enable configuration through <pkg>gnome-base/gconf</pkg>.</flag>
- </use>
</pkgmetadata>
diff --git a/net-im/swift/swift-4.0.2-r1.ebuild b/net-im/swift/swift-4.0.3-r2.ebuild
index 40f92b5a1ab6..792b487871ed 100644
--- a/net-im/swift/swift-4.0.2-r1.ebuild
+++ b/net-im/swift/swift-4.0.3-r2.ebuild
@@ -1,22 +1,28 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit gnome2-utils scons-utils toolchain-funcs
+LUA_COMPAT=( lua5-{1..2} luajit )
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit lua-single python-any-r1 scons-utils toolchain-funcs
DESCRIPTION="An elegant, secure, adaptable and intuitive XMPP Client"
HOMEPAGE="https://www.swift.im/"
-SRC_URI="https://swift.im/downloads/releases/${P}/${P}.tar.gz"
+SRC_URI="
+ https://swift.im/git/${PN}/snapshot/${PN}-${P}.tar.bz2 -> ${P}.tar.bz2
+ https://dev.gentoo.org/~conikost/distfiles/patches/${P}-python3-compatibility.patch.gz
+"
+S="${WORKDIR}/${PN}-${P}"
LICENSE="BSD BSD-1 CC-BY-3.0 GPL-3 OFL-1.1"
SLOT="4/0"
KEYWORDS="amd64"
-IUSE="client expat gconf +icu +idn lua spell test zeroconf"
+IUSE="expat +icu +idn lua test zeroconf"
REQUIRED_USE="
|| ( icu idn )
- gconf? ( client )
- spell? ( client )
+ lua? ( ${LUA_REQUIRED_USE} )
"
RDEPEND="
@@ -25,32 +31,17 @@ RDEPEND="
dev-libs/openssl:0=
net-libs/libnatpmp
net-libs/miniupnpc:=
- sys-libs/zlib:=
- client? (
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtwebkit:5
- dev-qt/qtx11extras:5
- net-dns/avahi
- )
+ sys-libs/zlib
expat? ( dev-libs/expat )
!expat? ( dev-libs/libxml2:2 )
- gconf? ( gnome-base/gconf:2 )
icu? ( dev-libs/icu:= )
idn? ( net-dns/libidn:= )
- lua? ( dev-lang/lua:= )
- spell? ( app-text/hunspell:= )
+ lua? ( ${LUA_DEPS} )
"
DEPEND="
${RDEPEND}
- >=dev-util/scons-3.0.1-r3
- client? ( dev-qt/linguist-tools:5 )
+ >=dev-build/scons-3.0.1-r3
test? ( net-dns/avahi )
"
@@ -64,14 +55,28 @@ DOCS=(
)
PATCHES=(
- "${FILESDIR}"/${P}-boost-1.69-compatibility.patch
- "${FILESDIR}"/${P}-make-generated-files-handle-unicode-characters.patch
- "${FILESDIR}"/${P}-qt-5.11-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.2-boost-1.69-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.2-qt-5.15-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.3-gcc11-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.3-libxml2-2.12-compatibility.patch
+ "${WORKDIR}"/${PN}-4.0.3-python3-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.3-reproducible-build.patch
)
+pkg_setup() {
+ python-any-r1_pkg_setup
+ use lua && lua-single_pkg_setup
+}
+
src_prepare() {
default
+ # Don't include '/usr/lib*' in the link command line for `swiften-config`
+ sed -e '/_LIBDIRFLAGS/d' -i Swiften/Config/SConscript || die
+
+ # Use correct LIBDIR for Lua
+ sed -e "s/lib/$(get_libdir)/g" -i Sluift/SConscript.variant || die
+
# Hack for finding Qt system libs
mkdir "${T}"/qt || die
ln -s "${EPREFIX}"/usr/$(get_libdir)/qt5/bin "${T}"/qt/bin || die
@@ -79,12 +84,9 @@ src_prepare() {
ln -s "${EPREFIX}"/usr/include/qt5 "${T}"/qt/include || die
# Remove parts of Swift, which a user don't want to compile
- if ! use client; then rm -fr Swift Slimber || die; fi
+ rm -fr Swift Slimber || die
if ! use lua; then rm -fr Sluift || die; fi
- if ! use zeroconf; then
- rm -fr Limber || die
- if use client; then rm -fr Slimber || die; fi
- fi
+ if ! use zeroconf; then rm -fr Limber || die; fi
# Remove '3rdParty', as the system libs should be used
# `CppUnit`, `GoogleTest` and `HippoMocks` are needed for tests
@@ -111,6 +113,11 @@ src_prepare() {
else
rm -fr 3rdParty || die
fi
+
+ if [[ ! -f VERSION.swift ]] ; then
+ # Source tarball from git doesn't include this file
+ echo "${PV}" > VERSION.swift || die
+ fi
}
src_configure() {
@@ -131,9 +138,12 @@ src_configure() {
distcc="no"
experimental="no"
experimental_ft="yes"
- hunspell_enable="$(usex spell)"
+ hunspell_enable="no"
icu="$(usex icu)"
install_git_hooks="no"
+ # Use 'DISABLE' as an invalid lib name, so no editline lib is used,
+ # as current version is not compatible and compilation will fail.
+ editline_libname="DISABLE"
libidn_bundled_enable="false"
libminiupnpc_force_bundled="false"
libnatpmp_force_bundled="false"
@@ -142,14 +152,14 @@ src_configure() {
max_jobs="no"
optimize="no"
qt="${T}/qt"
- qt5="$(usex client)"
+ qt5="no"
swiften_dll="true"
swift_mobile="no"
target="native"
test="none"
- try_avahi="$(usex client)"
+ try_avahi="no"
try_expat="$(usex expat)"
- try_gconf="$(usex gconf)"
+ try_gconf="no"
try_libidn="$(usex idn)"
try_libxml="$(usex !expat)"
tls_backend="openssl"
@@ -158,15 +168,21 @@ src_configure() {
valgrind="no"
zlib_bundled_enable="false"
)
+
+ if use lua; then
+ MYSCONS+=(
+ lua_includedir="$(lua_get_include_dir)"
+ lua_libdir="${EPREFIX}/usr/$(get_libdir)"
+ lua_libname="$(basename -s '.so' $(lua_get_shared_lib))"
+ )
+ fi
}
src_compile() {
local myesconsinstall=(
Swiften
- $(usex client Swift '')
$(usex lua Sluift '')
$(usex zeroconf Limber '')
- $(usex zeroconf "$(usex client Slimber '')" '')
)
escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
@@ -182,27 +198,16 @@ src_test() {
src_install() {
local myesconsinstall=(
- SWIFTEN_INSTALLDIR="${ED%/}/usr"
- SWIFTEN_LIBDIR="${ED%/}/usr/$(get_libdir)"
- $(usex client "SWIFT_INSTALLDIR=${ED%/}/usr" '')
- $(usex lua "SLUIFT_DIR=${ED%/}/usr" '')
- $(usex lua "SLUIFT_INSTALLDIR=${ED%/}/usr" '')
+ SWIFTEN_INSTALLDIR="${ED}/usr"
+ SWIFTEN_LIBDIR="${ED}/usr/$(get_libdir)"
+ $(usex lua "SLUIFT_DIR=${ED}/usr" '')
+ $(usex lua "SLUIFT_INSTALLDIR=${ED}/usr" '')
"${ED}"
)
escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
use zeroconf && dobin Limber/limber
- use zeroconf && use client && newbin Slimber/CLI/slimber slimber-cli
- use zeroconf && use client && newbin Slimber/Qt/slimber slimber-qt
einstalldocs
}
-
-pkg_postinst() {
- use client && gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- use client && gnome2_icon_cache_update
-}
diff --git a/net-im/synapse/Manifest b/net-im/synapse/Manifest
new file mode 100644
index 000000000000..214f043fe576
--- /dev/null
+++ b/net-im/synapse/Manifest
@@ -0,0 +1,88 @@
+DIST aho-corasick-1.0.2.crate 167694 BLAKE2B fa5323cbe6cb73594dfa4c327c64676bc1e006dadc0b9def325974c83b9a769beba02d59a4657ec7a2d0cc511a7b7cc6f72cf57b8f9e639206d1c2bf13107a52 SHA512 5c75451f96fbbd670e6af0e1f54df2bdb57259dfe6898495ac46a5b2fc04f316a4698fd5cfd4ec31a94c298661937a8de08ce97cab3890fb3c015e4a2a67bb7b
+DIST anyhow-1.0.81.crate 45142 BLAKE2B 9b8678c5336fe5fd2823c58eae827f7aba726e12fb6edfa958c6e3b38a96dc3310bc8d044ee2e9db0bc611548f0be9a7b664b75321bd0b8a7e168d27dd3d7e78 SHA512 3d328c6b45a4780cfb6fc8daa5581cb5e45b230cb5f55837b0fcc8331c8d53630950c281115c06b21e655821a46d360c4aa667cbb24e87f3a534206361b08af5
+DIST anyhow-1.0.82.crate 45361 BLAKE2B 558bac4de847a432fc80427e7be4e78cae4b01c4da852eae2121416af4d7e6ddeaeffd7de9bb69e55340b9a228436b975fdea88e380391a77c782a3776b835dd SHA512 e0d25a8c0b9c45e1db2072618097aff3908f70bfcbf0963d3c9dd9c97be27a85c4a763c5cb74e1ccd1b0a2059360e0879df4be80e10e58e0a5346b65f4fa1a69
+DIST arc-swap-1.5.1.crate 66157 BLAKE2B 9060ef4f9d699fadc03be1a116d9301f6308fbb7f8bcad6f01926d584386d26d03f9dd2ea35b6771a6725ee7819e028d0e1b256e8b5f3b812cbd388e757491fb SHA512 8636149e92c068d5ff5352a19c9973e7bf2aba68b9363c783178903a8665f6edabbd30c25ad7992646635efe5830d67c958f8d41b44a4ed1fe5698628b41c074
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST base64-0.21.7.crate 82576 BLAKE2B 25cc8761c14220981ff4ed332058f6179948080cbfa2b225ec1d1602e4af14cd470c969e8b7049117e6fc51a5a24e06b1d27bab844486ecb76409d12e0581d5d SHA512 c6986d88dd9aa081d914f35b4174be4ba874848657ac4b5e63b9b45af765d973289c548ccb5a01584edfc0d8d79ff5be25b51365295d6e7a311bd7f0ae3c0cb9
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST blake2-0.10.6.crate 47234 BLAKE2B e1464e4ae61acf4a646ce548f1e7eeafe277737bff626e7e6813516ad4458459243bf13aeb3d8a8fa40860482b519a3e614e54dd4e906b4a8ff59c2d0df9ac1d SHA512 e88cc9de1bf8a5a86b6d22001fd23bb30c32868bfc55685b7a79d624332aec3122af98bc0618e2b62d5d5731b68ae738e7821bdccffbb83a2fd61a6f8afdb0c6
+DIST block-buffer-0.10.3.crate 10465 BLAKE2B 32f0089971bb759244b73a75bdbbeb2d24f0422e92ceb0ae0afe3c698e3fabb371112a2eba3dab16a3859420d492c0ac984bfbb25e59e0c31951501cc652aab7 SHA512 e29faab70f8f2965a58089728274ec34bc97d681526687868c9cb1a2c145db00717f97e77b79a04fa52bd76817d796e104b509cd2a3163085b214f8eb68ac04f
+DIST bumpalo-3.16.0.crate 85677 BLAKE2B 08da17b757931d2910e0299df53eb62731aa8c4ebd8915859b81d1982b331e7455dfac977c754e500a35ee07ba8eff00a61d2f62be99744e2ddbba06c1268f49 SHA512 a51b75c36f6794db444cab20eeb24f42a319080ecb486a56d254d6f873f3d188b5ccba11db30c068bd0c52c4322d4a3f5f5195c81c94b0bc04387030418835b1
+DIST bytes-1.6.0.crate 60605 BLAKE2B 3e4cd094443969c6062b51917ad9df314b61ec9ddcb0336cf2621d8966c568d5b1fdbf16b11b5e2fab01b43ea76f6609f753eb5c2380a5e4aa8fb6e807a2ff5d SHA512 6507bc4274204d0a19b6a95c3284c52245c71cbf5f2dfb5cd372193d989e49869ec557c0c4e449e96ed4e3028c90606dfb0dcdc1d72bb234a36bc5f344c0a7a8
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST cpufeatures-0.2.12.crate 12837 BLAKE2B 5b518c58c548d9116f94cefc2214fe2faf87c3aaf3fffbb0bf4085f75372cf7fc5144bc3f827101a3a14a51363d06d8075db94ff5ed853ab2ccffaf597728093 SHA512 52742595702fc3371d4126fb355f3d7a6da514a94e43170f1db041cc6c560027f92115eab7846131dba1018ca5c72003ae36f945c1de88d57a0e7f66331623c6
+DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
+DIST digest-0.10.5.crate 19503 BLAKE2B a73ef5f7b85869f8f6e2bd1c83f88f155ffab8ae1c687018ddd12f5806385a2664c163101aec84d4c20647a8bfd04095aa997e088a3f56e2664adabff1c5614f SHA512 3542fc0322a8b10dbc229ae83475a0df5f9beee4f879eacab1fda53a7b61136df2961265472ae66d896681bd17f8a68148b25827733bd782c6bae05d2f307951
+DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST generic-array-0.14.6.crate 15889 BLAKE2B 7beac5446f5da4d077598af43c238eb7e71a12b0b91e6be5dbfc1ca33dc21d128fc93c9c8b18caac4b88830c8c8a643f2033acaca1d9a9f3d95329d042276156 SHA512 254e6fb6658f083f26e022916795c9ebfac241b9df2d811aac8316b17e1375e1c5aa54d72f1bf6c2627a88484a7df4b14eca231c90578e9aa3d9997047fa0f20
+DIST getrandom-0.2.14.crate 37307 BLAKE2B 5904388869335ea904d950ee83ad1867a0d3f6831b7139102b53f4bb4a2c12371c9396f1f1cbcc44e3ce69a4ea316651b1674722071bfa7562385ad4b6a88c33 SHA512 6c334415e09f570e3123e3c6c6eed1727533ac6c9c4142e16ae995c237a16effe146832a891be9fdde4335bd02b454e0fdd9160f20dc02f107ad106756221658
+DIST headers-0.4.0.crate 68864 BLAKE2B 6d026e120073799807a8f7d4c6a7acd83364c7abe905f301a7569033509fbb433d3a77e391c15997740d2f9e92698456d97f1e27cd58010772a53cb081d117c6 SHA512 3b2ff94e0a6c0a23b0e5175213ae45c4d0c5482d883506fb88c17b7238002efeadb00086d98278ea566e97916b3a85084badd5aaf85955340a0a9bb712571d16
+DIST headers-core-0.3.0.crate 2333 BLAKE2B 0a84e5cf8f56fcca6cfe875ed75a292e9cd6bb3eb64160f6645c8128a48f7244569089af4e0a3c5f32670482303ce2821437d2dc01c9e454b0ffceeddc73aba9 SHA512 488af227472332754ddd0a7daabf0a88d592cf017d3267341c5087e94a89c29f44b2ce1a31d722180090d42b2bcad7864bdd266923326ee536789f02132e6f8a
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6
+DIST http-1.1.0.crate 103144 BLAKE2B 7a8c4ffd3ce664e1f575bf4042ac0f15ff42b200fa8c6aa27a6686d77be2de7cd3df242e36f8cb45cdb822bfa96011d5d5dd7bb03122ae5bdcaa15bbf9d40051 SHA512 1c29f25a8895a69d815e21df427dfff7924e9040d01c55cc3256dd0b5e72b670fe75b1414223fb971c16082e4b26217142628be5e0905994da4f08b52e7f4a33
+DIST httpdate-1.0.3.crate 10639 BLAKE2B ce0b401c69f76252639c10f6c2e4a823574a58565d7c5cc3633c72837aa4ec3630b34b148de4378ec498db196e3b2e1413ca0e5a4d9247855380fe19a8c20f94 SHA512 0586888fe89f40b838d5ceb083084d0b8058feff1d2933faedb96896dc86eec68b541a0374a508fd11b86eeadab3c62f88568ffe2c53206fad438373a50b2e5a
+DIST indoc-2.0.4.crate 14311 BLAKE2B 8d604e20825ae64530014081c627abe4ecec6447e1e214408743aca79ed217531baad4bd7021137ae6628555d769a248f06acc556cc3254d2626074aab110a44 SHA512 ef1b8d19d89d848c1133f2865247e0ce23cbe5552454805910ed0478ac4acb11b11629aa4a5ce8756d0ed5cbc0644abedeac0246f433166c68f47cf58cf4487a
+DIST itoa-1.0.4.crate 10601 BLAKE2B 95545252eaabc3114323a44c8b8ea12a91568d9fc8d26ccb3bdd798ac0e04d9a6a9307927c17558f1284fa5491464cfceba2f0b880d00673449b94c0fb783150 SHA512 a70bb6fbdbcab27fbb5a84041bcbad8e0c8fda58d55ca7ac757f7be5cd373101be40df99e9acd6ae49e637e40de037c6bc59560f96c9adeccb2b2e0bf6531e42
+DIST js-sys-0.3.69.crate 81083 BLAKE2B 529c94cd2289883b3b43a848d47d8ae025ad0909548a38ba93ebc684ed3edafab16842b922da6c8b6be5ba39c36a1c05057dd3dd93fc8936d5dac372937ab8f6 SHA512 506722e6dc13484828a4147d974822ff9d103d9e7db58a48181b0957770d9fc43b97605ced105c5b680d8b2cda5fa1705f605707611cb48ed8a45a96d5f196b9
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST libc-0.2.135.crate 604591 BLAKE2B 195f342d1136f63c308371f001c9fc270e151fbda7b316321d319b57bcd46f206bb8b06196f5e9cf8a35b0c397d909f370aef8b119f4bc0eb75b9e245d8e7b4a SHA512 dc8e8fc918c5184de6ae7414b523b06ae91cde252e837e863f8477e9722ccb206a0b27762ac204830e8d09071413029c03802a3ed93bff274c33b2a4055e7806
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST lock_api-0.4.9.crate 25685 BLAKE2B 8adf5c3cccebdf6aff6ec977f230cd2a208b0b188ef57deacbbc6019431f0ede1a760b2384ba3cb49c96b8a589dc56c0f46a6359b3e62277e7ae1a1c3f586fa3 SHA512 9215381d9bb6b80d217c73a900db43df043b3e939b5bd7a292a02e9ab911cf0eacd8f883d35bdf72b3a0e78df8f1bc3e843ca4c775294c7a7a03091dc1a74990
+DIST log-0.4.21.crate 43442 BLAKE2B 8429b3270794d3e2c7f7d5b58bd4fa1abb9d4807ab3a1ac980ac81c11d9544635003d8cf2e608c2c0094865459108a2879f280278e121df68d09bc1561d604ba SHA512 0becc1a06b6e7048cff6c0bb8df49a16ac4772133c00239e9e9459c0811e7715c500f440cf1a9aef8d7ad74f57434559ca9b55917f588b8e476cf36eb6d4e10b
+DIST memchr-2.6.3.crate 94377 BLAKE2B 5f1603397d6703ddd9a1e68429cb6e9dae9021e14692c1e084f3b5c82d36645a1fa930c7a76b97df8e1919402fa7e1c621969ce85ce20c82b3087104afe18f25 SHA512 8d5e1425ea702a0950c95271dfd2e81610731496f77af0d683536b074a22922a7d7ec6da41577487d1d658e3b27257b7d1e142761b523e68760a2f5f24f049bc
+DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55
+DIST mime-0.3.17.crate 15712 BLAKE2B abb892b75b40657d356b6b53b9a45b2c822a05873453e919f2bbfeed9e5c06104f24db9cef2716f302198020870eaf96b2c62aff55cc11d8ca4f4f614d7c8e17 SHA512 e6d2ca92bb58fc747c1bb65a7f9023e5dbf4b94966003a72e4913bcaaeccdd6752725cdbd5081e0fd69d9e8f364d79664fcbe70061737d5c39e5b3e3a154a0d1
+DIST once_cell-1.15.0.crate 31460 BLAKE2B ae4481883865abe6a684d63520fb2e91b64d6ccdd0374464200015640122bd68b8a769309773226c8a31d0119f450ee821a2bd35c346fd86adb4474ea7c28fcf SHA512 934a7c3631e9ca4fa78d9577b6672ca0b2f926a8d6c3be9542b906c5968033446f98f76ae6f368a1a5b92ab9064c31a57d74ab6d2097108029a7ea951541ff7e
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.3.crate 32256 BLAKE2B 79a1924a983b948a5c2b0c074452a7b2b61abda973d3bc8040d9153d34b378f0ee330e36aa813f49544319c479665d6328be71481f2e1e41bc94abb9bfbd12a0 SHA512 fa30db0fc73b268ab8395adb8bda35d12dc15363b247a95b7c4bb848ff9b8dbfb971a20f320b4feff3317d5b533c59b62152e4c652c1809a422c5671310b30df
+DIST portable-atomic-1.6.0.crate 140689 BLAKE2B c91d06e04a87c9a207233d8a850859aa1f5cc43dda8aed34511c3fe9641c27412796539ed045a58e649d2a0c7d71100b6b2d78a0c662fc061fd961a652ae8722 SHA512 b27cf57655a2f1e2d6ea7b45d80b4f9920a836e462f132c50dc1e4d314e162444309de1baecf45dad2defc7a5b99759165e54da9fe759b24092f8cb8755c515c
+DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
+DIST proc-macro2-1.0.76.crate 45660 BLAKE2B 40b538d9d9fec10b9e4b147ce0a86efb10feedf9e0452e5568e8ad7d2b88a201ca6ffd2cd62d8815a1ee72d557fe6280120a913868c3d868c1235686742cd8b8 SHA512 2ea7ade475171166489ab3e745e8c526e49c7521bc39b1bfec6dd2fd0807fd3cc5579235f77534be855f9ecab481205e77e66b14ebb22e66d2c3cff842567247
+DIST pyo3-0.20.3.crate 434673 BLAKE2B 1dcb881fd1fe5c76e9b4951f4d95fcd1daa1845c226a4ab1db4283cabe67bda822ff03e3cc85d797fe4665a1614229e7406dea65ec5e99ce4aac96b973a7f55d SHA512 77cce558fa60bbd8d9981ff5e62fdfa9bac94bd650b287fbf14ac93ef1c326c8ae7fda82d744e3582df03cab8adf490e0f2752fabd9ae3de044e7d80984e0350
+DIST pyo3-build-config-0.20.3.crate 30060 BLAKE2B ef122b0b7d840d5362928bac76e1299b333775ec5c49a3bf23a19eccec074917931356bbf719c6d700999941bb6a396948ee7f8761e685c8e9251af07ba0cadc SHA512 70685415bba443787dabb9c61ca3702aefbcacb0705471b496b4f01efe34291735321d91243355b4be9aed8b243e393c09fb65556f1b926ac7f22f64560bd927
+DIST pyo3-ffi-0.20.3.crate 65024 BLAKE2B 33e79a02c7ab85f4767e02a39d8553ddc015c80d13bea674885ad8a18d89bd90f866cc39d81ecbf56270ebe87d29bca48f635c4e73ec99df02ce425f1427cb31 SHA512 3d1ced58e243be7cee4a3ca831dc08a1631fcd511c707dd3bada87d7662807dea2d88393d76e56ff19a6d1c2804d93b5b6b7b5efd36b9c275d66fa1bb1bfc384
+DIST pyo3-log-0.9.0.crate 14370 BLAKE2B 6a29d627c68763db465f22d4425849455a3e71da30f12346983c3dfb3893f908d4bc9f2c5ddef8a279ed1cbde9b33abc5009af6a9b9ab4c8c5f66675dec2efc8 SHA512 0aee9bdb7c57d9a341cc2ef757c7f0cfcd1585483f6ac71b66522bf94a3058cabe9f92568406dd0f966456b691f1cb9d346225f1dd593a9575e82d4ad349b25d
+DIST pyo3-macros-0.20.3.crate 7920 BLAKE2B 0510accf51cd83390cbb7b6ba4ec9f4610e3dbb7448d1213994013487ae81bb087df1ba0076a3862e5ecfd172b7846f9439a2d86950a93b016aae565ced4f03b SHA512 454f3c0c054aa131ffe955e4be1af061005b9c81b4d80702827e19b983224c118dfea474da515d5fc2c79cfd3fa21204ed4af2d9e81427123e0a78bd246a23f8
+DIST pyo3-macros-backend-0.20.3.crate 49797 BLAKE2B 59c55d482577ce105db3e19a1db794eaab8221d7de01197716b75d5d2602e0f27c86aaae527eae7098eafad311144550bd597efe8cd6560c82dc435021f3428f SHA512 e177ee0d6a538a555fbe9108e3e2c20102622b2c9b9696ae309189e5c4d068efad2132afd4a97d734ebabb4d7146980a26cb68dc05d5eb88f338be2ad0cd651f
+DIST pythonize-0.20.0.crate 11500 BLAKE2B 493efb20ef31e2f984ea6f874ae0d507d459c198d8df43b94fffa2f64ca12295011a94920ef5711b88a9fb42aacec39169259b0cedcdca44544223d0da176414 SHA512 7e6bb5fb5a2006c3268a9f85ce6c3c10a682e5ab1286bdf4185e05f3a39140049a7de4575fd6e6f67d7ab2c0d2125019c79b2e4ac8c55dac39e32f193b831622
+DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
+DIST regex-1.10.4.crate 253191 BLAKE2B 08bdb925efbea1ee9f885a89ec6b4692e39d7b17039f788e5b3c1dbfb7847d4f53b67f0c61e4085af7ef4901e67e33ea94948668bf706fef19b4102a06ef0447 SHA512 88ef121a51759f418d5dc01607a6e02651bd00343dae92962c02a80f30343d3f079a0375457780ce46bf205ca38f279b03989154638199fe2fcede10554bf21b
+DIST regex-automata-0.4.4.crate 617294 BLAKE2B 68f29fae9479a82dbecf8091250b65486c19af2e5c37c1b2df5d12906bac8aaa4d1e577dc0437a2eb46174a9580410e51a2c53ab265dd8af14e0c758888e92ac SHA512 9705f7949b270003c095f1787a3936ab7d4b0dc9f050ee046ef4e96f4f4630ac56cf0dabb0ac3b9120c462aca6344ca60636cb95e0c0d537ace506159c02b15a
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST ryu-1.0.11.crate 47007 BLAKE2B d03e8df69c3b21c1b2e4ffa91ece794f141e9f9bce4e9ed1ebf394b1cb0f796147b86189885f0734df8f431b2d166d8f6ed6a261be398d6d088fd56046a85c2e SHA512 dd2642aab2d3017c31432436226d5350b894c8b88a09395eb7de6350964b3cc48451a829ce78b04a9e4e0480076fe1bddd0604f4e57700faa2d60cac6e361408
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST serde-1.0.197.crate 77087 BLAKE2B 4a4e04ededf5fefaabfcc4e17457db823239e8eeee7631a905ed47800ca10d26a93632e3a9d1b784b83f84168d0d649cfa2e6f5f1e68ab15a68e837cd5b6c699 SHA512 69e42825fce6a0a5d109979785daceacfd6afc5641e202fe83da32e2b1f968416557cce97fa014839e873e65f85c27494c8f8e20e6e9e4fbedf20d0291880410
+DIST serde_derive-1.0.197.crate 55771 BLAKE2B 73708908b6d1e104af4c63b498bd25c5a728e07e22afdf92f15754c0f17636efe44c0560c1f0df1b9a30708e8e8894a62f1ea57c234b6dd861cb9c8dc044eb4b SHA512 669376e248b76a5ee8b9c93fd9fe6d35372e7267fbabc14730539ef28a94e405ee5e9c2cc2846897d59d6153742cdc6799f9e2c87f20b9dad119bd3a86c28994
+DIST serde_json-1.0.115.crate 147100 BLAKE2B baa2dce9d85e331d1308f2ece9dbeff24bcc70e37be3f06c7e819ad9f4eb59fb1f00658736fd336a41a65e3616d1bf75a0c9adb359eb606e1418159a9455132f SHA512 d1a60e20af770fdfe0585853c87c5631e56944a3c1bbdf9e1e91003af8e924a8076335bd37563d167c760aad10d4c08fe59ebd47fc52e461bc3586b835808d22
+DIST sha1-0.10.5.crate 12146 BLAKE2B 476a0c365ab639a0ce427856787595865a60339fd6b81a45f879ff9b9112021d2c3a62e0a817b4555951131a7fe257d0c30988631ddddc3d217274c46c79ebe6 SHA512 1046b91a9ea64b90098ee6e16c63f0620dc7c2dc847d200972a3da3c8d1ac61fa9030682099a411cdd24717b64d488e0b1be1cbe8f7bfee26b8c15cf4f8e5e9b
+DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785
+DIST smallvec-1.10.0.crate 31564 BLAKE2B e3e46a0781d3a7892a739b001592d462d0704f010363984c439e3fe4f75aecb9720648aa1e9bcc56bb3be848dd40cee578212439f78f07a807c9441c3c3e0147 SHA512 a09110184582dcc01d7a0d3fa8f74c17bf726935126d3654667b8e9c4bc43ad16ccfd8fa94feae7d9b31913aa7ee030fe5936e4b44a36302b6ce5fe37372a7ae
+DIST subtle-2.4.1.crate 12630 BLAKE2B 05a90232bfdc2cf67522e2972bddcd8dc9a165b1d1cf775d0b1c8358fc7c4d0559b2b899126b6688b8ef77b8b7580b3b300f74a599a7ee77f99c064a3917693b SHA512 7fd8234b7ffa3ca7e473539cad958df0842186e1dd735905e0d4977564f40a5f2e18b58180fcbe52614a00964dc150bd9f6964500847ea658f22bffe030f5c6a
+DIST syn-2.0.48.crate 250566 BLAKE2B e46b0863af76c3116c84d01b654a9820b7edc51f75c9c5301a7967d12284f78da602409f34fc40524728350dc6b998a4d738f08b8868f95236b3e5d24c460580 SHA512 926c0ad55cc743df20f9166b6d71fd44421aeb1f073fd86b6ddb53e13cd508b539c0360ce64b07b65597bb14639c8f33acf7e60951e1e9128624517aa3aee325
+DIST synapse-1.105.1.gh.tar.gz 8484079 BLAKE2B e4e0f495f749b0dde103788204308b1eaeaca60e99580d5f23c02e5149294771bbf0e53d5a80190fe32e5fb5dac9c6e925b34f11586f9ef1e61f093340286329 SHA512 be597b90c63306bc39f39a1e26f2daa76dcd986b155bcb2a4d191fece3f743004ee5d94723aba0f7d5744f6bf827c4fa26b972c03c0b7216f35838b5f2fffe4d
+DIST synapse-1.106.0.gh.tar.gz 8496922 BLAKE2B 2d078927c89da8fbc794536fbb1b30ec20565b9e6be41e8cbbb043b7a1fec4945d4a396d520d0980380dadde927d6146cc88ca01238c0d9220f093bdf88fce08 SHA512 6d9faca9131431190202947bf995e50c9ff7ea57d0ab8f5be324585223eaacdd925a99c66d2db64da426a0551c86d52a79871e43c08da22dcededbce7a44a2e9
+DIST target-lexicon-0.12.4.crate 23020 BLAKE2B ad9780b9478b00b4fdcb07bd016d83216695413090ac29cca06388c3790e2832c978b1c7e69f6d34bb6fc9adc39c0a0b6b6636e50a9715a9f5f16445dba22d19 SHA512 194fe1946ad8d9fdb383bf8a65374e24d216382c1ed5379dabc98d58842512624c32838b8d6d0658d866f6559d37f1343a30c5809e8914dd85790399252b3e06
+DIST typenum-1.15.0.crate 40741 BLAKE2B 5752d80396d0a37b0069b98ace9efe96d94ccaf41b33b8149c8b8c6a767537dbffe64251bbf61f3812465ecbc8cb45544f177dc97ac9735d84454282e4d1ed66 SHA512 a3c1ceac85e1aed98d0829449c35f4f36db860218b955b4e5f8f01da1d27ee6213f3c60e2b25c3745dcd67369049da5de737a9473fa9402db99cf7cddeb42288
+DIST ulid-1.1.2.crate 11517 BLAKE2B b15ec0ddd8f4936de1533fb347888b0dc6d0755ee7cb8e11a54e70a4accf0f3558b06e5bf48a8f06199b030510dcfbc1d4180d94e9d7516ef7bede728dab2221 SHA512 6bad4dcc2cbd5c05b1d535e6d8bb91da84cf2ee8c2d6c189ce302f5d5c3757d7878ccefaebeaaed93b8b7d90ec4d22033f9aee7f9a22a9329ce9b391934a3b12
+DIST unicode-ident-1.0.5.crate 35455 BLAKE2B 7e14ce97ac53a88ccec015dea690918a673dc5b49e44de7fdcb5421871da35c4f514c6db9a363d6f4bfcf2e9a61a50a593d345d0b6f388ea882b17a00cd0335d SHA512 d355370daac356d900cd4c0a792d6c0eff114524c4bffce4d7e74469fe2117883ee00bf0e27d950b72e88739473f2045d5f83440a0aedfede97b4d9163b64a6c
+DIST unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4ba88ecb409c976905c014f42885372c234a75fbfbedf71dbed779f95f735975d150adacdcb61152a49db4c2 SHA512 2f1eb420ea3653b00d3e5fa0c2c105da8fd8a37cb3e699373c168604b799fccd5f0faf0cddce4212d119c2afb0c86b41efc3a50752b83ff7beda2bd84d360505
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST wasm-bindgen-0.2.92.crate 184119 BLAKE2B ca256c686bb3854492bad6afe3cd27dab314561a1ea2e0205579820066b462bacdb2cc01075fb420bd20eb33b03a648ce1ff46feee04d8759ea8aa990ff8232a SHA512 6e46501276c0d4befbf930c816d6ae6c3764e3b5ce0ef4aafa627a6ea371f1a056ecc15970a817e9e9bf51c0a2ffa57df427d758b2d367beb6a474d75b8939a5
+DIST wasm-bindgen-backend-0.2.92.crate 28348 BLAKE2B 425497aa7a023b70549c55d5a15dfed80877c5503863b186c0a9d11b29551c4606c1cd5961c7dfdeee2eab5662952ad7ad215513e93abe727a33f84b30bd181e SHA512 22e4f5848d62bd1fd55f4f054ea1293e223b3cd6f916bde2523eec10388e733623492c3a3246d61831e696dffdec5d000b95e9aa1217be6e38dd6459872166aa
+DIST wasm-bindgen-macro-0.2.92.crate 13835 BLAKE2B 1f2202fdaeb78c32813eaf08b2fbd7aa9c469228386df71b8ffd81a46374e39a7104b79991f702505f9b7e97957fda8574517fbb03e3f9e93098c4d6e1e46be3 SHA512 78d2ddac88a9ca3ca5eef8a7af81cdf2366187a67d844e69f65f6893d1949f9723ab5f2be762c2217a5c21aee2f3dbc2d5d55ef0c9cbf0dec0d52d67a6ba7462
+DIST wasm-bindgen-macro-support-0.2.92.crate 20092 BLAKE2B 8e274a4053e7afc680740e811c3941478caf5342e2206e3d28cdea9f9514bedbfa4f2b6bc608817306a1c455dd7134b7e17f0f04499f6bfb5302f29b041ac7ae SHA512 92543d2aad0b25798ec20e68832b823610c2c01401088cd9cac1684a86ddd1b567b3e2712acb862060f9c645a0df509b01d9834fd3e13cdaab97960f66d8daa7
+DIST wasm-bindgen-shared-0.2.92.crate 7263 BLAKE2B e54895486b9a31cc4651b7bb042059cc84421708346c06a9764315ebd4f440a1077520c7d325d6889a690b2c06aa185d40cede2dc4d061b363594cbde20fac31 SHA512 70e3a22731ed8aec428433bf30500eb3f62e3b7f4f1be34d8bb3b6f34f99690fc85d49eb413caecab807064494cfec64242c6a42709dffd638046e370bf86e07
+DIST web-time-1.1.0.crate 18026 BLAKE2B cd72e384aca90c79e587448160587531c417f31a32e9ded23e6b78d492d0e517520170fd03177f28870c313b9302b28c32069a2408acccc076a1e4939a2c8f8d SHA512 73e4ef9851de089fde9381a595cb9e37a434f563f1fd350e345f2617b701caf57a9aef739b922b5b10cda131cdf2fd0af42c55603f8973a623a8b6ae70f6cc9f
+DIST windows-sys-0.36.1.crate 3347053 BLAKE2B 818f7812bd9a55a4e95b3d461fa5fcc14569a159882f950d20fd5a6b7d2a2841f082c0bccaab657f5830549e6286a37d9f8fdf825a42403f543b51e35b2d20d4 SHA512 80973e461bef3be0d0d0c13d02b2129aeb0d0700768d637544315654126f101b39f980738035fe325bd96f549493a2245bd7b82511f833efa7bbcb2f62266001
+DIST windows_aarch64_msvc-0.36.1.crate 661960 BLAKE2B d503150a05c4aa6ec376d1094ad24a7a4b3579d8f60cae65f4a98adfe830dd776c8996d5c3acfbfca1a69598475b918b5de2a162e3253b0b28cd6aa17de2dc13 SHA512 d0c352c78caec9c71bbaa1a688baab8f39a33c903c0492b19398c76e08194183e254ecd3a8b24af3e7e5e1d9d97373dcbab54499236829898a4fd153cfde2ccf
+DIST windows_i686_gnu-0.36.1.crate 818115 BLAKE2B fdb78cf88e1049d1ed6c474f870dfd1ff37b48bc24726d754cfec5b3e77075162f291f93aa709c07c9fa38ccb21a6c31cb5149dabc2cc8ad8a85c03408384a0b SHA512 e2c60e6639beb879472a06ed4462667eb4a78385df6bcde1ca579af759cf2b4ac70e84f7dd7b736e7fbd1b129061555671fed4b83bcd81a6083cc013963194a5
+DIST windows_i686_msvc-0.36.1.crate 724575 BLAKE2B cf964bec007d8432e2009644cf7f89ea7d910ccf9512c067b7bf5c6c825208ce4a36e9864c0cbca137f523983eb46e58e4bd01054cecd7ac7126d2ba9f67ac0c SHA512 02bb1507981229422498ce29f6c777d5e412358040128f84b09d948ccddf0461b078a0a20cc7f6ab7da8595121bb369453ae9ea1f0506aab715662e8c631e737
+DIST windows_x86_64_gnu-0.36.1.crate 790934 BLAKE2B 9dec5d966bdc89efbc81989acca242d519f51676ec37487df2bfacd6bfbc5a8de2871be72c5b96a073a899c666e3a39aa60d493e7df39fa90efe869fb744a332 SHA512 598b69e4f2cd3d68f910d526a66dadb465ff30a8c261c9a4455aa1c5b952d23c04f8edaa063cd16fb43564c116a13f06d607f3a0a9c7495054b8bfe1c04d1865
+DIST windows_x86_64_msvc-0.36.1.crate 661999 BLAKE2B 4cf967f10d4ce148bac967598168752d1996b4ddf5278a8fca53360566c37c1a014bfb4dfdc0ae2d96e01196c42eb4906ea80d8e9dd23b9e9f3163631c9e253e SHA512 89c22ed51a74f531662d80ae0fa5e0215728db1e6caf3c13eaeba95a93548b43c00b8474f52553ac866ac83c203b6c22dc44fbc870e882a4c9c97ba54b87c631
diff --git a/net-im/synapse/files/synapse.initd-r1 b/net-im/synapse/files/synapse.initd-r1
new file mode 100644
index 000000000000..f4c53a0f117b
--- /dev/null
+++ b/net-im/synapse/files/synapse.initd-r1
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="Matrix synapse daemon"
+description=""
+command=/usr/bin/synapse_homeserver
+command_args="--daemonize --config-path /etc/synapse/homeserver.yaml"
+command_user="synapse:synapse"
+pidfile=/var/lib/synapse/homeserver.pid
diff --git a/net-im/synapse/files/synapse.service b/net-im/synapse/files/synapse.service
new file mode 100644
index 000000000000..19661e96257e
--- /dev/null
+++ b/net-im/synapse/files/synapse.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=Synapse Matrix homeserver
+After=network.target
+After=postgresql-10.service
+After=postgresql-11.service
+After=postgresql-12.service
+After=postgresql-13.service
+After=postgresql-14.service
+After=postgresql-15.service
+
+[Service]
+ExecStart=/usr/bin/synctl --no-daemonize start /etc/synapse/homeserver.yaml
+ExecStop=/usr/bin/synctl stop /etc/synapse/homeserver.yaml
+ExecReload=/bin/kill -HUP $MAINPID
+Restart=on-failure
+PrivateTmp=true
+User=synapse
+Group=synapse
+WorkingDirectory=/var/lib/synapse
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-im/synapse/metadata.xml b/net-im/synapse/metadata.xml
new file mode 100644
index 000000000000..e365de565af7
--- /dev/null
+++ b/net-im/synapse/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">element-hq/synapse</remote-id>
+ <remote-id type="pypi">matrix-synapse</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/synapse/synapse-1.105.1.ebuild b/net-im/synapse/synapse-1.105.1.ebuild
new file mode 100644
index 000000000000..3d335e9cdf11
--- /dev/null
+++ b/net-im/synapse/synapse-1.105.1.ebuild
@@ -0,0 +1,211 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+CRATES="
+ aho-corasick@1.0.2
+ anyhow@1.0.81
+ arc-swap@1.5.1
+ autocfg@1.1.0
+ bitflags@1.3.2
+ blake2@0.10.6
+ block-buffer@0.10.3
+ cfg-if@1.0.0
+ crypto-common@0.1.6
+ digest@0.10.5
+ generic-array@0.14.6
+ heck@0.4.1
+ hex@0.4.3
+ indoc@2.0.4
+ itoa@1.0.4
+ lazy_static@1.4.0
+ libc@0.2.135
+ lock_api@0.4.9
+ log@0.4.21
+ memchr@2.6.3
+ memoffset@0.9.0
+ once_cell@1.15.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.3
+ portable-atomic@1.6.0
+ proc-macro2@1.0.76
+ pyo3-build-config@0.20.3
+ pyo3-ffi@0.20.3
+ pyo3-log@0.9.0
+ pyo3-macros-backend@0.20.3
+ pyo3-macros@0.20.3
+ pyo3@0.20.3
+ pythonize@0.20.0
+ quote@1.0.35
+ redox_syscall@0.2.16
+ regex-automata@0.4.4
+ regex-syntax@0.8.2
+ regex@1.10.4
+ ryu@1.0.11
+ scopeguard@1.1.0
+ serde@1.0.197
+ serde_derive@1.0.197
+ serde_json@1.0.115
+ smallvec@1.10.0
+ subtle@2.4.1
+ syn@2.0.48
+ target-lexicon@0.12.4
+ typenum@1.15.0
+ unicode-ident@1.0.5
+ unindent@0.2.3
+ version_check@0.9.4
+ windows-sys@0.36.1
+ windows_aarch64_msvc@0.36.1
+ windows_i686_gnu@0.36.1
+ windows_i686_msvc@0.36.1
+ windows_x86_64_gnu@0.36.1
+ windows_x86_64_msvc@0.36.1
+"
+
+inherit cargo distutils-r1 multiprocessing optfeature systemd
+
+DESCRIPTION="Reference implementation of Matrix homeserver"
+HOMEPAGE="
+ https://matrix.org/
+ https://github.com/element-hq/synapse
+"
+SRC_URI="
+ https://github.com/element-hq/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="AGPL-3+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc64"
+IUSE="postgres systemd test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ acct-user/synapse
+ acct-group/synapse
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/bleach[${PYTHON_USEDEP}]
+ >=dev-python/canonicaljson-2[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/ijson[${PYTHON_USEDEP}]
+ dev-python/immutabledict[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ >=dev-python/matrix-common-1.3.0[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/netaddr[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/phonenumbers[${PYTHON_USEDEP}]
+ >=dev-python/pillow-10.0.1[${PYTHON_USEDEP},webp]
+ dev-python/prometheus-client[${PYTHON_USEDEP}]
+ dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/pymacaroons[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/service-identity[${PYTHON_USEDEP}]
+ dev-python/signedjson[${PYTHON_USEDEP}]
+ dev-python/sortedcontainers[${PYTHON_USEDEP}]
+ dev-python/treq[${PYTHON_USEDEP}]
+ dev-python/twisted[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/unpaddedbase64[${PYTHON_USEDEP}]
+ postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] )
+ systemd? ( dev-python/python-systemd[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hiredis[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/pyicu[${PYTHON_USEDEP}]
+ dev-python/txredisapi[${PYTHON_USEDEP}]
+ postgres? ( dev-db/postgresql[server] )
+ )
+"
+
+# Rust extension
+QA_FLAGS_IGNORED="usr/lib/python3.*/site-packages/synapse/synapse_rust.abi3.so"
+
+src_test() {
+ if use postgres; then
+ einfo "Preparing postgres test instance"
+ initdb --pgdata="${T}/pgsql" || die
+ pg_ctl --wait --pgdata="${T}/pgsql" start \
+ --options="-h '' -k '${T}'" || die
+ createdb --host="${T}" synapse_test || die
+
+ # See https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#running-tests-under-postgresql
+ local -x SYNAPSE_POSTGRES=1
+ local -x SYNAPSE_POSTGRES_HOST="${T}"
+ fi
+
+ # This remove is necessary otherwise python is not able to locate
+ # synapse_rust.abi3.so.
+ rm -rf synapse || die
+
+ nonfatal distutils-r1_src_test
+ local ret=${?}
+
+ if use postgres; then
+ einfo "Stopping postgres test instance"
+ pg_ctl --wait --pgdata="${T}/pgsql" stop || die
+ fi
+
+ [[ ${ret} -ne 0 ]] && die
+}
+
+python_test() {
+ "${EPYTHON}" -m twisted.trial -j "$(makeopts_jobs)" tests
+}
+
+src_install() {
+ distutils-r1_src_install
+ keepdir /var/{lib,log}/synapse /etc/synapse
+ fowners synapse:synapse /var/{lib,log}/synapse /etc/synapse
+ fperms 0750 /var/{lib,log}/synapse /etc/synapse
+ newinitd "${FILESDIR}/${PN}.initd-r1" "${PN}"
+ systemd_dounit "${FILESDIR}/synapse.service"
+}
+
+pkg_postinst() {
+ optfeature "Improve user search for international display names" dev-python/pyicu
+ optfeature "Redis support" dev-python/txredisapi
+ optfeature "VoIP relaying on your homeserver with turn" net-im/coturn
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ einfo
+ elog "In order to generate initial configuration run:"
+ elog "sudo -u synapse synapse_homeserver \\"
+ elog " --server-name matrix.domain.tld \\"
+ elog " --config-path /etc/synapse/homeserver.yaml \\"
+ elog " --generate-config \\"
+ elog " --data-directory /var/lib/synapse \\"
+ elog " --report-stats=no"
+ einfo
+ else
+ einfo
+ elog "Please refer to upgrade notes if any special steps are required"
+ elog "to upgrade from the version you currently have installed:"
+ elog
+ elog " https://github.com/element-hq/synapse/blob/develop/docs/upgrade.md"
+ einfo
+ fi
+}
diff --git a/net-im/synapse/synapse-1.106.0.ebuild b/net-im/synapse/synapse-1.106.0.ebuild
new file mode 100644
index 000000000000..63f49a4aa48a
--- /dev/null
+++ b/net-im/synapse/synapse-1.106.0.ebuild
@@ -0,0 +1,237 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+CRATES="
+ aho-corasick@1.0.2
+ anyhow@1.0.82
+ arc-swap@1.5.1
+ autocfg@1.1.0
+ base64@0.21.7
+ bitflags@1.3.2
+ blake2@0.10.6
+ block-buffer@0.10.3
+ bumpalo@3.16.0
+ bytes@1.6.0
+ cfg-if@1.0.0
+ cpufeatures@0.2.12
+ crypto-common@0.1.6
+ digest@0.10.7
+ fnv@1.0.7
+ generic-array@0.14.6
+ getrandom@0.2.14
+ headers-core@0.3.0
+ headers@0.4.0
+ heck@0.4.1
+ hex@0.4.3
+ http@1.1.0
+ httpdate@1.0.3
+ indoc@2.0.4
+ itoa@1.0.4
+ js-sys@0.3.69
+ lazy_static@1.4.0
+ libc@0.2.153
+ lock_api@0.4.9
+ log@0.4.21
+ memchr@2.6.3
+ memoffset@0.9.0
+ mime@0.3.17
+ once_cell@1.15.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.3
+ portable-atomic@1.6.0
+ ppv-lite86@0.2.17
+ proc-macro2@1.0.76
+ pyo3-build-config@0.20.3
+ pyo3-ffi@0.20.3
+ pyo3-log@0.9.0
+ pyo3-macros-backend@0.20.3
+ pyo3-macros@0.20.3
+ pyo3@0.20.3
+ pythonize@0.20.0
+ quote@1.0.35
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ redox_syscall@0.2.16
+ regex-automata@0.4.4
+ regex-syntax@0.8.2
+ regex@1.10.4
+ ryu@1.0.11
+ scopeguard@1.1.0
+ serde@1.0.197
+ serde_derive@1.0.197
+ serde_json@1.0.115
+ sha1@0.10.5
+ sha2@0.10.8
+ smallvec@1.10.0
+ subtle@2.4.1
+ syn@2.0.48
+ target-lexicon@0.12.4
+ typenum@1.15.0
+ ulid@1.1.2
+ unicode-ident@1.0.5
+ unindent@0.2.3
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.92
+ wasm-bindgen-macro-support@0.2.92
+ wasm-bindgen-macro@0.2.92
+ wasm-bindgen-shared@0.2.92
+ wasm-bindgen@0.2.92
+ web-time@1.1.0
+ windows-sys@0.36.1
+ windows_aarch64_msvc@0.36.1
+ windows_i686_gnu@0.36.1
+ windows_i686_msvc@0.36.1
+ windows_x86_64_gnu@0.36.1
+ windows_x86_64_msvc@0.36.1
+"
+
+inherit cargo distutils-r1 multiprocessing optfeature systemd
+
+DESCRIPTION="Reference implementation of Matrix homeserver"
+HOMEPAGE="
+ https://matrix.org/
+ https://github.com/element-hq/synapse
+"
+SRC_URI="
+ https://github.com/element-hq/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="AGPL-3+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="postgres systemd test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ acct-user/synapse
+ acct-group/synapse
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/bleach[${PYTHON_USEDEP}]
+ >=dev-python/canonicaljson-2[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/ijson[${PYTHON_USEDEP}]
+ dev-python/immutabledict[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ >=dev-python/matrix-common-1.3.0[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/netaddr[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/phonenumbers[${PYTHON_USEDEP}]
+ >=dev-python/pillow-10.0.1[${PYTHON_USEDEP},webp]
+ dev-python/prometheus-client[${PYTHON_USEDEP}]
+ dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/pymacaroons[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/service-identity[${PYTHON_USEDEP}]
+ dev-python/signedjson[${PYTHON_USEDEP}]
+ dev-python/sortedcontainers[${PYTHON_USEDEP}]
+ dev-python/treq[${PYTHON_USEDEP}]
+ dev-python/twisted[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/unpaddedbase64[${PYTHON_USEDEP}]
+ postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] )
+ systemd? ( dev-python/python-systemd[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hiredis[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/pyicu[${PYTHON_USEDEP}]
+ dev-python/txredisapi[${PYTHON_USEDEP}]
+ postgres? ( dev-db/postgresql[server] )
+ )
+"
+
+# Rust extension
+QA_FLAGS_IGNORED="usr/lib/python3.*/site-packages/synapse/synapse_rust.abi3.so"
+
+src_test() {
+ if use postgres; then
+ einfo "Preparing postgres test instance"
+ initdb --pgdata="${T}/pgsql" || die
+ pg_ctl --wait --pgdata="${T}/pgsql" start \
+ --options="-h '' -k '${T}'" || die
+ createdb --host="${T}" synapse_test || die
+
+ # See https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#running-tests-under-postgresql
+ local -x SYNAPSE_POSTGRES=1
+ local -x SYNAPSE_POSTGRES_HOST="${T}"
+ fi
+
+ # This remove is necessary otherwise python is not able to locate
+ # synapse_rust.abi3.so.
+ rm -rf synapse || die
+
+ nonfatal distutils-r1_src_test
+ local ret=${?}
+
+ if use postgres; then
+ einfo "Stopping postgres test instance"
+ pg_ctl --wait --pgdata="${T}/pgsql" stop || die
+ fi
+
+ [[ ${ret} -ne 0 ]] && die
+}
+
+python_test() {
+ "${EPYTHON}" -m twisted.trial -j "$(makeopts_jobs)" tests
+}
+
+src_install() {
+ distutils-r1_src_install
+ keepdir /var/{lib,log}/synapse /etc/synapse
+ fowners synapse:synapse /var/{lib,log}/synapse /etc/synapse
+ fperms 0750 /var/{lib,log}/synapse /etc/synapse
+ newinitd "${FILESDIR}/${PN}.initd-r1" "${PN}"
+ systemd_dounit "${FILESDIR}/synapse.service"
+}
+
+pkg_postinst() {
+ optfeature "Improve user search for international display names" dev-python/pyicu
+ optfeature "Redis support" dev-python/txredisapi
+ optfeature "VoIP relaying on your homeserver with turn" net-im/coturn
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ einfo
+ elog "In order to generate initial configuration run:"
+ elog "sudo -u synapse synapse_homeserver \\"
+ elog " --server-name matrix.domain.tld \\"
+ elog " --config-path /etc/synapse/homeserver.yaml \\"
+ elog " --generate-config \\"
+ elog " --data-directory /var/lib/synapse \\"
+ elog " --report-stats=no"
+ einfo
+ else
+ einfo
+ elog "Please refer to upgrade notes if any special steps are required"
+ elog "to upgrade from the version you currently have installed:"
+ elog
+ elog " https://github.com/element-hq/synapse/blob/develop/docs/upgrade.md"
+ einfo
+ fi
+}
diff --git a/net-im/teams/Manifest b/net-im/teams/Manifest
deleted file mode 100644
index 5e3ca47a7416..000000000000
--- a/net-im/teams/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST teams_1.3.00.5153_amd64.deb 68143908 BLAKE2B fc540de9c70c825b58a6bbc30a8d15882dc80af3b725224617c32a988fa58498e9efafe3b3fcfebab3c5d98c7629cc00fd8e5b5f7a1b3df305449c6a0644b8d3 SHA512 bac34d936e9c34a9d3b31ed800a32c187154dbcf787da350e75e3c63103cbe41872cd98551204e922198ce1d86a06a9fa8b6020b7682b9aea15ff583e446dfca
-DIST teams_1.3.00.958_amd64.deb 65064414 BLAKE2B 4f8788f7a9d3a2cc032e873453469dd3f2a5bd9dd43c60de4b8719e7fafcf903bf266b35b2da16c593005fa1a4dc275bc65cc6164654b0df909a564ddc4cc00e SHA512 ee698784a0c91346306466a1b794c4d1b4ff01ede2869cc7c4731e62ebf16e6f18b65aa0b03452c1011ddd5c654808f1725f62a62a43814cacb9d7a2934fb7c3
diff --git a/net-im/teams/metadata.xml b/net-im/teams/metadata.xml
deleted file mode 100644
index 80a71f597854..000000000000
--- a/net-im/teams/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>dilfridge@gentoo.org</email>
- <name>Andreas K. Huettel</name>
- </maintainer>
-</pkgmetadata>
diff --git a/net-im/teams/teams-1.3.00.5153.ebuild b/net-im/teams/teams-1.3.00.5153.ebuild
deleted file mode 100644
index 1993a0370f1c..000000000000
--- a/net-im/teams/teams-1.3.00.5153.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop unpacker xdg-utils
-
-DESCRIPTION="Microsoft Teams, an Office 365 multimedia collaboration client, pre-release"
-HOMEPAGE="https://products.office.com/en-us/microsoft-teams/group-chat-software/"
-SRC_URI="https://packages.microsoft.com/repos/ms-teams/pool/main/t/${PN}/${PN}_${PV}_amd64.deb"
-
-LICENSE="ms-teams-pre"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-RESTRICT="bindist mirror splitdebug test"
-IUSE=""
-
-QA_PREBUILT="*"
-
-# libasound2 (>= 1.0.16), libatk-bridge2.0-0 (>= 2.5.3), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.17), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0),
-# libexpat1 (>= 2.0.1), libgcc1 (>= 1:3.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.35.8), libgtk-3-0 (>= 3.9.10), libnspr4 (>= 2:4.9-2~), libnss3
-# (>= 2:3.22), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libsecret-1-0 (>= 0.7), libuuid1 (>= 2.16), libx11-6 (>= 2:1.4.99.1), libx11-xcb1,
-# libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxkbfile1,
-# libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, apt-transport-https, libfontconfig1 (>= 2.11.0), libdbus-1-3 (>= 1.6.18), libstdc++6 (>= 4.8.1)
-RDEPEND="
- app-accessibility/at-spi2-atk
- app-crypt/libsecret
- dev-libs/atk
- dev-libs/expat
- dev-libs/glib
- dev-libs/nspr
- dev-libs/nss
- gnome-base/libgnome-keyring
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/mesa
- media-video/ffmpeg[chromium]
- net-print/cups
- sys-apps/dbus
- sys-apps/util-linux
- x11-libs/cairo
- x11-libs/cairo
- x11-libs/gdk-pixbuf
- x11-libs/gtk+:3
- x11-libs/libX11
- x11-libs/libXScrnSaver
- x11-libs/libXcomposite
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXtst
- x11-libs/libxcb
- x11-libs/libxkbfile
- x11-libs/pango
-"
-
-S="${WORKDIR}"
-
-src_install() {
- rm _gpgorigin || die
- doins -r .
-
- fperms +x /usr/bin/teams
- fperms +x /usr/share/teams/teams
-
- # use system ffmpeg
- rm -f "${D}"/usr/share/teams/libffmpeg.so || die
-
- cat > 99teams <<-EOF
- LDPATH=${EROOT%/}/usr/$(get_libdir)/chromium
- EOF
- doenvd 99teams
-
- # use system mesa
- rm -f "${D}"/usr/share/teams/libEGL.so || die
- rm -f "${D}"/usr/share/teams/libGLESv2.so || die
- rm -f "${D}"/usr/share/teams/swiftshader/libEGL.so || die
- rm -f "${D}"/usr/share/teams/swiftshader/libGLESv2.so || die
-
- sed -i '/OnlyShowIn=/d' "${S}"/usr/share/applications/teams.desktop || die
- domenu usr/share/applications/teams.desktop
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
diff --git a/net-im/teams/teams-1.3.00.958.ebuild b/net-im/teams/teams-1.3.00.958.ebuild
deleted file mode 100644
index bc3dc51c39a3..000000000000
--- a/net-im/teams/teams-1.3.00.958.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Microsoft Teams, an Office 365 multimedia collaboration client, pre-release"
-HOMEPAGE="https://teams.microsoft.com/downloads#allDevicesSection"
-SRC_URI="teams_1.3.00.958_amd64.deb"
-
-LICENSE="ms-teams-pre"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-RESTRICT="bindist fetch mirror splitdebug"
-IUSE=""
-
-QA_PREBUILT="*"
-
-# libasound2 (>= 1.0.16), libatk-bridge2.0-0 (>= 2.5.3), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.17), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0),
-# libexpat1 (>= 2.0.1), libgcc1 (>= 1:3.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.35.8), libgtk-3-0 (>= 3.9.10), libnspr4 (>= 2:4.9-2~), libnss3
-# (>= 2:3.22), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libsecret-1-0 (>= 0.7), libuuid1 (>= 2.16), libx11-6 (>= 2:1.4.99.1), libx11-xcb1,
-# libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxkbfile1,
-# libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, apt-transport-https, libfontconfig1 (>= 2.11.0), libdbus-1-3 (>= 1.6.18), libstdc++6 (>= 4.8.1)
-RDEPEND="
- media-libs/alsa-lib
- app-accessibility/at-spi2-atk
- dev-libs/atk
- x11-libs/cairo
- net-print/cups
- dev-libs/expat
- x11-libs/gdk-pixbuf
- dev-libs/glib
- x11-libs/gtk+:3
- dev-libs/nspr
- dev-libs/nss
- x11-libs/pango
- x11-libs/cairo
- app-crypt/libsecret
- sys-apps/util-linux
- x11-libs/libX11
- x11-libs/libxcb
- x11-libs/libXcomposite
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXi
- x11-libs/libxkbfile
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXScrnSaver
- x11-libs/libXtst
- media-libs/fontconfig
- sys-apps/dbus
- gnome-base/libgnome-keyring
-"
-
-src_unpack() {
- default
- mkdir "${S}" || die
- cd "${S}" || die
- unpack ../data.tar.xz
-}
-
-src_install() {
- mv -v "${S}/"* "${ED}/" || die
-}
diff --git a/net-im/telegram-desktop-bin/Manifest b/net-im/telegram-desktop-bin/Manifest
index 070a3f7fb9ea..bddecd66dc26 100644
--- a/net-im/telegram-desktop-bin/Manifest
+++ b/net-im/telegram-desktop-bin/Manifest
@@ -1,6 +1,6 @@
-DIST tdesktop-2.1.1.tar.gz 14020023 BLAKE2B 5fe70c6c224da0f7a890cf33ec01e39b692799515251d99a46a578e5025ad66f677a800feffb71710466dec34a0fbc887c1be6d851f34d6644511f756e3dd04b SHA512 02051c85b092a2a38762ec2e00b556901651204c29e1a9da46af474dfd6300b1eed7c4023450302e75e86e28e4bf0acc9ba99bf44ff225cf105920f01e9e89d8
-DIST tdesktop-2.1.3.tar.gz 14432478 BLAKE2B 4b51896205ad0f88f0e6f21bd3a51e5bb8d8303ac27a16cd16590035c6b884621206005e64c844d283290c61badbe8f0d7c4613c8b604618c2f50c27ea4a94e6 SHA512 b320fc023bfa612fd7a7d221d160b10f63bcbfb341f9e2cc300d428c6a8a23cec59298460599bb6f1db94b115c00e89741dd537778abc75aa4ad3831574c0e71
-DIST tsetup.2.1.1.tar.xz 35162344 BLAKE2B 82a78901b6ce33d1cc73e6cc5eb487549e75e93ecb986adc7b9b7d4cdfd86d7849666c29fe7a9fad4279970ad6eb49555e5e4076e61ae1bbb525dbd33cd16258 SHA512 ee1c0eb8a71383fefbeaebcfbca8492098a0215c45b0954df5b3ffb138535a070b6478883e5c0625940a6467ccdf9dfce5aebcfc5fbb5bdd4e3c5b7d9b672127
-DIST tsetup.2.1.3.tar.xz 35657980 BLAKE2B c32890b307ef8fa8b377a76bcb97b91ebc98c4d639a58f83407beabfb245e51a62cddf2fe4a932e698c3418be502c1fb013fb040a458a0460b8f2dcea27f8131 SHA512 392468fa889168ecfdbe5b6f631b297344f81e6a4ad1fe28d560708d97f1ad147b0c0313fb8ca2780b4b394116d35e5cf65838f06ee818664df20fed255bd30e
-DIST tsetup32.2.1.1.tar.xz 38129352 BLAKE2B 5f9d6440526ac7ee79cfdd4d8417b1420874422e97754bb83d9534464f23eae4974f4ed4a23ef640e822ff5dd332170271998b33b3959355af34794af34391db SHA512 aff5eefc244c670757a55789a940c4496352b66df47238cd98ad6a44c2e9ff9740bfb2b85767d700c8faaf594b612b951e684436d40db710f8c95590e683b55f
-DIST tsetup32.2.1.3.tar.xz 38630432 BLAKE2B de6ccecba96c4d2b9d9da50f135d2207ea6d1c67a4b700fedc609c45f429d2e443724bfc1fe97de63d8ce8022bea8d96e549ea3145b3c6e8f153884ed3d133bb SHA512 6d2ca6a119a82f53a56485ae06bae80b593b24bc5822b91545e3572581bbdb4f69c979b462e935ce6b3d5dcca409802b650e879400e47ea77339388debbc63b0
+DIST tdesktop-4.15.2.tar.gz 19263533 BLAKE2B 078d9b93f60f8eec5fe09e73628cafd9e6b20393a6445da149e0b85befc5a492aff2952f150f4e6895f1305d222022f1cb9ce1e124a68838141e470453820fdb SHA512 d30cd363e2eab9b38c448ebd4c22ee98cf46d6e7a932c7469be5f950fba6dbb0d73cb86ae8439d989e8985cc6eb382ca930cad3c2511404c3cebcaf7c92b8049
+DIST tdesktop-4.16.6.tar.gz 19360605 BLAKE2B 35ff32e1d04bc792327bbb744c6026ffc5dda940f1e547aab844458f557132757af7fbecf2ed235eb4f7c599cf3120f09a745ada4e7e8331a1866637e6def22e SHA512 f8439685d31446c1a5439522f445448e5eac37c32dfe5154941090ebeebb0181b918daa445dd5909be89e5757b4ef572de59987b85d31bd8725215fe501df35f
+DIST tdesktop-4.16.8.tar.gz 19360758 BLAKE2B d939ca2296be93c02a552726b0cab3efff84adbe969d3659c8f1ff7ff14be01e4e19aea12630cabe2771c8ebfd00d8ef6284d1c94257b506c34a5c9a525e0f91 SHA512 77b9dd8b0207196d5e43501b3fa39cd77e46b846801efc00067dbe3c777f8b4874ee5840fdead1cdfd8c765582f9ce8038b48bb53b703c22427becdc4f498074
+DIST tsetup.4.15.2.tar.xz 54162852 BLAKE2B 6fa57b21de36f1e387bd9233f3e9045e30be73d33066dffc5756e6076267048fa8b959eece6bdd9ade1d3096faf0e6ace1d0c1f6565a9ac8b9a84c4423454c5b SHA512 12c72c02b8b69f4685ca5dcebdd784dd263a1cb0c117306b188e0d4fc79c978010bd697a2446692af6b9bd21382a9bf312bd27bb3da63b661a9e35578dd7b8a6
+DIST tsetup.4.16.6.tar.xz 57015068 BLAKE2B d5ee30156b6338138095a32a41ce8807e9e32b76d05fbb43834138e13183953df59820a30df0e2e55becefab777105a0ca94c591351ff2aa438a855c10cd8b0d SHA512 2f17fe18ce0baee75797a2686d2834b9c66b51fd29bca31490e4544aa17e25ae833fa657239afd011c5846e76a2b134ca64960db0e9f2d38d6e769cdf99b0aeb
+DIST tsetup.4.16.8.tar.xz 56726632 BLAKE2B e3323903ca989d780f1a4ae20fa94eab6d17d2ee3505b689a7468e2e068ac68e17666a39400218a8cd40dbb59096a2a70e3a5767ea55eba0233a9fa9fe6e02cc SHA512 bc6d0bdee19286ccb06ceb6540d5f67b85735ec452ea69e0d550f64d3d54c718d309b211b19302849649b7fef979d91bf365f65c024f8891f387a2713629d711
diff --git a/net-im/telegram-desktop-bin/files/telegram-desktop-bin b/net-im/telegram-desktop-bin/files/telegram-desktop-bin
deleted file mode 100644
index 954b3bdeaea5..000000000000
--- a/net-im/telegram-desktop-bin/files/telegram-desktop-bin
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-# this wrapper disables the auto-updater of telegram-desktop
-# This program is licensed under the same license as telegram-desktop
-
-# telegram-desktop fails to set RestartCommand with the session manager
-# exclude it from session management to prevent restarts without the argument
-unset SESSION_MANAGER
-
-exec /usr/lib/telegram-desktop-bin/Telegram -externalupdater $@
diff --git a/net-im/telegram-desktop-bin/metadata.xml b/net-im/telegram-desktop-bin/metadata.xml
index 80595dda442e..398b85731d09 100644
--- a/net-im/telegram-desktop-bin/metadata.xml
+++ b/net-im/telegram-desktop-bin/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>henning@hennsch.de</email>
<name>Henning Schild</name>
</maintainer>
- <maintainer type="person">
- <email>NP-Hardass@gentoo.org</email>
- <name>NP-Hardass</name>
- </maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
@@ -17,4 +13,3 @@
<remote-id type="github">telegramdesktop/tdesktop</remote-id>
</upstream>
</pkgmetadata>
-
diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.1.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.1.ebuild
deleted file mode 100644
index c0971f7fc9b5..000000000000
--- a/net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop eutils xdg
-
-DESCRIPTION="Official desktop client for Telegram (binary package)"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="
- https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
- amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
- x86? ( https://updates.tdesktop.com/tlinux32/tsetup32.${PV}.tar.xz )
-"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-
-QA_PREBUILT="usr/lib/${PN}/Telegram"
-
-RDEPEND="
- dev-libs/glib:2
- dev-libs/gobject-introspection
- >=media-libs/fontconfig-2.13
- >=sys-apps/dbus-1.4.20
- x11-libs/libX11
- >=x11-libs/libxcb-1.10[xkb]
-"
-
-S="${WORKDIR}/Telegram"
-
-src_install() {
- exeinto /usr/lib/${PN}
- doexe "Telegram"
- newbin "${FILESDIR}"/${PN} "telegram-desktop"
-
- local icon_size
- for icon_size in 16 32 48 64 128 256 512; do
- newicon -s "${icon_size}" \
- "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/icon${icon_size}.png" \
- telegram.png
- done
-
- domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/telegramdesktop.desktop
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- optfeature "spell checker support" app-text/enchant
-}
diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.3.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.3.ebuild
deleted file mode 100644
index c0971f7fc9b5..000000000000
--- a/net-im/telegram-desktop-bin/telegram-desktop-bin-2.1.3.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop eutils xdg
-
-DESCRIPTION="Official desktop client for Telegram (binary package)"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="
- https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
- amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
- x86? ( https://updates.tdesktop.com/tlinux32/tsetup32.${PV}.tar.xz )
-"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-
-QA_PREBUILT="usr/lib/${PN}/Telegram"
-
-RDEPEND="
- dev-libs/glib:2
- dev-libs/gobject-introspection
- >=media-libs/fontconfig-2.13
- >=sys-apps/dbus-1.4.20
- x11-libs/libX11
- >=x11-libs/libxcb-1.10[xkb]
-"
-
-S="${WORKDIR}/Telegram"
-
-src_install() {
- exeinto /usr/lib/${PN}
- doexe "Telegram"
- newbin "${FILESDIR}"/${PN} "telegram-desktop"
-
- local icon_size
- for icon_size in 16 32 48 64 128 256 512; do
- newicon -s "${icon_size}" \
- "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/icon${icon_size}.png" \
- telegram.png
- done
-
- domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/telegramdesktop.desktop
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- optfeature "spell checker support" app-text/enchant
-}
diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-4.15.2.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-4.15.2.ebuild
new file mode 100644
index 000000000000..19bc56b0ce5c
--- /dev/null
+++ b/net-im/telegram-desktop-bin/telegram-desktop-bin-4.15.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature xdg
+
+DESCRIPTION="Official desktop client for Telegram (binary package)"
+HOMEPAGE="https://desktop.telegram.org"
+SRC_URI="
+ https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
+ amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
+"
+
+LICENSE="GPL-3-with-openssl-exception"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+QA_PREBUILT="usr/bin/telegram-desktop"
+
+RDEPEND="
+ !net-im/telegram-desktop
+ sys-libs/glibc
+ dev-libs/glib:2
+ >=media-libs/fontconfig-2.13
+ media-libs/freetype:2
+ virtual/opengl
+ x11-libs/gtk+:3[X,wayland]
+ x11-libs/libX11
+ >=x11-libs/libxcb-1.10
+"
+
+S="${WORKDIR}/Telegram"
+
+src_prepare() {
+ default
+
+ sed -i -e \
+ 's/^Exec=@CMAKE_INSTALL_FULL_BINDIR@\/telegram-desktop/Exec=\/usr\/bin\/telegram-desktop/' \
+ "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service || die
+}
+
+src_install() {
+ newbin Telegram telegram-desktop
+
+ insinto /usr/share/TelegramDesktop/externalupdater.d/
+ newins - externalupdater <<<"${EPREFIX}/usr/bin/telegram-desktop"
+
+ local icon_size
+ for icon_size in 16 32 48 64 128 256 512; do
+ newicon -s "${icon_size}" \
+ "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/icon${icon_size}.png" \
+ telegram.png
+ done
+
+ domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.desktop
+ insinto /usr/share/dbus-1/services
+ doins "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "spell checker support" app-text/enchant
+}
diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.6.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.6.ebuild
new file mode 100644
index 000000000000..19bc56b0ce5c
--- /dev/null
+++ b/net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.6.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature xdg
+
+DESCRIPTION="Official desktop client for Telegram (binary package)"
+HOMEPAGE="https://desktop.telegram.org"
+SRC_URI="
+ https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
+ amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
+"
+
+LICENSE="GPL-3-with-openssl-exception"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+QA_PREBUILT="usr/bin/telegram-desktop"
+
+RDEPEND="
+ !net-im/telegram-desktop
+ sys-libs/glibc
+ dev-libs/glib:2
+ >=media-libs/fontconfig-2.13
+ media-libs/freetype:2
+ virtual/opengl
+ x11-libs/gtk+:3[X,wayland]
+ x11-libs/libX11
+ >=x11-libs/libxcb-1.10
+"
+
+S="${WORKDIR}/Telegram"
+
+src_prepare() {
+ default
+
+ sed -i -e \
+ 's/^Exec=@CMAKE_INSTALL_FULL_BINDIR@\/telegram-desktop/Exec=\/usr\/bin\/telegram-desktop/' \
+ "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service || die
+}
+
+src_install() {
+ newbin Telegram telegram-desktop
+
+ insinto /usr/share/TelegramDesktop/externalupdater.d/
+ newins - externalupdater <<<"${EPREFIX}/usr/bin/telegram-desktop"
+
+ local icon_size
+ for icon_size in 16 32 48 64 128 256 512; do
+ newicon -s "${icon_size}" \
+ "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/icon${icon_size}.png" \
+ telegram.png
+ done
+
+ domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.desktop
+ insinto /usr/share/dbus-1/services
+ doins "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "spell checker support" app-text/enchant
+}
diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.8.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.8.ebuild
new file mode 100644
index 000000000000..19bc56b0ce5c
--- /dev/null
+++ b/net-im/telegram-desktop-bin/telegram-desktop-bin-4.16.8.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature xdg
+
+DESCRIPTION="Official desktop client for Telegram (binary package)"
+HOMEPAGE="https://desktop.telegram.org"
+SRC_URI="
+ https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
+ amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
+"
+
+LICENSE="GPL-3-with-openssl-exception"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+QA_PREBUILT="usr/bin/telegram-desktop"
+
+RDEPEND="
+ !net-im/telegram-desktop
+ sys-libs/glibc
+ dev-libs/glib:2
+ >=media-libs/fontconfig-2.13
+ media-libs/freetype:2
+ virtual/opengl
+ x11-libs/gtk+:3[X,wayland]
+ x11-libs/libX11
+ >=x11-libs/libxcb-1.10
+"
+
+S="${WORKDIR}/Telegram"
+
+src_prepare() {
+ default
+
+ sed -i -e \
+ 's/^Exec=@CMAKE_INSTALL_FULL_BINDIR@\/telegram-desktop/Exec=\/usr\/bin\/telegram-desktop/' \
+ "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service || die
+}
+
+src_install() {
+ newbin Telegram telegram-desktop
+
+ insinto /usr/share/TelegramDesktop/externalupdater.d/
+ newins - externalupdater <<<"${EPREFIX}/usr/bin/telegram-desktop"
+
+ local icon_size
+ for icon_size in 16 32 48 64 128 256 512; do
+ newicon -s "${icon_size}" \
+ "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/icon${icon_size}.png" \
+ telegram.png
+ done
+
+ domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.desktop
+ insinto /usr/share/dbus-1/services
+ doins "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "spell checker support" app-text/enchant
+}
diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest
index bb2f95a6036e..4bc494714237 100644
--- a/net-im/telegram-desktop/Manifest
+++ b/net-im/telegram-desktop/Manifest
@@ -1,7 +1,4 @@
-DIST tdesktop-2.0.1-full.tar.gz 26106949 BLAKE2B 3975e7d42af8b323a86408e2301b292d94b308413bb92d135673fb12851cd6672156dcf9b631482fa9b8dc9361d9593dc1104c8c335e0c610706b308414db01b SHA512 99cd7c5ca1e9dd75ecd98d272522b0e4aab2d46525e3d0c306503b7a00c9d25c1646e9d7462182682a58947c7435864af805a3b6f85906d8b21e5675cc8383cb
-DIST tdesktop-2.1.0-full.tar.gz 26133964 BLAKE2B c5eb476ea3ed02c2618e5b770bdce365bcf0d6124f75558570189e07e9dcd9f6f3282d53fec621be736cbd1269a9dd820629d4d9a36167d8f71109bfcd5a52e2 SHA512 46f5453c64d1dbd4cf8adde73fcc48e6b6f795972ab0f6516cb55112f47d5af990a049da356bedb81e6d3f7103c14a7be45369ff9a5a1812c07a1bfcda70646d
-DIST tdesktop-2.1.1-full.tar.gz 26178569 BLAKE2B 377820af9d2ceeab18fa1ca0458803770b9e1cf211ba9bac7f21ae75fcb8e59269ad742c9fc0acd1b6d484d36057c872146cfdba0653bd2461f3a585222cf0b0 SHA512 aa542c029ead2d1b6c398ecca949b86fae8f37094ceb462ace4628f8e53882faf35b3c2e4fe03dd2e4e17b07412896f7b05d6748b13c99a3bac117b7449d69a8
-DIST tdesktop-2.1.2-full.tar.gz 35603888 BLAKE2B 40ca92e5d7bcc291ce8b8ad4404dd27399dc5dd710e869759800c694c36721db892f1da9273c718672e2cea7d918059035f0af3e8cfd9a7b42f3f24b7d34b5a7 SHA512 c23d9a961132cd2592ce8f728ed7592091a8c2a1d94797facd93516ab0c9194bd5b90ba7a7d4e8aa778940bc4a23d4ac69507a9f150c3bf4e743c6659e545ccf
-DIST tdesktop-2.1.3-full.tar.gz 36121092 BLAKE2B 667f73ef9ea41e06b9cd536eacc1d84229376f78662f8e82916bbefde035145454c0c9a62b7fbe613dd1e502ae522ab88d23db8bfbc6e3cb7abe1e319cbd92b0 SHA512 ec5743a15fcc051cfea9379ecd5811a9300b46b29108a813a67575e2b2a99839c83943c5513f17a1119869f722519628884aa9af63cbf4b65640944c16ff27e9
-DIST tdesktop-2.1.4-full.tar.gz 36377172 BLAKE2B 115f98879539ad66d57cba1b725f65558804536318d72532a6c93e17626341199f3fc9ea446f11b6a31b5e526cb102faec1db94e54800dc96dfbb038bc42670a SHA512 5b27633cdcb4edb61af983c1e4867bac3d7d0864e100855ea3f00c1eb1037e6a9f43414c09211282b5b677603ddfaedbcf4cbf482502ca4e33152e417068c959
-DIST tdesktop-2.1.6-full.tar.gz 36478989 BLAKE2B 4c5364e560500efd445232c05556d1bdce63881b179906cef2602161944ac45d63af19c6f97b57dec9224c12a5b083c83fee4cbb56986c3edbbe3d76710f16c7 SHA512 a6a105676d8d24ec3414895cadc664829c5abc041d8614409e22d7964d7280e44df35ece5fca18a0cd127f65bd363abc1e5c36807b0031eabd6eb77c7effdfb8
+DIST tdesktop-4.15.0-full.tar.gz 68286818 BLAKE2B 2bd4d59370a4f97aa3c1b1d64fa7eea114539edcff46ea30a5361cefeeb1de8a1954be91a1a420ddc1b1a30970944387c2cd3749badaa494e53862066c624ac3 SHA512 95aa5f14a9a88b9c6421049445f59f1c5c5d7ab4ca4e8b8f4ab7389bdb8f3cc6b29fea270574881633035acec769ba271261f84ec269010c63af28a03719da98
+DIST tdesktop-4.15.2-full.tar.gz 69539402 BLAKE2B 95d6cd3eead56f7cb2aeafd0cc1a05d740ec243644e6d318f415a7fa6c8ad94d3a95cfc9082ba04507a024c81bfc15700ad6adcbfd932ca1993a3310744ac196 SHA512 6e65183d5e77d17e11d0c70e1654373e69f6243f2879cf403701e23acd5aed9df6c6892a1c7c83fd975a858e90e20d73824d0754a2f96ad5af6e3de6515e2627
+DIST tdesktop-4.16.6-full.tar.gz 70435773 BLAKE2B 5b66ba9e7a4cbbadcfd271bd33940ccf928e32b7b008b60b710095ff3b60255257b56746b5344100f034164949f428cfd19727f5d5a9f364eba7e7f6b58853fb SHA512 5b580d36c8b8a90981c3541d4c148df37bb7ebdec0970bfbfe4c1a9a1175e3cf41c2a14d854d7d917482aa9086ee712844ec40780741df22ad6d42fcf3c48f1f
+DIST tdesktop-4.16.8-full.tar.gz 70436084 BLAKE2B 5e64372de39a94b2fb7d4b0b8cb4896e9f4bb9eb1421898f30b686a6ce02141cebc42e2be280107ccbbda771f868de365267248dbdab393d88e204fa197f5e3d SHA512 7d9d8ab4c62cf9e4f44ff879953f3d543427f7fd80682f6d08b58fb3dec481b0082086c3958e38b809b886359a76b1f5450142dbcfb58c867014d78f5fa19f60
diff --git a/net-im/telegram-desktop/files/2.1.0-kde-dir.patch b/net-im/telegram-desktop/files/2.1.0-kde-dir.patch
deleted file mode 100644
index b936275e3613..000000000000
--- a/net-im/telegram-desktop/files/2.1.0-kde-dir.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 7bc86cc9af28ba3d04a5cb69f6f7c16bfe7f8719 Mon Sep 17 00:00:00 2001
-From: Ilya Fedin <fedin-ilja2010@ya.ru>
-Date: Tue, 21 Apr 2020 23:05:17 +0400
-Subject: [PATCH] Fix directory opening with portal and use them by default
- with KDE
-
----
- .../SourceFiles/platform/linux/file_utilities_linux.cpp | 6 +++---
- Telegram/SourceFiles/platform/linux/specific_linux.cpp | 2 +-
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/Telegram/SourceFiles/platform/linux/file_utilities_linux.cpp b/Telegram/SourceFiles/platform/linux/file_utilities_linux.cpp
-index 47dd56a411..88f8a69a91 100644
---- a/Telegram/SourceFiles/platform/linux/file_utilities_linux.cpp
-+++ b/Telegram/SourceFiles/platform/linux/file_utilities_linux.cpp
-@@ -83,11 +83,11 @@ constexpr auto kPreviewHeight = 512;
- using Type = ::FileDialog::internal::Type;
-
- #ifndef TDESKTOP_DISABLE_GTK_INTEGRATION
--bool NativeSupported() {
-+bool NativeSupported(Type type = Type::ReadFile) {
- #ifndef TDESKTOP_FORCE_GTK_FILE_DIALOG
- return false;
- #endif // TDESKTOP_FORCE_GTK_FILE_DIALOG
-- return !Platform::UseXDGDesktopPortal()
-+ return (!Platform::UseXDGDesktopPortal() || type == Type::ReadFolder)
- && Platform::internal::GdkHelperLoaded()
- && (Libs::gtk_widget_hide_on_delete != nullptr)
- && (Libs::gtk_clipboard_store != nullptr)
-@@ -192,7 +192,7 @@ bool Get(
- parent = parent->window();
- }
- #ifndef TDESKTOP_DISABLE_GTK_INTEGRATION
-- if (NativeSupported()) {
-+ if (NativeSupported(type)) {
- return GetNative(
- parent,
- files,
-diff --git a/Telegram/SourceFiles/platform/linux/specific_linux.cpp b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
-index 0bb3963420..c12e5a0780 100644
---- a/Telegram/SourceFiles/platform/linux/specific_linux.cpp
-+++ b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
-@@ -266,7 +266,7 @@ bool UseXDGDesktopPortal() {
- const auto envVar = qEnvironmentVariableIsSet("TDESKTOP_USE_PORTAL");
- const auto portalPresent = IsXDGDesktopPortalPresent();
-
-- return envVar && portalPresent;
-+ return (DesktopEnvironment::IsKDE() || envVar) && portalPresent;
- }();
-
- return UsePortal;
diff --git a/net-im/telegram-desktop/files/tdesktop-4.10.0-system-cppgir.patch b/net-im/telegram-desktop/files/tdesktop-4.10.0-system-cppgir.patch
new file mode 100644
index 000000000000..39f30ff0d2d2
--- /dev/null
+++ b/net-im/telegram-desktop/files/tdesktop-4.10.0-system-cppgir.patch
@@ -0,0 +1,32 @@
+Use system cppgir
+
+https://github.com/desktop-app/cmake_helpers/issues/282
+https://github.com/desktop-app/cmake_helpers/pull/305
+--- tdesktop-4.10.0-full.orig/cmake/external/glib/CMakeLists.txt
++++ tdesktop-4.10.0-full/cmake/external/glib/CMakeLists.txt
+@@ -7,14 +7,6 @@
+ add_library(external_glib INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_glib ALIAS external_glib)
+
+-function(add_cppgir) # isolate scope
+- set(BUILD_TESTING OFF)
+- set(BUILD_DOC OFF)
+- set(BUILD_EXAMPLES OFF)
+- add_subdirectory(cppgir EXCLUDE_FROM_ALL)
+-endfunction()
+-add_cppgir()
+-
+ include(generate_cppgir.cmake)
+ generate_cppgir(external_glib Gio-2.0)
+
+--- tdesktop-4.10.0-full.orig/cmake/external/glib/generate_cppgir.cmake
++++ tdesktop-4.10.0-full/cmake/external/glib/generate_cppgir.cmake
+@@ -4,6 +4,8 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+
++find_package(CppGir REQUIRED)
++
+ function(generate_cppgir target_name gir)
+ # cppgir generates all the dependent headers everytime, better to have a global folder
+ set(gen_dst ${CMAKE_BINARY_DIR}/gen)
diff --git a/net-im/telegram-desktop/files/tdesktop-4.10.5-qt_compare.patch b/net-im/telegram-desktop/files/tdesktop-4.10.5-qt_compare.patch
new file mode 100644
index 000000000000..f481ddd74d7c
--- /dev/null
+++ b/net-im/telegram-desktop/files/tdesktop-4.10.5-qt_compare.patch
@@ -0,0 +1,12 @@
+diff --git a/Telegram/lib_base/base/qt/qt_compare.h b/Telegram/lib_base/base/qt/qt_compare.h
+index ca03fa2..d1eb6ab 100644
+--- a/Telegram/lib_base/base/qt/qt_compare.h
++++ b/Telegram/lib_base/base/qt/qt_compare.h
+@@ -10,6 +10,7 @@
+ #include <gsl/pointers>
+
+ #include <QString>
++#include <variant>
+
+ #if !defined(__apple_build_version__) || (__apple_build_version__ > 12000032)
+
diff --git a/net-im/telegram-desktop/files/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch b/net-im/telegram-desktop/files/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch
new file mode 100644
index 000000000000..d56bacea69f8
--- /dev/null
+++ b/net-im/telegram-desktop/files/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch
@@ -0,0 +1,43 @@
+Only link jemalloc for the Telegram binary
+
+Some combination of factors is making the different codegen tools hang when
+jemalloc is linked for those, and they're ran under portage's sandbox. Since
+this is only used during build-time, and jemalloc is merely necessary to
+improve runtime memory use, it's unnecessary to use it for anything else.
+
+https://bugs.gentoo.org/802624
+
+--- tdesktop-4.2.4-full.orig/Telegram/CMakeLists.txt
++++ tdesktop-4.2.4-full/Telegram/CMakeLists.txt
+@@ -1478,6 +1478,14 @@
+ desktop-app::external_wayland_client
+ )
+ endif()
++
++ if (NOT DESKTOP_APP_DISABLE_JEMALLOC)
++ target_link_libraries(Telegram
++ PRIVATE
++ $<TARGET_OBJECTS:desktop-app::linux_jemalloc_helper>
++ $<LINK_ONLY:desktop-app::external_jemalloc>
++ )
++ endif()
+ endif()
+
+ if (build_macstore)
+--- tdesktop-4.2.4-full.orig/cmake/options_linux.cmake
++++ tdesktop-4.2.4-full/cmake/options_linux.cmake
+@@ -78,14 +78,6 @@
+ )
+ endif()
+
+-if (NOT DESKTOP_APP_DISABLE_JEMALLOC)
+- target_link_libraries(common_options
+- INTERFACE
+- $<TARGET_OBJECTS:desktop-app::linux_jemalloc_helper>
+- $<LINK_ONLY:desktop-app::external_jemalloc>
+- )
+-endif()
+-
+ if (DESKTOP_APP_USE_ALLOCATION_TRACER)
+ target_link_options(common_options
+ INTERFACE
diff --git a/net-im/telegram-desktop/metadata.xml b/net-im/telegram-desktop/metadata.xml
index 5eb4b12ceaa6..0b48d04a08ee 100644
--- a/net-im/telegram-desktop/metadata.xml
+++ b/net-im/telegram-desktop/metadata.xml
@@ -1,12 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <maintainer type="person" proxied="yes">
+ <email>esteve.varela@gmail.com</email>
+ <name>Esteve Varela Colominas</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>aliaksei.urbanski@gmail.com</email>
+ <name>Aliaksei Urbanski</name>
+ </maintainer>
+ <maintainer type="person" proxied="proxy">
+ <email>dlan@gentoo.org</email>
+ <name>Yixun Lan</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
</maintainer>
<use>
- <flag name="enchant">Enable the app-text/aspell spell-checking backend</flag>
- <flag name="hunspell">Enable the app-text/hunspell spell-checking backend</flag>
+ <flag name="enchant">Use the <pkg>app-text/enchant</pkg> spell-checking backend instead of <pkg>app-text/hunspell</pkg></flag>
+ <flag name="fonts">Use builtin patched copy of open-sans fonts (overrides fontconfig)</flag>
+ <flag name="qt6">Build with Qt6 support</flag>
+ <flag name="qt6-imageformats">Add support for HEIF, AVIF and JpegXL by bundling kde-frameworks/kimageformats</flag>
</use>
+ <upstream>
+ <remote-id type="github">telegramdesktop/tdesktop</remote-id>
+ <bugs-to>https://github.com/telegramdesktop/tdesktop/issues</bugs-to>
+ <changelog>https://github.com/telegramdesktop/tdesktop/releases</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/telegram-desktop/telegram-desktop-2.0.1-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-2.0.1-r1.ebuild
deleted file mode 100644
index 8760bb8f5936..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.0.1-r1.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- >=dev-cpp/ms-gsl-2.1.0
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200301[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.0.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.0.ebuild
deleted file mode 100644
index 07c9b19ab458..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.1.0.ebuild
+++ /dev/null
@@ -1,136 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- >=dev-cpp/ms-gsl-2.1.0
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200301[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=( "${FILESDIR}/${PV}-kde-dir.patch" )
-
-src_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.1.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.1.ebuild
deleted file mode 100644
index 9dad2e7e8a3a..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.1.1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200301[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
- if has ccache ${FEATURES}; then
- ewarn
- 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_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- # TODO: unbundle GSL, version 3.0.1 required and has nasty googletest dep
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_GSL=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.2.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.2.ebuild
deleted file mode 100644
index 9dad2e7e8a3a..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.1.2.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200301[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
- if has ccache ${FEATURES}; then
- ewarn
- 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_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- # TODO: unbundle GSL, version 3.0.1 required and has nasty googletest dep
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_GSL=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.3.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.3.ebuild
deleted file mode 100644
index 9dad2e7e8a3a..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.1.3.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200301[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
- if has ccache ${FEATURES}; then
- ewarn
- 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_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- # TODO: unbundle GSL, version 3.0.1 required and has nasty googletest dep
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_GSL=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.4.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.4.ebuild
deleted file mode 100644
index 9dad2e7e8a3a..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.1.4.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200301[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
- if has ccache ${FEATURES}; then
- ewarn
- 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_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- # TODO: unbundle GSL, version 3.0.1 required and has nasty googletest dep
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_GSL=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.6.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.6.ebuild
deleted file mode 100644
index 3206772347bb..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-2.1.6.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit cmake desktop flag-o-matic python-any-r1 xdg-utils
-
-MY_P="tdesktop-${PV}-full"
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="GPL-3-with-openssl-exception"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
-IUSE="+alsa +dbus enchant +hunspell libressl pulseaudio +spell wayland +X"
-
-RDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-arch/xz-utils
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- dev-cpp/range-v3
- dev-libs/xxhash
- dev-qt/qtcore:5
- dev-qt/qtgui:5[jpeg,png,wayland?,X(-)?]
- dev-qt/qtimageformats:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5[png,X(-)?]
- media-fonts/open-sans
- media-libs/fontconfig:=
- >=media-libs/libtgvoip-2.4.4_p20200430[alsa?,pulseaudio?]
- media-libs/openal[alsa?,pulseaudio?]
- media-libs/opus:=
- media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
- sys-libs/zlib[minizip]
- virtual/libiconv
- dbus? (
- dev-qt/qtdbus:5
- dev-libs/libdbusmenu-qt[qt5(+)]
- )
- enchant? ( app-text/enchant:= )
- hunspell? ( >=app-text/hunspell-1.7:= )
- pulseaudio? ( media-sound/pulseaudio )
-"
-
-DEPEND="
- ${PYTHON_DEPS}
- ${RDEPEND}
-"
-
-BDEPEND="
- >=dev-util/cmake-3.16
- virtual/pkgconfig
-"
-
-REQUIRED_USE="
- || ( alsa pulseaudio )
- || ( X wayland )
- spell? (
- ^^ ( enchant hunspell )
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
- if has ccache ${FEATURES}; then
- ewarn
- 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_configure() {
- local mycxxflags=(
- -Wno-deprecated-declarations
- -Wno-error=deprecated-declarations
- -Wno-switch
- )
-
- append-cxxflags "${mycxxflags[@]}"
-
- # TODO: unbundle header-only libs, ofc telegram uses git versions...
- # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots
- # EXPECTED VARIANT
- # TODO: unbundle GSL, version 3.0.1 required and has nasty googletest dep
- local mycmakeargs=(
- -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
- -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
- -DDESKTOP_APP_USE_PACKAGED=ON
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_GSL=OFF
- -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
- -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
- -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended)
- -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
- )
-
- 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_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-4.15.0-r2.ebuild b/net-im/telegram-desktop/telegram-desktop-4.15.0-r2.ebuild
new file mode 100644
index 000000000000..bd0835bbd860
--- /dev/null
+++ b/net-im/telegram-desktop/telegram-desktop-4.15.0-r2.ebuild
@@ -0,0 +1,237 @@
+# Copyright 2020-2024 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 ~loong ~ppc64 ~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]
+ !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_p20240110
+ >=dev-cpp/ms-gsl-4
+ dev-cpp/expected-lite
+ dev-cpp/range-v3
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/cmake-3.16
+ >=dev-cpp/cppgir-0_p20230926
+ 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() {
+ # Having user paths sneak into the build environment through the
+ # XDG_DATA_DIRS variable causes all sorts of weirdness with cppgir:
+ # - bug 909038: can't read from flatpak directories (fixed upstream)
+ # - bug 920819: system-wide directories ignored when variable is set
+ export XDG_DATA_DIRS="${EPREFIX}/usr/share"
+
+ # 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}
+
+ # Override new cmake.eclass defaults (https://bugs.gentoo.org/921939)
+ # Upstream never tests this any other way
+ -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
+
+ # 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.15.2-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-4.15.2-r1.ebuild
new file mode 100644
index 000000000000..a33208b90fa5
--- /dev/null
+++ b/net-im/telegram-desktop/telegram-desktop-4.15.2-r1.ebuild
@@ -0,0 +1,237 @@
+# Copyright 2020-2024 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 ~loong ~ppc64 ~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]
+ !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_p20240110
+ >=dev-cpp/ms-gsl-4
+ dev-cpp/expected-lite
+ dev-cpp/range-v3
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/cmake-3.16
+ >=dev-cpp/cppgir-0_p20230926
+ 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() {
+ # Having user paths sneak into the build environment through the
+ # XDG_DATA_DIRS variable causes all sorts of weirdness with cppgir:
+ # - bug 909038: can't read from flatpak directories (fixed upstream)
+ # - bug 920819: system-wide directories ignored when variable is set
+ export XDG_DATA_DIRS="${EPREFIX}/usr/share"
+
+ # 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}
+
+ # Override new cmake.eclass defaults (https://bugs.gentoo.org/921939)
+ # Upstream never tests this any other way
+ -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
+
+ # 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.16.6.ebuild b/net-im/telegram-desktop/telegram-desktop-4.16.6.ebuild
new file mode 100644
index 000000000000..96d25257595e
--- /dev/null
+++ b/net-im/telegram-desktop/telegram-desktop-4.16.6.ebuild
@@ -0,0 +1,246 @@
+# Copyright 2020-2024 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 ~loong ~ppc64 ~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]
+ !enchant? ( >=app-text/hunspell-1.7:= )
+ enchant? ( app-text/enchant:= )
+ jemalloc? ( dev-libs/jemalloc:= )
+ !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-2.0_p20240315
+ >=dev-cpp/ms-gsl-4
+ dev-cpp/expected-lite
+ dev-cpp/range-v3
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/cmake-3.16
+ >=dev-cpp/cppgir-2.0_p20240315
+ dev-util/gdbus-codegen
+ virtual/pkgconfig
+ wayland? ( dev-util/wayland-scanner )
+"
+
+PATCHES=(
+ "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch"
+ "${FILESDIR}/tdesktop-4.10.0-system-cppgir.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() {
+ # Having user paths sneak into the build environment through the
+ # XDG_DATA_DIRS variable causes all sorts of weirdness with cppgir:
+ # - bug 909038: can't read from flatpak directories (fixed upstream)
+ # - bug 920819: system-wide directories ignored when variable is set
+ export XDG_DATA_DIRS="${EPREFIX}/usr/share"
+
+ # 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}
+
+ # Override new cmake.eclass defaults (https://bugs.gentoo.org/921939)
+ # Upstream never tests this any other way
+ -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
+
+ # 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.16.8.ebuild b/net-im/telegram-desktop/telegram-desktop-4.16.8.ebuild
new file mode 100644
index 000000000000..96d25257595e
--- /dev/null
+++ b/net-im/telegram-desktop/telegram-desktop-4.16.8.ebuild
@@ -0,0 +1,246 @@
+# Copyright 2020-2024 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 ~loong ~ppc64 ~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]
+ !enchant? ( >=app-text/hunspell-1.7:= )
+ enchant? ( app-text/enchant:= )
+ jemalloc? ( dev-libs/jemalloc:= )
+ !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-2.0_p20240315
+ >=dev-cpp/ms-gsl-4
+ dev-cpp/expected-lite
+ dev-cpp/range-v3
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/cmake-3.16
+ >=dev-cpp/cppgir-2.0_p20240315
+ dev-util/gdbus-codegen
+ virtual/pkgconfig
+ wayland? ( dev-util/wayland-scanner )
+"
+
+PATCHES=(
+ "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch"
+ "${FILESDIR}/tdesktop-4.10.0-system-cppgir.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() {
+ # Having user paths sneak into the build environment through the
+ # XDG_DATA_DIRS variable causes all sorts of weirdness with cppgir:
+ # - bug 909038: can't read from flatpak directories (fixed upstream)
+ # - bug 920819: system-wide directories ignored when variable is set
+ export XDG_DATA_DIRS="${EPREFIX}/usr/share"
+
+ # 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}
+
+ # Override new cmake.eclass defaults (https://bugs.gentoo.org/921939)
+ # Upstream never tests this any other way
+ -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
+
+ # 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/telepathy-connection-managers/metadata.xml b/net-im/telepathy-connection-managers/metadata.xml
index 25bf943ffb69..574ffb9cab54 100644
--- a/net-im/telepathy-connection-managers/metadata.xml
+++ b/net-im/telepathy-connection-managers/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
+ <!-- maintainer-needed -->
<use>
<flag name="gadu">Enable Gadu Gadu protocol support.</flag>
<flag name="icq">Enable ICQ IM protocol support.</flag>
diff --git a/net-im/telepathy-connection-managers/telepathy-connection-managers-2-r2.ebuild b/net-im/telepathy-connection-managers/telepathy-connection-managers-2-r2.ebuild
index 0627c47dfaee..b63d9561bd30 100644
--- a/net-im/telepathy-connection-managers/telepathy-connection-managers-2-r2.ebuild
+++ b/net-im/telepathy-connection-managers/telepathy-connection-managers-2-r2.ebuild
@@ -1,19 +1,17 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
DESCRIPTION="Meta-package for Telepathy Connection Managers"
HOMEPAGE="https://telepathy.freedesktop.org/"
-SRC_URI=""
+
LICENSE="metapackage"
SLOT="0"
-
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-linux"
-IUSE="gadu icq +irc meanwhile msn sip sipe +xmpp yahoo steam zeroconf"
+IUSE="gadu icq +irc meanwhile msn sip sipe steam +xmpp yahoo zeroconf"
-DEPEND=""
# These version support the 0.24.0 Telepathy specification
# They work with Mission Control 5.14
RDEPEND="
diff --git a/net-im/telepathy-logger/Manifest b/net-im/telepathy-logger/Manifest
index 3fe5d4f99f86..6dc4a3253142 100644
--- a/net-im/telepathy-logger/Manifest
+++ b/net-im/telepathy-logger/Manifest
@@ -1 +1,2 @@
+DIST telepathy-logger-0.8.2-py3.patch 15181 BLAKE2B bebd153a519ee6cd4d7e3e04b4516e6fb53b6efea1d0693133ca5807686e115d08998e9e3ad0d6308d01945a0ac1b66010c3e312346dd238c43be1418574e11e SHA512 98cd5f9af7d4781be30b15c58ca6cd3a131b52dbc5cc38eae3423fc3377a02451782838d9f32575a71dd8d6ce7f46657e17f3dee29059a728bb8988d05c716ea
DIST telepathy-logger-0.8.2.tar.bz2 562670 BLAKE2B 357d717136fe099ee3788bcd004d3eb14e83520c39a8412f4586181e0a1c98ac21be26931759b8f0439ab6f2f9b32aaf6cbf586619ab0fe40ef0f9581b301a29 SHA512 f3eda26133a4c38eeb79b01cbe3b7801a5eb773e8b4e6ce621c47d3ca701025364c6b2b890caea00104f01ba85ae891a6fad82d7a9dc487fd7a980221cede451
diff --git a/net-im/telepathy-logger/metadata.xml b/net-im/telepathy-logger/metadata.xml
index 39980802b1da..7fc03b874eb5 100644
--- a/net-im/telepathy-logger/metadata.xml
+++ b/net-im/telepathy-logger/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="freedesktop-gitlab">telepathy/telepathy-logger</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/telepathy-logger/telepathy-logger-0.8.2.ebuild b/net-im/telepathy-logger/telepathy-logger-0.8.2-r1.ebuild
index 785a3809cdfe..4f96e3297777 100644
--- a/net-im/telepathy-logger/telepathy-logger-0.8.2.ebuild
+++ b/net-im/telepathy-logger/telepathy-logger-0.8.2-r1.ebuild
@@ -1,19 +1,21 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
-GCONF_DEBUG="no"
-PYTHON_COMPAT=( python2_7 )
+EAPI=7
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="xml(+)"
inherit gnome2 python-any-r1 virtualx
DESCRIPTION="Daemon that centralizes the communication logging within the Telepathy framework"
HOMEPAGE="https://telepathy.freedesktop.org/wiki/Logger"
-SRC_URI="https://telepathy.freedesktop.org/releases/${PN}/${P}.tar.bz2"
+SRC_URI="https://telepathy.freedesktop.org/releases/${PN}/${P}.tar.bz2
+ https://gitlab.freedesktop.org/telepathy/telepathy-logger/-/merge_requests/1.patch
+ -> ${P}-py3.patch"
LICENSE="LGPL-2.1+"
SLOT="0/3"
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc x86 ~x86-linux"
IUSE="+introspection"
RDEPEND="
@@ -26,14 +28,17 @@ RDEPEND="
dev-db/sqlite:3
introspection? ( >=dev-libs/gobject-introspection-0.9.6 )
"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
${PYTHON_DEPS}
dev-util/glib-utils
- >=dev-util/gtk-doc-am-1.10
+ >=dev-build/gtk-doc-am-1.10
>=dev-util/intltool-0.35
virtual/pkgconfig
"
+PATCHES=( "${DISTDIR}"/${P}-py3.patch )
+
src_configure() {
# --enable-debug needed due to https://bugs.freedesktop.org/show_bug.cgi?id=83390
gnome2_src_configure \
diff --git a/net-im/telepathy-mission-control/Manifest b/net-im/telepathy-mission-control/Manifest
index a0674cc3fc2f..bab1c3f95ded 100644
--- a/net-im/telepathy-mission-control/Manifest
+++ b/net-im/telepathy-mission-control/Manifest
@@ -1,2 +1 @@
-DIST telepathy-mission-control-5.16.4.tar.gz 1102177 BLAKE2B 4c7ad46c472b6bc20b559de48602bcee971fda5ed2fb139d4a67793ac0f2871cfff6db5f9775a3626e1f1860fe41f8e4d520f00d05d7230064d30b21cb3397bc SHA512 5ed624df2d041554af074c22a18db2405fa5bd41bec40edc574382eb9d8b9f93ff6f4be3042d27f950694a353f4192670e200f5f8865419701ca520a973959ed
-DIST telepathy-mission-control-5.16.5.tar.gz 1125142 BLAKE2B 1f39336d8221ec9f297ba9eeaed39ffc30d5b2ecde3b02148343cfb9bf4ec15d949a36feb6b92cef17d70f786840b8df9cf159eb8eb00462c64bfb8b41437b57 SHA512 6adeb3033853bef5b732e7b85da49b75bffbdc57d968b1e4313fd1452eaf8db96c3f7f50d41ebb7bfcb084a7f093a9eaccdb28c23d2777e149a90dec6d4ef4e4
+DIST telepathy-mission-control-5.16.6.tar.gz 1127785 BLAKE2B 82055a86d102292dec44ddeadd99458b1cf083f5d74be09326cfae41d627f1792468a180b5cb9f5bb5712989198cc46116f39e41343ca35b3bac101e3db6003a SHA512 56d62bc7270d2d62a490361f3ef3bc39384fde05ee5d69cb7e20db4f41665bd99d05b4cd2b5992b84dbfee5400684503e44c5b8c63cfa101e0cfe6a85b005e5e
diff --git a/net-im/telepathy-mission-control/files/5.16.5-account-fix-property-name.patch b/net-im/telepathy-mission-control/files/5.16.5-account-fix-property-name.patch
deleted file mode 100644
index 17eb7f1f0415..000000000000
--- a/net-im/telepathy-mission-control/files/5.16.5-account-fix-property-name.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From d8dab08fe8db137c6bbd8bbdc3d9b01d98c48910 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
-Date: Thu, 19 Dec 2019 13:37:49 +0100
-Subject: [PATCH] account: Fix property name
-
-Spaces are not valid characters in property names, and never were.
-Until recently GLib silently fixed up the name by replacing the
-space with '-', but now tightened up the validation.
----
- src/mcd-account.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/mcd-account.c b/src/mcd-account.c
-index 8009110e..de5c61cf 100644
---- a/src/mcd-account.c
-+++ b/src/mcd-account.c
-@@ -3442,7 +3442,7 @@ mcd_account_class_init (McdAccountClass * klass)
-
- g_object_class_install_property
- (object_class, PROP_CONNECTIVITY_MONITOR,
-- g_param_spec_object ("connectivity monitor",
-+ g_param_spec_object ("connectivity-monitor",
- "Connectivity monitor",
- "Connectivity monitor",
- MCD_TYPE_CONNECTIVITY_MONITOR,
diff --git a/net-im/telepathy-mission-control/metadata.xml b/net-im/telepathy-mission-control/metadata.xml
index 91b0f11bc72b..0a7b35f12818 100644
--- a/net-im/telepathy-mission-control/metadata.xml
+++ b/net-im/telepathy-mission-control/metadata.xml
@@ -1,13 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
-<longdescription>Mission Control, or MC, is a telepathy component providing a
-way for "end-user" applications to abstract some of the details of connection
-managers, to provide a simple way to manipulate a bunch of connection managers
-at once, and to remove the need to have in each program the account
-definitions and credentials.</longdescription>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <longdescription>
+ Mission Control, or MC, is a telepathy component providing a way for
+ "end-user" applications to abstract some of the details of connection
+ managers, to provide a simple way to manipulate a bunch of connection
+ managers at once, and to remove the need to have in each program the account
+ definitions and credentials.
+ </longdescription>
+ <upstream>
+ <remote-id type="freedesktop-gitlab">telepathy/telepathy-mission-control</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-im/telepathy-mission-control/telepathy-mission-control-5.16.5.ebuild b/net-im/telepathy-mission-control/telepathy-mission-control-5.16.5.ebuild
deleted file mode 100644
index ae6e4b1a78ea..000000000000
--- a/net-im/telepathy-mission-control/telepathy-mission-control-5.16.5.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-# Needed for tests and build #489466
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit gnome2 python-any-r1
-
-DESCRIPTION="An account manager and channel dispatcher for the Telepathy framework"
-HOMEPAGE="https://cgit.freedesktop.org/telepathy/telepathy-mission-control/"
-SRC_URI="https://telepathy.freedesktop.org/releases/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
-IUSE="debug networkmanager" # test
-
-RDEPEND="
- >=dev-libs/dbus-glib-0.82
- >=dev-libs/glib-2.46:2
- >=sys-apps/dbus-0.95
- >=net-libs/telepathy-glib-0.20
- networkmanager? ( >=net-misc/networkmanager-1:= )
-"
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
- dev-libs/libxslt
- >=dev-util/gtk-doc-am-1.17
- virtual/pkgconfig
-"
-# test? ( dev-python/twisted-words )"
-
-# Tests are broken, see upstream bug #29334 and #64212
-# upstream doesn't want it enabled everywhere (#29334#c12)
-RESTRICT="test"
-
-PATCHES=( "${FILESDIR}/5.16.5-account-fix-property-name.patch" )
-
-src_configure() {
- # creds is not available
- gnome2_src_configure \
- --disable-static \
- --disable-upower \
- $(use_enable debug) \
- $(use_with networkmanager connectivity nm)
-}
diff --git a/net-im/telepathy-mission-control/telepathy-mission-control-5.16.4.ebuild b/net-im/telepathy-mission-control/telepathy-mission-control-5.16.6.ebuild
index b9cbec04dfcd..dd85f8fe6688 100644
--- a/net-im/telepathy-mission-control/telepathy-mission-control-5.16.4.ebuild
+++ b/net-im/telepathy-mission-control/telepathy-mission-control-5.16.6.ebuild
@@ -1,21 +1,20 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-GNOME2_LA_PUNT="yes"
-# Needed for tests and build #489466
-PYTHON_COMPAT=( python2_7 )
+EAPI=7
+PYTHON_REQ_USE="xml(+)"
+PYTHON_COMPAT=( python3_{10..11} )
inherit gnome2 python-any-r1
DESCRIPTION="An account manager and channel dispatcher for the Telepathy framework"
-HOMEPAGE="https://cgit.freedesktop.org/telepathy/telepathy-mission-control/"
+HOMEPAGE="https://gitlab.freedesktop.org/telepathy/telepathy-mission-control"
SRC_URI="https://telepathy.freedesktop.org/releases/${PN}/${P}.tar.gz"
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="debug networkmanager" # test
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="debug networkmanager"
RDEPEND="
>=dev-libs/dbus-glib-0.82
@@ -24,17 +23,13 @@ RDEPEND="
>=net-libs/telepathy-glib-0.20
networkmanager? ( >=net-misc/networkmanager-1:= )
"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
${PYTHON_DEPS}
dev-libs/libxslt
- >=dev-util/gtk-doc-am-1.17
+ >=dev-build/gtk-doc-am-1.17
virtual/pkgconfig
"
-# test? ( dev-python/twisted-words )"
-
-# Tests are broken, see upstream bug #29334 and #64212
-# upstream doesn't want it enabled everywhere (#29334#c12)
-RESTRICT="test"
src_configure() {
# creds is not available
diff --git a/net-im/tkabber/metadata.xml b/net-im/tkabber/metadata.xml
index 59548fbeeef0..a01af3c19be8 100644
--- a/net-im/tkabber/metadata.xml
+++ b/net-im/tkabber/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
-<longdescription>Tkabber is a Free and Open Source client for the Jabber instant messaging system. It's writen in Tcl/Tk, and works on many platforms.</longdescription>
+<longdescription>Tkabber is a Free and Open Source client for the Jabber instant messaging system. It's written in Tcl/Tk, and works on many platforms.</longdescription>
<use>
<flag name="plugins">Enables installation the extra plugins</flag>
</use>
diff --git a/net-im/tokodon/Manifest b/net-im/tokodon/Manifest
new file mode 100644
index 000000000000..ba17f5285224
--- /dev/null
+++ b/net-im/tokodon/Manifest
@@ -0,0 +1,2 @@
+DIST tokodon-23.08.5.tar.xz 335920 BLAKE2B 620de13602a8f846c980fc0e57a3c13c73725fca16c2ca7cbcd362d9339a531466f496aa8d4dd0e3f310fd2d87399b34f0c78f74bd9312d2a49190897f92ffd7 SHA512 1f21df479ebe31d2bc891b01fc465f5711445fb1bfefba7a90aec7d9eef304618487f1992cad82f4207928bb7398642db97038817b2aa602e9d77135c216f404
+DIST tokodon-24.02.2.tar.xz 517828 BLAKE2B fd1d07464d44811800136b763e15f8264d8a3ad5140e81b0606bef5eb17420ec831e0c97f2199d88fb579bd5e119743c6d967226800e39f629d5c50a03efa1a8 SHA512 a0af63e1571a80f31823598645cd184797889ecf98cae5ba0663056c2f019d02562430f3026e8aef2553964b33aae459499e26e9b9f6d65b89202ef19baa4bb7
diff --git a/net-im/tokodon/metadata.xml b/net-im/tokodon/metadata.xml
new file mode 100644
index 000000000000..02ce3e9d31e3
--- /dev/null
+++ b/net-im/tokodon/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="kde-invent">network/tokodon</remote-id>
+ <bugs-to>https://bugs.kde.org/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/tokodon/tokodon-23.08.5.ebuild b/net-im/tokodon/tokodon-23.08.5.ebuild
new file mode 100644
index 000000000000..085752b42a0b
--- /dev/null
+++ b/net-im/tokodon/tokodon-23.08.5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_TEST="forceoptional"
+KFMIN=5.106.0
+QTMIN=5.15.9
+inherit ecm gear.kde.org
+
+DESCRIPTION="Mastodon client for Plasma and Plasma Mobile"
+HOMEPAGE="https://apps.kde.org/tokodon/"
+
+LICENSE="CC-BY-SA-4.0 GPL-2+ GPL-3+ || ( LGPL-2.1+ LGPL-3+ ) MIT"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~ppc64 x86"
+
+DEPEND="
+ >=dev-libs/kirigami-addons-0.10.0:5
+ media-video/mpv:=[libmpv]
+ dev-libs/qtkeychain:=[qt5(+)]
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtquickcontrols2-${QTMIN}:5
+ >=dev-qt/qtsvg-${QTMIN}:5
+ >=dev-qt/qtwebsockets-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=kde-frameworks/breeze-icons-${KFMIN}:*
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kdbusaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kirigami-${KFMIN}:5
+ >=kde-frameworks/kitemmodels-${KFMIN}:5[qml]
+ >=kde-frameworks/knotifications-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:5
+ >=kde-frameworks/sonnet-${KFMIN}:5[qml]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
diff --git a/net-im/tokodon/tokodon-24.02.2.ebuild b/net-im/tokodon/tokodon-24.02.2.ebuild
new file mode 100644
index 000000000000..20ed8560f79d
--- /dev/null
+++ b/net-im/tokodon/tokodon-24.02.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_TEST="forceoptional"
+KFMIN=6.0.0
+QTMIN=6.6.2
+inherit ecm gear.kde.org
+
+DESCRIPTION="Mastodon client for Plasma and Plasma Mobile"
+HOMEPAGE="https://apps.kde.org/tokodon/"
+
+LICENSE="CC-BY-SA-4.0 GPL-2+ GPL-3+ || ( LGPL-2.1+ LGPL-3+ ) MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-libs/kirigami-addons:6
+ >=dev-libs/qtkeychain-0.14.1-r1:=[qt6]
+ >=dev-qt/qtbase-${QTMIN}:6[gui,network,widgets]
+ >=dev-qt/qtdeclarative-${QTMIN}:6
+ >=dev-qt/qtsvg-${QTMIN}:6
+ >=dev-qt/qtwebsockets-${QTMIN}:6
+ >=dev-qt/qtwebview-${QTMIN}:6
+ >=kde-frameworks/breeze-icons-${KFMIN}:*
+ >=kde-frameworks/kcolorscheme-${KFMIN}:6
+ >=kde-frameworks/kconfig-${KFMIN}:6
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:6
+ >=kde-frameworks/kcoreaddons-${KFMIN}:6
+ >=kde-frameworks/kdbusaddons-${KFMIN}:6
+ >=kde-frameworks/ki18n-${KFMIN}:6
+ >=kde-frameworks/kio-${KFMIN}:6
+ >=kde-frameworks/kirigami-${KFMIN}:6
+ >=kde-frameworks/knotifications-${KFMIN}:6
+ >=kde-frameworks/kwindowsystem-${KFMIN}:6
+ >=kde-frameworks/purpose-${KFMIN}:6
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:6
+ media-libs/mpvqt
+"
+RDEPEND="${DEPEND}
+ >=kde-frameworks/kitemmodels-${KFMIN}:6
+ >=kde-frameworks/sonnet-${KFMIN}:6[qml]
+"
+BDEPEND="virtual/pkgconfig"
diff --git a/net-im/toxic/Manifest b/net-im/toxic/Manifest
index 2f4c4e49deba..21f2738184f9 100644
--- a/net-im/toxic/Manifest
+++ b/net-im/toxic/Manifest
@@ -1,3 +1,2 @@
-DIST toxic-0.8.2.tar.gz 1146526 BLAKE2B 0a1c80313963287e88aa489ecf4614365a3d94c770cdfb3b1f3afd0bf2b70639c35b9c5ce52408647abdaac9822c9529b603ec1883779f5486ff63001d98ff5e SHA512 258e873404315c9a1f59d67f524089afebad88d800116bd9e53c8bc35bd9dd6b66cfcd90db06181f01330ba0a302456510fac5c01fdbfde7d475aa5d6b1070aa
-DIST toxic-0.8.3.tar.gz 1147100 BLAKE2B d73a861112aca65e54773c98473c2858bb81e63fef11212633e34dac9e87101956e3ab0d9d56757767bc5d48d1d5a406e550f8fc55ae34860dbc4977c94ee347 SHA512 c8d746efcc055592dd990dfa57415cc1eacaaa3b66303d7583d9f9e7e98b8829c8f1ae849f36a243c8896e99787dd2e493c92367de719b20a4a160bc7daea76e
-DIST toxic_patches-0.8.2.tar.gz 3859 BLAKE2B 4a19226cea6c7ce60f599fbd4f74171f26b3812259f0f8997997526bde7beb6fe64b922f25fe77e0ac8f9b185db116d2e626cb889631a1508786b92f9bbc8927 SHA512 737cc53e814567e10ad8b7431be63ab8f99b76bb150490c31e03309c4e51ee34a798d141cbde446cbbc4b5c0145ca468f3456a2af4b966c80792cdccc6562b46
+DIST toxic-0.11.1.tar.gz 1204163 BLAKE2B 1e388982236badf1a27cb1cfd9e84ec635be6a576a0719a7394f32ac82f23796f94236ab807180620cbfa8c0c42f43ff244d2d99d27cd5ab3258c1ce69acc545 SHA512 53fba05271020547e779d63bea777f90f56b61e3eb2775afabe92e047a8347b4a9166628bb59d2eaab2e36a1121d791206ac68ff6604cb06fac6aaddbb05e787
+DIST toxic-0.11.3.tar.gz 1197252 BLAKE2B 4a7a3c4eed270330c6d79ad400778debda1b98b66beed1196cf4e36858d300141c468c4963d012b77d8232f7b3b3b419138505e46098bfac3cde48e9bc0b0e1c SHA512 2c8408004d9644b52cbe9477d7c486622fcef52f1d10a1bcdf7555656a2f2e1bd4c6f0594a7b0b3156fd6908c470c5b41c55e6e0914c3eb2067614013f0f259f
diff --git a/net-im/toxic/files/toxic-0.11.1-NAME_MAX-and-PATH_MAX.patch b/net-im/toxic/files/toxic-0.11.1-NAME_MAX-and-PATH_MAX.patch
new file mode 100644
index 000000000000..09845d294a2e
--- /dev/null
+++ b/net-im/toxic/files/toxic-0.11.1-NAME_MAX-and-PATH_MAX.patch
@@ -0,0 +1,48 @@
+diff -ruN src/autocomplete.c src/autocomplete.c
+--- src/autocomplete.c 2021-08-09 18:52:27.090248882 -0400
++++ src/autocomplete.c 2021-08-11 14:57:39.029828530 -0400
+@@ -25,10 +25,12 @@
+ #include <string.h>
+
+ #ifdef __APPLE__
+-#include <sys/types.h>
+ #include <sys/dir.h>
++#include <sys/types.h>
++#include <sys/sysinfo.h>//This should contain PATH_MAX and NAME_MAX
+ #else
+ #include <dirent.h>
++#include <linux/limits.h>
+ #endif /* __APPLE__ */
+
+ #include "configdir.h"
+diff -ruN src/file_transfers.h src/file_transfers.h
+--- src/file_transfers.h 2021-07-26 15:39:36.765990567 -0400
++++ src/file_transfers.h 2021-08-11 14:59:41.223159195 -0400
+@@ -24,6 +24,12 @@
+ #define FILE_TRANSFERS_H
+
+ #include <limits.h>
++//This should include NAME_MAX and PATH_MAX
++#ifdef __APPLE__
++#include <sys/sysinfo.h>
++#elif __linux__
++#include <linux/limits.h>
++#endif
+
+ #include "notify.h"
+ #include "toxic.h"
+diff -ruN src/settings.h src/settings.h
+--- src/settings.h 2021-08-09 18:52:27.093582216 -0400
++++ src/settings.h 2021-08-11 15:00:46.889824433 -0400
+@@ -24,6 +24,12 @@
+ #define SETTINGS_H
+
+ #include <limits.h>
++//This should include NAME_MAX and PATH_MAX
++#ifdef __APPLE__
++#include <sys/sysinfo.h>
++#elif __linux__
++#include <linux/limits.h>
++#endif
+
+ #include <tox/tox.h>
diff --git a/net-im/toxic/files/toxic-0.11.3-NAME_MAX-and-PATH_MAX.patch b/net-im/toxic/files/toxic-0.11.3-NAME_MAX-and-PATH_MAX.patch
new file mode 100644
index 000000000000..2101b64e3d9f
--- /dev/null
+++ b/net-im/toxic/files/toxic-0.11.3-NAME_MAX-and-PATH_MAX.patch
@@ -0,0 +1,39 @@
+diff -ruN src/autocomplete.c src/autocomplete.c
+--- src/autocomplete.c
++++ src/autocomplete.c
+@@ -29,6 +29,7 @@
+ #include <sys/dir.h>
+ #else
+ #include <dirent.h>
++#include <linux/limits.h>
+ #endif /* __APPLE__ */
+
+ #include "configdir.h"
+diff -ruN src/file_transfers.h src/file_transfers.h
+--- src/file_transfers.h
++++ src/file_transfers.h
+@@ -25,6 +25,10 @@
+
+ #include <limits.h>
+
++#ifdef __linux__
++#include <linux/limits.h>
++#endif
++
+ #include "notify.h"
+ #include "toxic.h"
+ #include "windows.h"
+diff -ruN src/settings.h src/settings.h
+--- src/settings.h
++++ src/settings.h
+@@ -25,6 +25,10 @@
+
+ #include <limits.h>
+
++#ifdef __linux__
++#include <linux/limits.h>
++#endif
++
+ #include <tox/tox.h>
+
+ /* Represents line_* hints max strlen */
diff --git a/net-im/toxic/metadata.xml b/net-im/toxic/metadata.xml
index 02e709980dad..cdcd3b5220b7 100644
--- a/net-im/toxic/metadata.xml
+++ b/net-im/toxic/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>JoMull01@protonmail.com</email>
<name>Josiah Mullins</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
@@ -20,6 +20,9 @@
An ncurses-based Tox client written in C. Supports audio and video calling, file sharing, and desktop notifications.
</longdescription>
<use>
+ <flag name="audio-notify">Enables native sound notifications</flag>
+ <flag name="games">Enables some small mini-games</flag>
+ <flag name="llvm">Enables support for LLVM Address Sanitizer</flag>
<flag name="notification">Enables desktop notifications with libnotify, with sound support.</flag>
<flag name="qrcode">Enables QR code support</flag>
<flag name="sound">Enables audio calling</flag>
diff --git a/net-im/toxic/toxic-0.11.1-r1.ebuild b/net-im/toxic/toxic-0.11.1-r1.ebuild
new file mode 100644
index 000000000000..1a535eb7fcaa
--- /dev/null
+++ b/net-im/toxic/toxic-0.11.1-r1.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{9,10,11} )
+
+inherit python-single-r1 xdg
+
+DESCRIPTION="A curses-based client for Tox"
+HOMEPAGE="https://github.com/JFreegman/toxic"
+SRC_URI="https://github.com/JFreegman/toxic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+audio-notify debug games llvm notification png python qrcode +sound +video +X"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
+ video? ( sound X ) "
+
+BDEPEND="dev-libs/libconfig:=
+ virtual/pkgconfig"
+
+RDEPEND="net-libs/tox:=
+ net-misc/curl
+ sys-kernel/linux-headers
+ sys-libs/ncurses:=
+ audio-notify? (
+ media-libs/freealut
+ media-libs/openal
+ )
+ notification? ( x11-libs/libnotify )
+ debug? ( llvm? ( sys-devel/llvm:* ) )
+ python? ( ${PYTHON_DEPS} )
+ qrcode? (
+ media-gfx/qrencode:=
+ png? ( media-libs/libpng )
+ )
+ sound? (
+ media-libs/openal
+ net-libs/tox:=[av]
+ )
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libX11
+ )"
+
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ #prevent man files from being compressed.
+ sed -i -e "/gzip/d" cfg/targets/install.mk || die "Unable to prevent compression of man pages."
+ #Fix incorrect linkage of pthread (may be optional)
+ sed -i -e 's/pthread/lpthread/g' Makefile || die "Unable to fix linking of pthread."
+ #Makefile sets some required CFLAGS only if CFLAGS variable is undefined,
+ #This line changes the "lazy set if absent" assignment to a "lazy set" assignment.
+ #look below in src_configure to see how CFLAGS are passed to the makefile in USER_CFLAGS
+ sed -i -e 's/?=/=/g' Makefile || die "Unable to change assignment of CFLAGS and LDFLAGS"
+ #Fix incomplete invocation of python-config
+ sed -i -e "s/--ldflags/--ldflags --embed/" cfg/checks/python.mk || die "Unable to fix python linking"
+ #This is to fix incorrect include statements of NAME_MAX and PATH_MAX macros
+ eapply -p0 "${FILESDIR}/${P}-NAME_MAX-and-PATH_MAX.patch" || die "Unable to fix include statements"
+}
+
+src_configure() {
+ if ! use audio-notify; then
+ export DISABLE_SOUND_NOTIFY=1
+ fi
+ if use debug; then
+ export ENABLE_RELEASE=0
+ if use llvm; then
+ export ENABLE_ASAN=1
+ fi
+ fi
+ if ! use games; then
+ export DISABLE_GAMES=1
+ fi
+ if ! use notification; then
+ export DISABLE_DESKTOP_NOTIFY=1
+ fi
+ if ! use png; then
+ export DISABLE_QRPNG=1
+ fi
+ if use python; then
+ export ENABLE_PYTHON=1
+ fi
+ if ! use qrcode; then
+ export DISABLE_QRCODE=1
+ fi
+ if ! use sound; then
+ export DISABLE_AV=1
+ fi
+ if ! use video; then
+ export DISABLE_VI=1
+ fi
+ if ! use X; then
+ export DISABLE_X11=1
+ fi
+ #include strings.h fixes undefined reference to strcasecmp()
+ #defining _GNU_SOURCE fixes undefined reference to strcasestr()
+ export USER_CFLAGS="${CFLAGS} -include strings.h -D _GNU_SOURCE"
+ export USER_LDFLAGS="${LDFLAGS}"
+ #set install directory to /usr.
+ sed -i -e "s,/usr/local,${EPREFIX}/usr,g" cfg/global_vars.mk || die "Failed to set install directory!"
+}
+
+src_install() {
+ default
+ if ! use audio-notify; then
+ rm -r "${ED}"/usr/share/${PN}/sounds || die "Could not remove sounds directory"
+ fi
+}
diff --git a/net-im/toxic/toxic-0.11.3-r1.ebuild b/net-im/toxic/toxic-0.11.3-r1.ebuild
new file mode 100644
index 000000000000..729b32f3fcc0
--- /dev/null
+++ b/net-im/toxic/toxic-0.11.3-r1.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11} )
+
+inherit python-single-r1 xdg
+
+DESCRIPTION="A curses-based client for Tox"
+HOMEPAGE="https://github.com/JFreegman/toxic"
+SRC_URI="https://github.com/JFreegman/toxic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+audio-notify debug games llvm notification png python qrcode +sound +video +X"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
+ video? ( sound X ) "
+
+BDEPEND="dev-libs/libconfig:=
+ virtual/pkgconfig"
+
+RDEPEND="net-libs/tox:=
+ net-misc/curl
+ sys-kernel/linux-headers
+ sys-libs/ncurses:=
+ audio-notify? (
+ media-libs/freealut
+ media-libs/openal
+ )
+ notification? ( x11-libs/libnotify )
+ debug? ( llvm? ( sys-devel/llvm:* ) )
+ python? ( ${PYTHON_DEPS} )
+ qrcode? (
+ media-gfx/qrencode:=
+ png? ( media-libs/libpng )
+ )
+ sound? (
+ media-libs/openal
+ net-libs/tox:=[av]
+ )
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libX11
+ )"
+
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ #prevent man files from being compressed.
+ sed -i -e "/gzip/d" cfg/targets/install.mk || die "Unable to prevent compression of man pages."
+ #Fix incorrect linkage of pthread (may be optional)
+ sed -i -e 's/pthread/lpthread/g' Makefile || die "Unable to fix linking of pthread."
+ #Makefile sets some required CFLAGS only if CFLAGS variable is undefined,
+ #This line changes the "lazy set if absent" assignment to a "lazy set" assignment.
+ #look below in src_configure to see how CFLAGS are passed to the makefile in USER_CFLAGS
+ sed -i -e 's/?=/=/g' Makefile || die "Unable to change assignment of CFLAGS and LDFLAGS"
+ #Fix incomplete invocation of python-config
+ sed -i -e "s/--ldflags/--ldflags --embed/" cfg/checks/python.mk || die "Unable to fix python linking"
+ #This is to fix incorrect include statements of NAME_MAX and PATH_MAX macros
+ eapply -p0 "${FILESDIR}/${P}-NAME_MAX-and-PATH_MAX.patch" || die "Unable to fix include statements"
+}
+
+src_configure() {
+ if ! use audio-notify; then
+ export DISABLE_SOUND_NOTIFY=1
+ fi
+ if use debug; then
+ export ENABLE_RELEASE=0
+ if use llvm; then
+ export ENABLE_ASAN=1
+ fi
+ fi
+ if ! use games; then
+ export DISABLE_GAMES=1
+ fi
+ if ! use notification; then
+ export DISABLE_DESKTOP_NOTIFY=1
+ fi
+ if ! use png; then
+ export DISABLE_QRPNG=1
+ fi
+ if use python; then
+ export ENABLE_PYTHON=1
+ fi
+ if ! use qrcode; then
+ export DISABLE_QRCODE=1
+ fi
+ if ! use sound; then
+ export DISABLE_AV=1
+ fi
+ if ! use video; then
+ export DISABLE_VI=1
+ fi
+ if ! use X; then
+ export DISABLE_X11=1
+ fi
+ #Including strings.h fixes undefined reference to strcasecmp()
+ #Defining _GNU_SOURCE fixes undefined reference to strcasestr()
+ export USER_CFLAGS="${CFLAGS} -include strings.h -D _GNU_SOURCE"
+ export USER_LDFLAGS="${LDFLAGS}"
+ #set install directory to /usr.
+ sed -i -e "s,/usr/local,${EPREFIX}/usr,g" cfg/global_vars.mk || die "Failed to set install directory!"
+}
+
+src_install() {
+ default
+ if ! use audio-notify; then
+ rm -r "${ED}"/usr/share/${PN}/sounds || die "Could not remove sounds directory"
+ fi
+}
diff --git a/net-im/toxic/toxic-0.8.2.ebuild b/net-im/toxic/toxic-0.8.2.ebuild
deleted file mode 100644
index b6312da26f72..000000000000
--- a/net-im/toxic/toxic-0.8.2.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python3_6 )
-
-inherit python-single-r1 xdg
-
-DESCRIPTION="A curses-based client for Tox"
-HOMEPAGE="https://github.com/JFreegman/toxic"
-SRC_URI="https://github.com/JFreegman/toxic/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/fx-carton/toxic_patches/archive/v${PV}.tar.gz -> ${PN}_patches-${PV}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+X +sound notification +python +qrcode +video"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# Not a typo; net-libs/tox only has a 'both or neither' option
-RDEPEND="
- net-libs/tox:0/0.2
- dev-libs/libconfig
- net-misc/curl:0=
- sys-libs/ncurses:0=
- notification? ( x11-libs/libnotify )
- python? ( ${PYTHON_DEPS} )
- qrcode? ( media-gfx/qrencode:= )
- sound? (
- media-libs/openal
- media-libs/freealut
- net-libs/tox:0/0.2[av]
- )
- video? (
- media-libs/libvpx:=
- net-libs/tox:0/0.2[av]
- x11-libs/libX11
- )
-"
-DEPEND="
- virtual/pkgconfig
- ${RDEPEND}
-"
-
-PATCHES=(
- "${WORKDIR}/${PN}_patches-${PV}/${P}-make-qrencode-optional.patch"
- )
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- if [[ ${PV} = 0.8.2 ]]; then
- sed -i \
- -e 's/^\(TOXIC_VERSION =\).*$/\1 0.8.2/' \
- cfg/global_vars.mk || die
- else
- die "Remove stale version hack"
- fi
- sed -i '/^VIDEO = /s/DISABLE_AV/DISABLE_VI/g' cfg/checks/check_features.mk || die
- find . '(' -name '*.mk' -o -name 'Makefile' ')' -exec sed -i 's/^\t@/\t/' {} + || die
-}
-
-src_configure() {
- export USER_CFLAGS="${CFLAGS}"
- export USER_LDFLAGS="${LDFLAGS}"
- if ! use sound; then
- export DISABLE_AV=1
- export DISABLE_SOUND_NOTIFY=1
- fi
- if ! use video; then
- export DISABLE_VI=1
- fi
- if ! use X; then
- export DISABLE_X11=1
- fi
- if ! use notification; then
- export DISABLE_DESKTOP_NOTIFY=1
- fi
- if ! use qrcode; then
- export DISABLE_QRCODE=1
- export DISABLE_QRPNG=1
- fi
- if use python; then
- export ENABLE_PYTHON=1
- fi
- sed -i \
- -e "s,/usr/local,${EPREFIX}/usr,g" \
- cfg/global_vars.mk || die "PREFIX sed failed"
-}
-
-src_install() {
- default
- if ! use sound; then
- rm -r "${ED%/}"/usr/share/${PN}/sounds || die "Could not remove sounds directory"
- fi
-}
diff --git a/net-im/toxic/toxic-0.8.3.ebuild b/net-im/toxic/toxic-0.8.3.ebuild
deleted file mode 100644
index a39f3e6f1ce6..000000000000
--- a/net-im/toxic/toxic-0.8.3.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_6 )
-
-inherit python-single-r1 xdg
-
-DESCRIPTION="A curses-based client for Tox"
-HOMEPAGE="https://github.com/JFreegman/toxic"
-SRC_URI="https://github.com/JFreegman/toxic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="notification python qrcode +sound +video +X"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="
- dev-libs/libconfig
- >=net-libs/tox-0.2.8:*
- net-misc/curl
- sys-libs/ncurses:*
- notification? ( x11-libs/libnotify )
- python? ( ${PYTHON_DEPS} )
- qrcode? ( media-gfx/qrencode )
- sound? (
- media-libs/freealut
- media-libs/openal
- net-libs/tox[av]
- )
- video? (
- media-libs/libvpx
- net-libs/tox[av]
- x11-libs/libX11 )"
-
-DEPEND="
- virtual/pkgconfig
- ${RDEPEND}"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- #prevent man files from being compressed.
- sed -i -e "/gzip/d" cfg/targets/install.mk || die "Unable to prevent compression of man pages."
-}
-
-src_configure() {
- export USER_CFLAGS="${CFLAGS}"
- export USER_LDFLAGS="${LDFLAGS}"
- if ! use sound; then
- export DISABLE_AV=1
- export DISABLE_SOUND_NOTIFY=1
- fi
- if ! use video; then
- export DISABLE_VI=1
- fi
- if ! use X; then
- export DISABLE_X11=1
- fi
- if ! use notification; then
- export DISABLE_DESKTOP_NOTIFY=1
- fi
- if ! use qrcode; then
- export DISABLE_QRCODE=1
- export DISABLE_QRPNG=1
- fi
- if use python; then
- export ENABLE_PYTHON=1
- fi
- #set install directory to /usr.
- sed -i -e "s,/usr/local,${EPREFIX}/usr,g" cfg/global_vars.mk || die "Failed to set install directory!"
-}
-
-src_install() {
- default
- if ! use sound; then
- rm -r "${ED%/}"/usr/share/${PN}/sounds || die "Could not remove sounds directory"
- fi
-}
diff --git a/net-im/transwhat/metadata.xml b/net-im/transwhat/metadata.xml
index 2f2dfe350832..7449ea2792c3 100644
--- a/net-im/transwhat/metadata.xml
+++ b/net-im/transwhat/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/net-im/transwhat/transwhat-0.2.2_p20190426.ebuild b/net-im/transwhat/transwhat-0.2.2_p20190426-r3.ebuild
index 0ca8ec67f7a8..3a1f9c589d2b 100644
--- a/net-im/transwhat/transwhat-0.2.2_p20190426.ebuild
+++ b/net-im/transwhat/transwhat-0.2.2_p20190426-r3.ebuild
@@ -1,17 +1,18 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-DISTUTILS_USE_SETUPTOOLS="bdepend"
EGIT_COMMIT="d022243f6c7b23674d3c87a09819f00b10df1165"
-PYTHON_COMPAT=( python3_{6,7,8} )
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
DESCRIPTION="A WhatsApp XMPP Gateway based on Spectrum 2 and Yowsup 3"
HOMEPAGE="https://github.com/stv0g/transwhat"
SRC_URI="https://github.com/stv0g/transwhat/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
LICENSE="GPL-3+"
SLOT="0"
@@ -26,13 +27,13 @@ RDEPEND="
DEPEND="${RDEPEND}"
-S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
-
DOCS=( "INSTALL.rst" "README.rst" "USAGE.rst" )
src_prepare() {
default
# Spectrum2 must be lower case
- sed -e 's/Spectrum2/spectrum2/g' -i transWhat/{buddy,group,registersession,session,transwhat,whatsappbackend}.py || die
+ sed \
+ -e 's/Spectrum2/spectrum2/g' \
+ -i transWhat/{buddy,group,registersession,session,transwhat,whatsappbackend}.py || die
}
diff --git a/net-im/vacuum/Manifest b/net-im/vacuum/Manifest
deleted file mode 100644
index e78a2c997862..000000000000
--- a/net-im/vacuum/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST vacuum-im-1.3.0.20180105-Alpha.tar.gz 2658247 BLAKE2B 823984f49687805c8e859984d6dfc9afcbdff864eef2f81825562dca11281286d5e736a986ed40e10bb915b7ee4f972dba10b073ea738cd8153f887c74b89f1b SHA512 83d830494c272145c3ad923ebb2897a8ab6323a301bdd0fc2b972f84b246e2de4eff29a93d92da97ed4deb6018c52e38e6fc5941c54722e1c37de207bca0c687
diff --git a/net-im/vacuum/metadata.xml b/net-im/vacuum/metadata.xml
deleted file mode 100644
index 69557bbd0f96..000000000000
--- a/net-im/vacuum/metadata.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>maksbotan@gentoo.org</email>
- <name>Maxim Koltsov</name>
- </maintainer>
- <maintainer type="person">
- <email>reagentoo@gmail.com</email>
- <name>Dmitry Baranov</name>
- </maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <use>
- <flag name="adiummessagestyle">Use UI styles created for Adium</flag>
- <flag name="annotations">Enable adding comments to the contacts in the roster</flag>
- <flag name="autostatus">Change the status in accordance with the time of inactivity</flag>
- <flag name="avatars">Enable assigning and displaying avatars</flag>
- <flag name="birthdayreminder">Reminds about birthdays of your friends</flag>
- <flag name="bitsofbinary">Allow other modules to receive or send a small amount of binary data in XMPP stanza</flag>
- <flag name="bookmarks">Enable creating bookmarks of the Jabber conferences and Web pages</flag>
- <flag name="captchaforms">Perform tests for humanity outside of Web browser</flag>
- <flag name="chatstates">Post user's activity to the chat</flag>
- <flag name="clientinfo">Enable sending and receiving peer's application version, local time and last activity info</flag>
- <flag name="commands">Enable performing special commands provided by various services</flag>
- <flag name="compress">Compress stream of messages</flag>
- <flag name="console">Enable inspecting a raw XML stream</flag>
- <flag name="dataforms">Allow other modules to process and display data forms intended for the user</flag>
- <flag name="datastreamsmanager">Enable initiating a custom data stream between two XMPP entities</flag>
- <flag name="emoticons">Enable using smiley images in messages</flag>
- <flag name="filemessagearchive">Allows to save the history of conversations to local files</flag>
- <flag name="filestreamsmanager">Enable transferring files between two XMPP entities</flag>
- <flag name="filetransfer">Enable sending files to peers</flag>
- <flag name="gateways">Simplify the interaction with gateways to other IM systems</flag>
- <flag name="inbandstreams">Enable initiating in-band data stream between two XMPP enitites</flag>
- <flag name="iqauth">Enable logging on Jabber servers withous SASL authentication support</flag>
- <flag name="jabbersearch">Enable searching contacts in Jabber networks</flag>
- <flag name="messagearchiver">Enable saving the communication history both locally and on the server</flag>
- <flag name="messagecarbons">Allows to keep all user IM clients engaged in a conversation</flag>
- <flag name="multiuserchat">Enable Jabber multi-user conferences</flag>
- <flag name="pepmanager">Allows other plugins to receive and publish PEP events</flag>
- <flag name="privacylists">Enable blocking the undesirable contacts</flag>
- <flag name="privatestorage">Allow other modules to store arbitrary data on the server</flag>
- <flag name="recentcontacts">Displays a recently used contacts</flag>
- <flag name="registration">Enable creating accounts in Jabber services</flag>
- <flag name="remotecontrol">Allows to remotely control the client</flag>
- <flag name="rosteritemexchange">Allows to exchange contact list items</flag>
- <flag name="rostersearch">Allows to search for contacts in the roster</flag>
- <flag name="servermessagearchive">Allows to save the history of communications on the server</flag>
- <flag name="servicediscovery">Enable receiving information about Jabber entities</flag>
- <flag name="sessionnegotiation">Enable initiating the session between two entities with setting the rules for XMPP stanzas exchange</flag>
- <flag name="shortcutmanager">Allows to setup user defined shortcuts</flag>
- <flag name="socksstreams">Enable initiating SOCKS5 data streams between two XMPP entities</flag>
- <flag name="urlprocessor">Allows other plugins to load data from custom types of URLs</flag>
- <flag name="vcard">Enable obtaining peer's personal contact information</flag>
- <flag name="xmppuriqueries">Allow other plugins to handle XMPP URI queries</flag>
- <flag name="aspell">Select <pkg>app-text/aspell</pkg> spell checker backend</flag>
- <flag name="enchant">Select <pkg>app-text/enchant</pkg> spell checker backend</flag>
- <flag name="hunspell">Select <pkg>app-text/hunspell</pkg> spell checker backend</flag>
- </use>
-</pkgmetadata>
diff --git a/net-im/vacuum/vacuum-1.3.0_pre20180105.ebuild b/net-im/vacuum/vacuum-1.3.0_pre20180105.ebuild
deleted file mode 100644
index cdb7af2a260d..000000000000
--- a/net-im/vacuum/vacuum-1.3.0_pre20180105.ebuild
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PLOCALES="de es pl ru uk"
-
-inherit cmake-utils l10n
-
-MY_PN="${PN}-im"
-MY_PV="${PV/_pre/.}-Alpha"
-MY_P="${MY_PN}-${MY_PV}"
-
-DESCRIPTION="Qt Crossplatform Jabber client"
-HOMEPAGE="http://www.vacuum-im.org/"
-SRC_URI="https://github.com/Vacuum-IM/${MY_PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0/37" # subslot = libvacuumutils soname version
-KEYWORDS="~amd64 ~x86"
-PLUGINS=( adiummessagestyle annotations autostatus avatars birthdayreminder bitsofbinary bookmarks captchaforms chatstates clientinfo commands compress console dataforms datastreamsmanager emoticons filemessagearchive filestreamsmanager filetransfer gateways inbandstreams iqauth jabbersearch messagearchiver messagecarbons multiuserchat pepmanager privacylists privatestorage recentcontacts registration remotecontrol rosteritemexchange rostersearch servermessagearchive servicediscovery sessionnegotiation shortcutmanager socksstreams urlprocessor vcard xmppuriqueries )
-SPELLCHECKER_BACKENDS="aspell +enchant hunspell"
-IUSE="${PLUGINS[@]/#/+} ${SPELLCHECKER_BACKENDS} +spell"
-
-REQUIRED_USE="
- annotations? ( privatestorage )
- avatars? ( vcard )
- birthdayreminder? ( vcard )
- bookmarks? ( privatestorage )
- captchaforms? ( dataforms )
- commands? ( dataforms )
- datastreamsmanager? ( dataforms )
- filemessagearchive? ( messagearchiver )
- filestreamsmanager? ( datastreamsmanager )
- filetransfer? ( filestreamsmanager datastreamsmanager )
- messagecarbons? ( servicediscovery )
- pepmanager? ( servicediscovery )
- recentcontacts? ( privatestorage )
- registration? ( dataforms )
- remotecontrol? ( commands dataforms )
- servermessagearchive? ( messagearchiver )
- sessionnegotiation? ( dataforms )
- spell? ( ^^ ( ${SPELLCHECKER_BACKENDS//+/} ) )
-"
-
-DEPEND="
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtlockedfile[qt5(+)]
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtxml:5
- net-dns/libidn
- sys-libs/zlib[minizip]
- x11-libs/libXScrnSaver
- adiummessagestyle? ( dev-qt/qtwebkit:5 )
- filemessagearchive? ( dev-qt/qtsql:5[sqlite] )
- messagearchiver? ( dev-qt/qtsql:5[sqlite] )
- spell? (
- aspell? ( app-text/aspell )
- enchant? ( app-text/enchant:0 )
- hunspell? ( app-text/hunspell )
- )
-"
-RDEPEND="${DEPEND}
- !net-im/vacuum-spellchecker
-"
-
-DOCS=( AUTHORS CHANGELOG README TRANSLATORS )
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- # Force usage of system libraries
- rm -rf src/thirdparty/{hunspell,idn,minizip,qtlockedfile,zlib} || die
-
- # Supress find thirdparty library in the system
- sed -i -r -e "/find_library.+qxtglobalshortcut/d" \
- CMakeLists.txt || die
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -DINSTALL_LIB_DIR="$(get_libdir)"
- -DINSTALL_SDK=ON
- -DLANGS="$(l10n_get_locales)"
- -DINSTALL_DOCS=OFF
- -DFORCE_BUNDLED_MINIZIP=OFF
- -DPLUGIN_statistics=OFF
- -DPLUGIN_spellchecker=$(usex spell)
- )
-
- for x in ${PLUGINS[@]}; do
- mycmakeargs+=( -DPLUGIN_${x}=$(usex $x) )
- done
-
- for i in ${SPELLCHECKER_BACKENDS//+/}; do
- use "${i}" && mycmakeargs+=( -DSPELLCHECKER_BACKEND="${i}" )
- done
-
- cmake-utils_src_configure
-}
diff --git a/net-im/vacuum/vacuum-9999.ebuild b/net-im/vacuum/vacuum-9999.ebuild
deleted file mode 100644
index edcb05c884a1..000000000000
--- a/net-im/vacuum/vacuum-9999.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-EGIT_REPO_URI="https://github.com/Vacuum-IM/vacuum-im.git"
-PLOCALES="de es pl ru uk"
-inherit cmake-utils git-r3 l10n
-
-DESCRIPTION="Qt Crossplatform Jabber client"
-HOMEPAGE="http://www.vacuum-im.org/"
-
-LICENSE="GPL-3"
-SLOT="0/37" # subslot = libvacuumutils soname version
-KEYWORDS=""
-PLUGINS=( adiummessagestyle annotations autostatus avatars birthdayreminder bitsofbinary bookmarks captchaforms chatstates clientinfo commands compress console dataforms datastreamsmanager emoticons filemessagearchive filestreamsmanager filetransfer gateways inbandstreams iqauth jabbersearch messagearchiver messagecarbons multiuserchat pepmanager privacylists privatestorage recentcontacts registration remotecontrol rosteritemexchange rostersearch servermessagearchive servicediscovery sessionnegotiation shortcutmanager socksstreams urlprocessor vcard xmppuriqueries )
-SPELLCHECKER_BACKENDS="aspell +enchant hunspell"
-IUSE="${PLUGINS[@]/#/+} ${SPELLCHECKER_BACKENDS} +spell"
-
-REQUIRED_USE="
- annotations? ( privatestorage )
- avatars? ( vcard )
- birthdayreminder? ( vcard )
- bookmarks? ( privatestorage )
- captchaforms? ( dataforms )
- commands? ( dataforms )
- datastreamsmanager? ( dataforms )
- filemessagearchive? ( messagearchiver )
- filestreamsmanager? ( datastreamsmanager )
- filetransfer? ( filestreamsmanager datastreamsmanager )
- messagecarbons? ( servicediscovery )
- pepmanager? ( servicediscovery )
- recentcontacts? ( privatestorage )
- registration? ( dataforms )
- remotecontrol? ( commands dataforms )
- servermessagearchive? ( messagearchiver )
- sessionnegotiation? ( dataforms )
- spell? ( ^^ ( ${SPELLCHECKER_BACKENDS//+/} ) )
-"
-
-DEPEND="
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtlockedfile[qt5(+)]
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtxml:5
- net-dns/libidn
- sys-libs/zlib[minizip]
- x11-libs/libXScrnSaver
- adiummessagestyle? ( dev-qt/qtwebkit:5 )
- filemessagearchive? ( dev-qt/qtsql:5[sqlite] )
- messagearchiver? ( dev-qt/qtsql:5[sqlite] )
- spell? (
- aspell? ( app-text/aspell )
- enchant? ( app-text/enchant:0 )
- hunspell? ( app-text/hunspell )
- )
-"
-RDEPEND="${DEPEND}
- !net-im/vacuum-spellchecker
-"
-
-DOCS=( AUTHORS CHANGELOG README TRANSLATORS )
-
-src_prepare() {
- # Force usage of system libraries
- rm -rf src/thirdparty/{hunspell,idn,minizip,qtlockedfile,zlib} || die
-
- # Supress find thirdparty library in the system
- sed -i -r -e "/find_library.+qxtglobalshortcut/d" \
- CMakeLists.txt || die
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -DINSTALL_LIB_DIR="$(get_libdir)"
- -DINSTALL_SDK=ON
- -DLANGS="$(l10n_get_locales)"
- -DINSTALL_DOCS=OFF
- -DFORCE_BUNDLED_MINIZIP=OFF
- -DPLUGIN_statistics=OFF
- -DPLUGIN_spellchecker=$(usex spell)
- )
-
- for x in ${PLUGINS[@]}; do
- mycmakeargs+=( -DPLUGIN_${x}=$(usex $x) )
- done
-
- for i in ${SPELLCHECKER_BACKENDS//+/}; do
- use "${i}" && mycmakeargs+=( -DSPELLCHECKER_BACKEND="${i}" )
- done
-
- cmake-utils_src_configure
-}
diff --git a/net-im/whatsapp-desktop-bin/Manifest b/net-im/whatsapp-desktop-bin/Manifest
new file mode 100644
index 000000000000..797f52ec5c1b
--- /dev/null
+++ b/net-im/whatsapp-desktop-bin/Manifest
@@ -0,0 +1,2 @@
+DIST whatsapp-desktop-bin-amd64-0.5.2.deb 79421814 BLAKE2B db9a2c29b1fc02a265f42d87c3582917bdbbeb99debf09a0e4ba97446b962483f6b6c06f36c1bbae826142085f9445b895f16c98e1f1d847f8730cd81889ace8 SHA512 4b5fecfeea2eebeadebacc96bcb217fe030f23a37b7979f3ea2444f5f7bccada3d126512853ad431b997c7b46ca8d86e396143c8dd36ffdc6a0beb542b77b41e
+DIST whatsapp-desktop-bin-x86-0.5.2.deb 68963072 BLAKE2B fb03f73e489369a5911cc5bf44595227cdc6de7a3c08a89dae8077c940a8a59b99829fc59885f276efa4829e43e94ad2ad5abd8373f673461753d07500f3f327 SHA512 f388a7db11b84de6283501057a28b42aaa4834582ed6e389c8d0ffff20146f890842e266cca40cd2ac71c4eae6d9f43eb2a794c5d4db4f1b435a93fcf7c25b83
diff --git a/net-im/whatsapp-desktop-bin/metadata.xml b/net-im/whatsapp-desktop-bin/metadata.xml
new file mode 100644
index 000000000000..e16a94e5f9eb
--- /dev/null
+++ b/net-im/whatsapp-desktop-bin/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">oOthkOo/whatsapp-desktop</remote-id>
+ <bugs-to>https://github.com/oOthkOo/whatsapp-desktop/issues</bugs-to>
+ </upstream>
+ <maintainer type="person">
+ <email>andrewammerlaan@gentoo.org</email>
+ <name>Andrew Ammerlaan</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-im/whatsapp-desktop-bin/whatsapp-desktop-bin-0.5.2-r3.ebuild b/net-im/whatsapp-desktop-bin/whatsapp-desktop-bin-0.5.2-r3.ebuild
new file mode 100644
index 000000000000..1e3b3c9a8754
--- /dev/null
+++ b/net-im/whatsapp-desktop-bin/whatsapp-desktop-bin-0.5.2-r3.ebuild
@@ -0,0 +1,112 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_LANGS="
+ am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
+ hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
+ sw ta te th tr uk vi zh-CN zh-TW
+"
+
+inherit chromium-2 desktop unpacker xdg
+
+DESCRIPTION="Unofficial electron-based wrapper around WhatsApp Web"
+HOMEPAGE="https://github.com/oOthkOo/whatsapp-desktop"
+SRC_URI="
+ amd64? ( https://github.com/oOthkOo/whatsapp-desktop/releases/download/v${PV}/whatsapp-desktop-x64.deb -> ${PN}-amd64-${PV}.deb )
+ x86? ( https://github.com/oOthkOo/whatsapp-desktop/releases/download/v${PV}/whatsapp-desktop-x32.deb -> ${PN}-x86-${PV}.deb )
+"
+S="${WORKDIR}"
+
+KEYWORDS="-* ~amd64 ~x86"
+# Electron bundles a bunch of things
+LICENSE="
+ MIT BSD BSD-2 BSD-4 AFL-2.1 Apache-2.0 Ms-PL GPL-2 GPL-3 LGPL-2.1 APSL-2
+ unRAR OFL CC-BY-SA-3.0 MPL-2.0 android public-domain all-rights-reserved
+"
+SLOT="0"
+RESTRICT="bindist mirror"
+
+RDEPEND="
+ || (
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ ( app-accessibility/at-spi2-atk dev-libs/atk )
+ )
+ dev-libs/expat
+ dev-libs/libayatana-appindicator
+ dev-libs/nspr
+ dev-libs/nss
+ media-fonts/noto-emoji
+ media-libs/alsa-lib
+ net-print/cups
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/libnotify
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXtst
+ x11-libs/libXScrnSaver
+ x11-libs/pango
+"
+
+QA_PREBUILT="opt/whatsapp-desktop/*"
+
+pkg_pretend() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_prepare() {
+ default
+ # cleanup languages
+ pushd "opt/whatsapp-desktop/locales" || die
+ chromium_remove_language_paks
+ popd || die
+}
+
+src_configure() {
+ chromium_suid_sandbox_check_kernel_config
+ default
+}
+
+src_install() {
+ for size in {64,128}; do
+ doicon -s ${size} "usr/share/icons/hicolor/${size}x${size}/apps/whatsapp.png"
+ done
+
+ domenu usr/share/applications/whatsapp.desktop
+
+ local DESTDIR="/opt/whatsapp-desktop"
+ dosym "../../usr/lib64/libayatana-appindicator3.so" "${DESTDIR}/libappindicator3.so"
+
+ pushd "opt/whatsapp-desktop" || die
+
+ exeinto "${DESTDIR}"
+ doexe chrome-sandbox WhatsApp *.so*
+
+ exeinto "${DESTDIR}/swiftshader"
+ doexe swiftshader/*.so*
+
+ insinto "${DESTDIR}"
+ doins *.pak *.bin *.json *.dat
+ insopts -m0755
+ doins -r locales resources
+
+ # Chrome-sandbox requires the setuid bit to be specifically set.
+ # see https://github.com/electron/electron/issues/17972
+ fperms 4755 "${DESTDIR}"/chrome-sandbox
+
+ dosym "${DESTDIR}"/WhatsApp /opt/bin/WhatsApp
+ popd || die
+}
diff --git a/net-im/whatsie/Manifest b/net-im/whatsie/Manifest
new file mode 100644
index 000000000000..c6c1fe39f53b
--- /dev/null
+++ b/net-im/whatsie/Manifest
@@ -0,0 +1 @@
+DIST whatsie-4.14.2.tar.gz 21146777 BLAKE2B 3d923b9d4b109cbc894481fed9723fe84d992663ea953218cd4b128317aebe2fb8a60608d351cc9f4cfc5a976713ce2a3a642a122276068ed63a96e6cf656603 SHA512 b0b6ab0fab30723ee64b723f79776b6953229502e22f4c5e9fb809aa198e369ee05398abca218680adeea1acfcafd0026e13e424458fedad2c0260c2d956fffb
diff --git a/net-im/whatsie/metadata.xml b/net-im/whatsie/metadata.xml
new file mode 100644
index 000000000000..cbf7db3cb5c1
--- /dev/null
+++ b/net-im/whatsie/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>andrewammerlaan@gentoo.org</email>
+ <name>Andrew Ammerlaan</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">keshavbhatt/whatsie</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-im/whatsie/whatsie-4.14.2.ebuild b/net-im/whatsie/whatsie-4.14.2.ebuild
new file mode 100644
index 000000000000..cecf52d1bc2d
--- /dev/null
+++ b/net-im/whatsie/whatsie-4.14.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qmake-utils xdg
+
+DESCRIPTION="Qt Based WhatsApp Client"
+HOMEPAGE="https://github.com/keshavbhatt/whatsie"
+SRC_URI="https://github.com/keshavbhatt/whatsie/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}/src"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+QT_MIN="5.15"
+
+DEPEND="
+ x11-libs/libX11
+ x11-libs/libxcb:=
+ >=dev-qt/qtcore-${QT_MIN}:5
+ >=dev-qt/qtgui-${QT_MIN}:5
+ >=dev-qt/qtnetwork-${QT_MIN}:5
+ >=dev-qt/qtpositioning-${QT_MIN}:5
+ >=dev-qt/qtwebengine-${QT_MIN}:5[widgets]
+ >=dev-qt/qtwidgets-${QT_MIN}:5
+"
+
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ eqmake5
+}
+
+src_install() {
+ einstalldocs
+ INSTALL_ROOT="${ED}" emake install
+}
diff --git a/net-im/yowsup/Manifest b/net-im/yowsup/Manifest
index 36bedc4cf104..50b4c8766b05 100644
--- a/net-im/yowsup/Manifest
+++ b/net-im/yowsup/Manifest
@@ -1 +1 @@
-DIST yowsup-3.2.3_p20190905.tar.gz 150149 BLAKE2B 149c49df1a3b4df9163abcb1625b7e15e41d81f6a1a649c08d8cca88cce6cf10488778301fc96af3b2fe9e668e855023e56da6e6e8b3b9038994273f19404b78 SHA512 4b59a30bf73797750b92aecf45bf2e551fcbb249688efac631400bf532e21b739e9a6628ed01da4d520ed9296657ae8c5463c3560b165c5d696fd18f1e700be7
+DIST yowsup-3.3.0.tar.gz 155950 BLAKE2B 7ade7f7e05aff14d5154d35d5c2a1841ee66893059bd995facb8297d7e6f1dde4468105dc3f03b5462efbf92cbd079c457440bb1580235bbbcfaddeab2244b56 SHA512 304409f02aa3720b0f70a83fe4dbe288fa1c5659642878d7bd1354359524a66c39b9f5baa9899224497f61f974d9b64ba67e07d866fda2589413070bb9ef1aad
diff --git a/net-im/yowsup/metadata.xml b/net-im/yowsup/metadata.xml
index 9ca4163e5fe2..6e05a0b22210 100644
--- a/net-im/yowsup/metadata.xml
+++ b/net-im/yowsup/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/net-im/yowsup/yowsup-3.2.3_p20190905.ebuild b/net-im/yowsup/yowsup-3.2.3_p20190905.ebuild
deleted file mode 100644
index ddf34d927d5d..000000000000
--- a/net-im/yowsup/yowsup-3.2.3_p20190905.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS="bdepend"
-EGIT_COMMIT="2adc067f306d9e7d8b634f66e96c52d80a42e1ff"
-PYTHON_COMPAT=( python3_{6,7,8} )
-PYTHON_REQ_USE="readline"
-
-inherit distutils-r1
-
-DESCRIPTION="A library that enables you to build applications which use the WhatsApp service"
-HOMEPAGE="https://github.com/tgalal/yowsup"
-SRC_URI="https://github.com/tgalal/yowsup/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- dev-python/appdirs[${PYTHON_USEDEP}]
- dev-python/configargparse[${PYTHON_USEDEP}]
- dev-python/consonance[${PYTHON_USEDEP}]
- dev-python/pillow[${PYTHON_USEDEP}]
- dev-python/protobuf-python[${PYTHON_USEDEP}]
- dev-python/python-axolotl[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
-
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
-
-PATCHES=( "${FILESDIR}/${PF}-fix-install-path.patch" )
-
-src_prepare() {
- default
-
- # After talking to upstream, version restriction can be lifted
- # and also 'argparse' needs to be removed.
- sed -e 's/==0.1.3-1//' -e 's/==0.2.2//' -e 's/==1.10//' -e 's/argparse//' -i setup.py || die
-}
-
-pkg_postinst() {
- einfo "Warning: It seems that recently yowsup gets detected during registration"
- einfo "resulting in an instant ban for your number right after registering"
- einfo "with the code you receive by sms/voice."
- einfo "See https://github.com/tgalal/yowsup/issues/2829 for more information."
-}
diff --git a/net-im/yowsup/yowsup-3.3.0.ebuild b/net-im/yowsup/yowsup-3.3.0.ebuild
new file mode 100644
index 000000000000..b1da807a7464
--- /dev/null
+++ b/net-im/yowsup/yowsup-3.3.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="readline"
+
+inherit distutils-r1
+
+DESCRIPTION="A library that enables you to build applications which use the WhatsApp service"
+HOMEPAGE="https://github.com/tgalal/yowsup"
+SRC_URI="https://github.com/tgalal/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+# This package contains no-op tests, so they actually cannot be run
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/appdirs[${PYTHON_USEDEP}]
+ dev-python/ConfigArgParse[${PYTHON_USEDEP}]
+ dev-python/consonance[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/protobuf-python[${PYTHON_USEDEP}]
+ dev-python/python-axolotl[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-3.2.3_p20190905-fix-install-path.patch" )
+
+src_prepare() {
+ default
+
+ # After talking to upstream, version restriction can be lifted
+ # and also 'argparse' needs to be removed.
+ sed -e 's/==0.1.5//' -e 's/==0.2.2//' -e 's/==1.10//' -e 's/>=3.6.0//' -e 's/argparse//' -i setup.py || die
+}
diff --git a/net-im/ysm/files/ysm-2.9.9.1-dont-strip-binary.patch b/net-im/ysm/files/ysm-2.9.9.1-dont-strip-binary.patch
new file mode 100644
index 000000000000..dd84db69b462
--- /dev/null
+++ b/net-im/ysm/files/ysm-2.9.9.1-dont-strip-binary.patch
@@ -0,0 +1,17 @@
+From bcdc0714b9dcd08714374aa83ab112f1da0600a7 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 21 Apr 2021 00:45:47 +0000
+Subject: [PATCH 2/2] Don't strip binary
+
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -53,7 +53,7 @@ install-prog:
+ @if [ -f "$(DESTDIR)$(bindir)/$(PROG)" ]; then \
+ mv -f "$(DESTDIR)$(bindir)/$(PROG)" "$(DESTDIR)$(bindir)/$(PROG).old"; \
+ fi
+- $(INSTALL) -s $(PROG) $(DESTDIR)$(bindir)/ ;
++ $(INSTALL) $(PROG) $(DESTDIR)$(bindir)/ ;
+
+ @echo -e \
+ " **********************************************************\n"\
+--
diff --git a/net-im/ysm/files/ysm-2.9.9.1-fix-bashism.patch b/net-im/ysm/files/ysm-2.9.9.1-fix-bashism.patch
new file mode 100644
index 000000000000..dcfeecb04c82
--- /dev/null
+++ b/net-im/ysm/files/ysm-2.9.9.1-fix-bashism.patch
@@ -0,0 +1,17 @@
+From 52470a9be22fb4f8b6092e744c324ba691aff583 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 21 Apr 2021 00:45:27 +0000
+Subject: [PATCH 1/2] Fix bashism
+
+--- a/configure.in
++++ b/configure.in
+@@ -94,7 +94,7 @@ AC_CHECK_LIB([nsl],
+
+ # final checks
+
+-if test "$vl_cv_lib_readline" == "no"; then
++if test "$vl_cv_lib_readline" = "xno"; then
+ # are we using getline instead? do we have threads?
+ if test "$pthread_libs"; then
+ CMDOBJS="cmdline/getline.o $CMDOBJS"
+--
diff --git a/net-im/ysm/files/ysm-2.9.9.1-fix-configure.patch b/net-im/ysm/files/ysm-2.9.9.1-fix-configure.patch
new file mode 100644
index 000000000000..cda0654e8e38
--- /dev/null
+++ b/net-im/ysm/files/ysm-2.9.9.1-fix-configure.patch
@@ -0,0 +1,163 @@
+From d86f720bf221d713243e60147c412c05696bae7a Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 21 Apr 2021 01:16:11 +0000
+Subject: [PATCH] Rewrite configure.ac
+
+First cut at rewriting the configure script to use standard macros. Couldn't
+find the macros referred to in the original and they were non-standard anyway.
+
+First noticed when fixing a Bashism.
+---
+ configure.in | 74 +++++++++++++++++--------------------------------
+ src/YSM_Setup.c | 3 +-
+ 2 files changed, 26 insertions(+), 51 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 767fb51..e9f4262 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1,4 +1,5 @@
+ AC_INIT(src/YSM_Main.c)
++
+ # give welcome
+ echo ""
+ echo ""
+@@ -11,32 +12,20 @@ AC_PROG_CC
+ AC_PROG_INSTALL
+ AC_PROG_MAKE_SET
+
+-# check missing posix types
+-CHECK_POSIX_TYPES
+-
+-# enable command line options.
+-ac_arg_threads="no"
+-ac_arg_readline="no"
++AC_ARG_ENABLE([threads],
++ AS_HELP_STRING([--disable-threads], [Disable threads]))
+
+-AC_ARG_ENABLE([threads],
+- AC_HELP_STRING([--disable-threads],
+- [disable threads support]),
+- ac_arg_threads=$enableval, ac_arg_threads=yes)
+-
+-AC_ARG_ENABLE([readline],
+- AC_HELP_STRING([--disable-readline],
+- [do not try to use the readline library]),
+- ac_arg_readline=$enableval, ac_arg_readline=yes)
++AC_ARG_ENABLE([readline],
++ AS_HELP_STRING([--disable-readline], [Disable readline]))
+
+ ##### fribidi #####
+
+ AC_ARG_WITH(fribidi,
+ [ --with-fribidi=[DIR] enable the fribidi library in [DIR] to enable Hebrew and Arabic support],
+- [with_fribidi=$withval],
+- [with_fribidi=no])
++ [with_fribidi=$withval])
+
+-if test "$with_fribidi" = "yes"; then
+- for ac_dir in /usr/local /usr; do
++if test "x$with_fribidi" = "xyes"; then
++ for ac_dir in /usr /usr/local; do
+ if test -f "$ac_dir/include/fribidi/fribidi.h"; then
+ with_fribidi=$ac_dir
+ break;
+@@ -44,8 +33,8 @@ if test "$with_fribidi" = "yes"; then
+ done
+ fi
+
+-if test -n "$with_fribidi" -a "$with_fribidi" != "no"; then
+- if test "$with_fribidi" = "yes"; then with_fribidi="/usr"; fi
++if test -n "$with_fribidi" -a "x$with_fribidi" != "xno"; then
++ if test "x$with_fribidi" = "xyes"; then with_fribidi="/usr"; fi
+
+ if test -r $with_fribidi/include/fribidi/fribidi.h; then
+ LIBS="$LIBS `$with_fribidi/bin/fribidi-config --libs`"
+@@ -53,36 +42,23 @@ if test -n "$with_fribidi" -a "$with_fribidi" != "no"; then
+ fi
+ fi
+
+-##### fribidi #####
+-
+-AC_CACHE_CHECK([whether to enable threads support],
+- ac_arg_threads, ac_arg_threads)
+-
+-AC_CACHE_CHECK([whether to use the readline library],
+- ac_arg_readline, ac_arg_readline)
+-
+-
+ # only check for readline if we have threads support
+-if test "x$ac_arg_threads" = "xyes"; then
+- CHECK_POSIX_THREADS
++if test "x$enable_threads" != "xno"; then
++ AC_DEFINE([YSM_WITH_THREADS], [1], [Building with threads])
++
++ AX_PTHREAD
++ LIBS="$LIBS $PTHREAD_LIBS"
++ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+
+ # check for readline if we have threads only
+- if test "$pthread_libs" != "no" && test "x$ac_arg_readline" = "xyes";
+- then
+- CHECK_READLINE
+- else
+- vl_cv_lib_readline="no"
++ if test "x$PTHREAD_LIBS" != "xno" -a "x$enable_readline" != "xno"; then
++ AX_LIB_READLINE
++ LIBS="$LIBS $READLINE_LIBS"
++ CFLAGS="$CFLAGS $READLINE_CFLAGS"
+ fi
+-else
+- vl_cv_lib_readline="no"
+ fi
+
+-
+-# check for iconv
+-CHECK_ICONV
+-
+-# check for setenv
+-CHECK_SETENV
++AM_ICONV
+
+ # check for sparc required libraries
+ AC_CHECK_LIB([socket],
+@@ -93,18 +69,18 @@ AC_CHECK_LIB([nsl],
+ LIBS="-lnsl $LIBS")
+
+ # final checks
+-
+-if test "$vl_cv_lib_readline" = "xno"; then
++if test "$enable_readline" = "xno"; then
+ # are we using getline instead? do we have threads?
+- if test "$pthread_libs"; then
++ if test "$PTHREAD_LIBS"; then
+ CMDOBJS="cmdline/getline.o $CMDOBJS"
+ else
+ # no threads, use ysmreadline!.
+ CMDOBJS="cmdline/ysmline.o $CMDOBJS"
+ fi
++else
++ AC_DEFINE([USE_READLINE], [1], [Using GNU Readline])
+ fi
+
+-AC_SUBST(pthread_libs)
+ AC_SUBST(CMDOBJS)
+ AC_STDC_HEADERS
+ AC_OUTPUT([Makefile src/Makefile src/man/Makefile])
+diff --git a/src/YSM_Setup.c b/src/YSM_Setup.c
+index d91c143..8436549 100644
+--- a/src/YSM_Setup.c
++++ b/src/YSM_Setup.c
+@@ -743,8 +743,7 @@ int tries = 0;
+ #define YSMOPENCONFIG(rwx) (fd = YSM_fopen(YSM_cfgfile,rwx))
+ #define YSMCLOSECONFIG() YSM_fclose(fd)
+
+-__inline void
+-CFGWRITE(FILE *fd, const u_int8_t *foo, ...)
++void CFGWRITE(FILE *fd, const u_int8_t *foo, ...)
+ {
+ va_list args;
+ va_start(args, foo);
+--
+2.31.1
+
diff --git a/net-im/ysm/metadata.xml b/net-im/ysm/metadata.xml
index bf2e0f5bcd39..2687f43304ff 100644
--- a/net-im/ysm/metadata.xml
+++ b/net-im/ysm/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/net-im/ysm/ysm-2.9.9.1-r1.ebuild b/net-im/ysm/ysm-2.9.9.1-r1.ebuild
deleted file mode 100644
index 1cc3184874b7..000000000000
--- a/net-im/ysm/ysm-2.9.9.1-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic versionator
-
-MY_PV="$(replace_all_version_separators _)"
-
-DESCRIPTION="A console ICQ client supporting versions 7/8"
-HOMEPAGE="http://ysmv7.sourceforge.net/"
-SRC_URI="mirror://sourceforge/ysmv7/${PN}v7_${MY_PV}.tar.bz2"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE=""
-RESTRICT="mirror"
-
-S=${WORKDIR}/${PN}v7_${MY_PV}
-
-src_prepare() {
- # fix bug 570408 by restoring pre-GCC5 inline semantics
- append-cflags -std=gnu89
- default
-}
diff --git a/net-im/ysm/ysm-2.9.9.1-r2.ebuild b/net-im/ysm/ysm-2.9.9.1-r2.ebuild
new file mode 100644
index 000000000000..308a744ac371
--- /dev/null
+++ b/net-im/ysm/ysm-2.9.9.1-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic
+
+MY_PV=$(ver_rs 1- _)
+
+DESCRIPTION="A console ICQ client supporting versions 7/8"
+HOMEPAGE="http://ysmv7.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/ysmv7/${PN}v7_${MY_PV}.tar.bz2"
+S="${WORKDIR}"/${PN}v7_${MY_PV}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+RESTRICT="mirror"
+
+# Introduced by fix-configure.patch
+BDEPEND="dev-build/autoconf-archive"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.9.9.1-dont-strip-binary.patch
+ "${FILESDIR}"/${PN}-2.9.9.1-fix-bashism.patch
+ "${FILESDIR}"/${PN}-2.9.9.1-fix-configure.patch
+)
+
+src_prepare() {
+ default
+
+ mv configure.{in,ac} || die
+
+ # Made obsolete by rewrite patch (fix-configure.patch)
+ rm aclocal.m4 || die
+
+ config_rpath_update .
+ eautoreconf
+}
+
+src_configure() {
+ # fix bug #570408 by restoring pre-GCC 5 inline semantics
+ append-cflags -std=gnu89
+
+ econf
+}
diff --git a/net-im/zoom/Manifest b/net-im/zoom/Manifest
index dab6701228db..eabb1df63e82 100644
--- a/net-im/zoom/Manifest
+++ b/net-im/zoom/Manifest
@@ -1,4 +1,2 @@
-DIST zoom-5.0.403652.0509_i686.tar.xz 38658880 BLAKE2B 60d93987f627ecaeb149570e225d9c0e74ddb3e21a9565e7465ff2aab0dee3ff3d304ec58f35a9ed783e4fbb8ca7d4c24706a7aa76c194f94e40ab77f75073f9 SHA512 3f49c76b28dc0c14272df6632cb0cdafcd67500bf14a5a7e4e0a7f6e685a0d7e3adef522a1c5ba3f8a31ef8c5d880ed686dcf1dae1934b1f86dc8e3871894b64
-DIST zoom-5.0.403652.0509_x86_64.tar.xz 41506968 BLAKE2B 51fff1a2915fad97c4f5cfde370c1dd1c4849d01b9ea7eaa77580d31d46acbdcc4a19bed7e105e8323f02c7bc344d4ff42ed2a434729b880eedb66f1a3f1f0b4 SHA512 5a6c2070b71324ef89040377b759c5ba0f4ab21662c9cf714e57af5bc0a3f28d029f03fd80883479f7a62561b2f136ad480d2efd3dce83398aab814e2a21f8fe
-DIST zoom-5.0.408598.0517_i686.tar.xz 38668604 BLAKE2B a503019946689f796a96a29d930ba4a997d233d6f0ff7ad6c100ab25b581b58fd09e811ae444ee0dd94e60c3ddc8b52bcdbd45f2c1daaa201fc71406bf11b764 SHA512 3f38df83c26d2a2be6af7cd8f2e4043edbdaf4262becd8ac0eea07e4822743fdb348bc9fbdd1111a9d378aed7c0ab540755fb0218abd0c1eef32a72bb57eed27
-DIST zoom-5.0.408598.0517_x86_64.tar.xz 41559224 BLAKE2B 56ef7e0b9f7277a7391d92bb8b0259ea98b2931b216bcace8dff43981f0b148846c5bfe0b1c476692712fd342e6652f4cae8d536e7f645168a84fb113e3c97ee SHA512 46762cf46974e4239bc716d1ccba8ec74ba1040bb7f917625535edc2422dcd07df22a448360d35a3e82ef1ab905d7f280401005e9398b5229e515d120d848222
+DIST zoom-5.17.11.3835_x86_64.tar.xz 186799104 BLAKE2B 84cc1dc046742392bd41a906050ec424e431c63a94224cadb021baf0463bd73697557f7344d91a759d49e288d36bb8fa1ebaf1690d4264caccce2dbb774ff0aa SHA512 5749ad8f472ad035e307e544f648e0d6e15625c0566abc5e0d005a1784b058ebe45aa5ddd48ed52a98781cb3406b15b0cbe1b593a77bd7a203493835d83e6c32
+DIST zoom-6.0.2.4680_x86_64.tar.xz 202434660 BLAKE2B b73103c759a6d41257aa31919e6d992663e1984364ee7a2d42ae61576afcb7e61c206088885f2adb076a446bec77da6fad59d40b446f37c4b3732908dc0b4982 SHA512 e8a842b281fea1f5399cb245208bed77689035226af5901e856f7d2542aa2e623a8a7f7647e312849deedac324853f945c26252d37bc0f98e8210a958e7f15fa
diff --git a/net-im/zoom/files/README.gentoo b/net-im/zoom/files/README.gentoo
deleted file mode 100644
index 06f1f9b3dce0..000000000000
--- a/net-im/zoom/files/README.gentoo
+++ /dev/null
@@ -1,5 +0,0 @@
-Some of Zoom's screen share features (e.g., the whiteboard) require
-display compositing. If you encounter a black window when sharing
-the screen, then one of the following actions should help:
-- Enable compositing in your window manager if it is supported
-- Alternatively, run the xcompmgr command (from x11-misc/xcompmgr)
diff --git a/net-im/zoom/files/zoom-videocam.svg b/net-im/zoom/files/zoom-videocam.svg
deleted file mode 100644
index 33e4ac77b9fb..000000000000
--- a/net-im/zoom/files/zoom-videocam.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
- <rect width="24" height="24" rx="6" ry="6" fill="#2d8cff"/>
- <path d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z" fill="#ffffff"/>
-</svg>
diff --git a/net-im/zoom/files/zoom-videocam.xpm b/net-im/zoom/files/zoom-videocam.xpm
deleted file mode 100644
index 380e86f2cc27..000000000000
--- a/net-im/zoom/files/zoom-videocam.xpm
+++ /dev/null
@@ -1,32 +0,0 @@
-/* XPM */
-static char * zoom_videocam_xpm[] = {
-"24 24 5 1",
-" c None",
-". c #2D8CFF",
-"+ c #469AFF",
-"@ c #E3F0FF",
-"# c #FFFFFF",
-" ................ ",
-" .................... ",
-" ...................... ",
-" ...................... ",
-"........................",
-"........................",
-"...##############...+...",
-"...##############..+@...",
-"...##############.+@#...",
-"...##############+@##...",
-"...##############@###...",
-"...##################...",
-"...##################...",
-"...##############@###...",
-"...##############+@##...",
-"...##############.+@#...",
-"...##############..+@...",
-"...##############...+...",
-"........................",
-"........................",
-" ...................... ",
-" ...................... ",
-" .................... ",
-" ................ "};
diff --git a/net-im/zoom/metadata.xml b/net-im/zoom/metadata.xml
index df9fc1aee0d0..9666965997b3 100644
--- a/net-im/zoom/metadata.xml
+++ b/net-im/zoom/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ulm@gentoo.org</email>
@@ -11,7 +11,11 @@
<email>mva@gentoo.org</email>
</maintainer>
<use>
- <flag name="bundled-libjpeg-turbo">Use bundled libturbojpeg
- instead of <pkg>media-libs/libjpeg-turbo</pkg></flag>
+ <flag name="bundled-qt">
+ Use bundled Qt and icu instead of system-wide libs
+ </flag>
+ <flag name="opencl">
+ Use OpenCL for virtual background support (<pkg>virtual/opencl</pkg>)
+ </flag>
</use>
</pkgmetadata>
diff --git a/net-im/zoom/zoom-5.0.403652.0509.ebuild b/net-im/zoom/zoom-5.0.403652.0509.ebuild
deleted file mode 100644
index 314ddbedc6b4..000000000000
--- a/net-im/zoom/zoom-5.0.403652.0509.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop eutils readme.gentoo-r1 xdg-utils
-
-DESCRIPTION="Video conferencing and web conferencing service"
-HOMEPAGE="https://zoom.us/"
-SRC_URI="amd64? ( https://zoom.us/client/${PV}/${PN}_x86_64.tar.xz -> ${P}_x86_64.tar.xz )
- x86? ( https://zoom.us/client/${PV}/${PN}_i686.tar.xz -> ${P}_i686.tar.xz )"
-S="${WORKDIR}/${PN}"
-
-LICENSE="all-rights-reserved Apache-2.0" # Apache-2.0 for icon
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE="bundled-libjpeg-turbo pulseaudio"
-RESTRICT="mirror bindist strip"
-
-RDEPEND="!games-engines/zoom
- dev-libs/glib:2
- dev-libs/icu
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- amd64? ( dev-qt/qtdeclarative:5[widgets] )
- x86? ( dev-qt/qtdeclarative:5 )
- dev-qt/qtdiag:5
- dev-qt/qtgraphicaleffects:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtquickcontrols:5[widgets]
- dev-qt/qtscript:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- media-sound/mpg123
- sys-apps/dbus
- sys-apps/util-linux
- virtual/opengl
- x11-libs/libX11
- x11-libs/libxcb
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXtst
- x11-libs/xcb-util-image
- x11-libs/xcb-util-keysyms
- !bundled-libjpeg-turbo? ( media-libs/libjpeg-turbo )
- pulseaudio? ( media-sound/pulseaudio )
- !pulseaudio? ( media-libs/alsa-lib )"
-
-BDEPEND="!pulseaudio? ( dev-util/bbe )"
-
-QA_PREBUILT="opt/zoom/*"
-
-src_prepare() {
- default
- if ! use pulseaudio; then
- # For some strange reason, zoom cannot use any ALSA sound devices if
- # it finds libpulse. This causes breakage if media-sound/apulse[sdk]
- # is installed. So, force zoom to ignore libpulse.
- bbe -e 's/libpulse.so/IgNoRePuLsE/' zoom >zoom.tmp || die
- mv zoom.tmp zoom || die
- fi
-}
-
-src_install() {
- insinto /opt/zoom
- exeinto /opt/zoom
- doins -r json sip timezones translations
- doins *.pcm *.pem *.sh Embedded.properties version.txt
- use amd64 && doins icudtl.dat
- doexe zoom{,.sh,linux} zopen ZoomLauncher
- dosym {"../../usr/$(get_libdir)",/opt/zoom}/libmpg123.so
-
- if use bundled-libjpeg-turbo; then
- doexe libturbojpeg.so.0.1.0
- dosym libturbojpeg.so.0.1.0 /opt/zoom/libturbojpeg.so
- else
- dosym {"../../usr/$(get_libdir)",/opt/zoom}/libturbojpeg.so #715106
- fi
-
- make_wrapper zoom ./zoom /opt/zoom
- make_desktop_entry "zoom %U" Zoom zoom-videocam "" \
- "MimeType=x-scheme-handler/zoommtg;application/x-zoom;"
- # The tarball doesn't contain an icon, so take a generic camera icon
- # from https://github.com/google/material-design-icons, modified to be
- # white on a blue background
- doicon -s scalable "${FILESDIR}"/zoom-videocam.svg
- doicon -s 24 "${FILESDIR}"/zoom-videocam.xpm
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-
- local FORCE_PRINT_ELOG v
- for v in ${REPLACING_VERSIONS}; do
- ver_test ${v} -le 5.0.403652.0509 && FORCE_PRINT_ELOG=1
- done
- readme.gentoo_print_elog
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
diff --git a/net-im/zoom/zoom-5.0.408598.0517.ebuild b/net-im/zoom/zoom-5.0.408598.0517.ebuild
deleted file mode 100644
index 314ddbedc6b4..000000000000
--- a/net-im/zoom/zoom-5.0.408598.0517.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop eutils readme.gentoo-r1 xdg-utils
-
-DESCRIPTION="Video conferencing and web conferencing service"
-HOMEPAGE="https://zoom.us/"
-SRC_URI="amd64? ( https://zoom.us/client/${PV}/${PN}_x86_64.tar.xz -> ${P}_x86_64.tar.xz )
- x86? ( https://zoom.us/client/${PV}/${PN}_i686.tar.xz -> ${P}_i686.tar.xz )"
-S="${WORKDIR}/${PN}"
-
-LICENSE="all-rights-reserved Apache-2.0" # Apache-2.0 for icon
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE="bundled-libjpeg-turbo pulseaudio"
-RESTRICT="mirror bindist strip"
-
-RDEPEND="!games-engines/zoom
- dev-libs/glib:2
- dev-libs/icu
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- amd64? ( dev-qt/qtdeclarative:5[widgets] )
- x86? ( dev-qt/qtdeclarative:5 )
- dev-qt/qtdiag:5
- dev-qt/qtgraphicaleffects:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtquickcontrols:5[widgets]
- dev-qt/qtscript:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- media-sound/mpg123
- sys-apps/dbus
- sys-apps/util-linux
- virtual/opengl
- x11-libs/libX11
- x11-libs/libxcb
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXtst
- x11-libs/xcb-util-image
- x11-libs/xcb-util-keysyms
- !bundled-libjpeg-turbo? ( media-libs/libjpeg-turbo )
- pulseaudio? ( media-sound/pulseaudio )
- !pulseaudio? ( media-libs/alsa-lib )"
-
-BDEPEND="!pulseaudio? ( dev-util/bbe )"
-
-QA_PREBUILT="opt/zoom/*"
-
-src_prepare() {
- default
- if ! use pulseaudio; then
- # For some strange reason, zoom cannot use any ALSA sound devices if
- # it finds libpulse. This causes breakage if media-sound/apulse[sdk]
- # is installed. So, force zoom to ignore libpulse.
- bbe -e 's/libpulse.so/IgNoRePuLsE/' zoom >zoom.tmp || die
- mv zoom.tmp zoom || die
- fi
-}
-
-src_install() {
- insinto /opt/zoom
- exeinto /opt/zoom
- doins -r json sip timezones translations
- doins *.pcm *.pem *.sh Embedded.properties version.txt
- use amd64 && doins icudtl.dat
- doexe zoom{,.sh,linux} zopen ZoomLauncher
- dosym {"../../usr/$(get_libdir)",/opt/zoom}/libmpg123.so
-
- if use bundled-libjpeg-turbo; then
- doexe libturbojpeg.so.0.1.0
- dosym libturbojpeg.so.0.1.0 /opt/zoom/libturbojpeg.so
- else
- dosym {"../../usr/$(get_libdir)",/opt/zoom}/libturbojpeg.so #715106
- fi
-
- make_wrapper zoom ./zoom /opt/zoom
- make_desktop_entry "zoom %U" Zoom zoom-videocam "" \
- "MimeType=x-scheme-handler/zoommtg;application/x-zoom;"
- # The tarball doesn't contain an icon, so take a generic camera icon
- # from https://github.com/google/material-design-icons, modified to be
- # white on a blue background
- doicon -s scalable "${FILESDIR}"/zoom-videocam.svg
- doicon -s 24 "${FILESDIR}"/zoom-videocam.xpm
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-
- local FORCE_PRINT_ELOG v
- for v in ${REPLACING_VERSIONS}; do
- ver_test ${v} -le 5.0.403652.0509 && FORCE_PRINT_ELOG=1
- done
- readme.gentoo_print_elog
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
diff --git a/net-im/zoom/zoom-5.17.11.3835.ebuild b/net-im/zoom/zoom-5.17.11.3835.ebuild
new file mode 100644
index 000000000000..17e2c56c3e85
--- /dev/null
+++ b/net-im/zoom/zoom-5.17.11.3835.ebuild
@@ -0,0 +1,181 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop linux-info readme.gentoo-r1 xdg-utils
+
+DESCRIPTION="Video conferencing and web conferencing service"
+HOMEPAGE="https://zoom.us/"
+SRC_URI="https://zoom.us/client/${PV}/${PN}_x86_64.tar.xz -> ${P}_x86_64.tar.xz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="+bundled-qt opencl pulseaudio wayland"
+RESTRICT="mirror bindist strip"
+
+RDEPEND="!games-engines/zoom
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/mit-krb5
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ >=dev-libs/quazip-1.0:0=[qt5(+)]
+ media-libs/alsa-lib
+ media-libs/fdk-aac:0/2
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa[gbm(+)]
+ media-sound/mpg123
+ net-print/cups
+ sys-apps/dbus
+ sys-apps/util-linux
+ sys-libs/glibc
+ sys-libs/zlib
+ virtual/opengl
+ x11-libs/cairo
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon[X]
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxshmfence
+ x11-libs/libXtst
+ x11-libs/pango
+ x11-libs/xcb-util-image
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-renderutil
+ x11-libs/xcb-util-wm
+ opencl? ( virtual/opencl )
+ pulseaudio? ( media-libs/libpulse )
+ wayland? ( dev-libs/wayland )
+ !bundled-qt? (
+ dev-libs/icu
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtdeclarative:5[widgets]
+ dev-qt/qtdiag:5
+ dev-qt/qtgraphicaleffects:5
+ dev-qt/qtgui:5
+ dev-qt/qtlocation:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtquickcontrols:5[widgets]
+ dev-qt/qtquickcontrols2:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ dev-qt/qtxml:5
+ wayland? ( dev-qt/qtwayland )
+ )"
+
+BDEPEND="dev-util/bbe"
+
+CONFIG_CHECK="~USER_NS ~PID_NS ~NET_NS ~SECCOMP_FILTER"
+QA_PREBUILT="opt/zoom/*"
+
+src_prepare() {
+ default
+
+ # The tarball doesn't contain an icon, so extract it from the binary
+ bbe -s -b '/<svg width="32" height="32"/:/<\x2fsvg>\n/' -e 'J 1;D' zoom \
+ >videoconference-zoom.svg && [[ -s videoconference-zoom.svg ]] \
+ || die "Extraction of icon failed"
+
+ if ! use pulseaudio; then
+ # For some strange reason, zoom cannot use any ALSA sound devices if
+ # it finds libpulse. This causes breakage if media-sound/apulse[sdk]
+ # is installed. So, force zoom to ignore libpulse.
+ bbe -e 's/libpulse.so/IgNoRePuLsE/' zoom >zoom.tmp || die
+ mv zoom.tmp zoom || die
+ fi
+}
+
+src_install() {
+ insinto /opt/zoom
+ exeinto /opt/zoom
+ doins -r calendar cef email json ringtone scheduler sip timezones \
+ translations
+ doins *.pcm Embedded.properties version.txt
+ doexe zoom zopen ZoomLauncher *.sh \
+ aomhost libaomagent.so libdvf.so libmkldnn.so \
+ libavcodec.so* libavformat.so* libavutil.so* libswresample.so*
+ fperms a+x /opt/zoom/cef/chrome-sandbox
+ dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libmpg123.so
+ dosym -r "/usr/$(get_libdir)/libfdk-aac.so.2" /opt/zoom/libfdkaac2.so
+ dosym -r "/usr/$(get_libdir)/libquazip1-qt5.so" /opt/zoom/libquazip.so
+
+ if use opencl; then
+ doexe libclDNN64.so
+ dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libOpenCL.so.1
+ fi
+
+ if ! use wayland; then
+ # Soname dependency on libwayland-client.so.0
+ rm "${ED}"/opt/zoom/cef/libGLESv2.so || die
+ fi
+
+ if use bundled-qt; then
+ doins -r Qt
+ find Qt -type f '(' -name '*.so' -o -name '*.so.*' ')' \
+ -printf '/opt/zoom/%p\0' | xargs -0 -r fperms 0755 || die
+ ( # Remove libs and plugins with unresolved soname dependencies.
+ # Why does the upstream package contain such garbage? :-(
+ cd "${ED}"/opt/zoom/Qt || die
+ rm -r plugins/audio plugins/egldeviceintegrations \
+ plugins/platforms/libqeglfs.so \
+ plugins/platforms/libqlinuxfb.so \
+ plugins/platformthemes/libqgtk3.so \
+ qml/QtQml/RemoteObjects \
+ qml/QtQuick/LocalStorage qml/QtQuick/Particles.2 \
+ qml/QtQuick/Scene2D qml/QtQuick/Scene3D \
+ qml/QtQuick/XmlListModel || die
+ use wayland || rm -r lib/libQt5Wayland*.so* plugins/wayland* \
+ plugins/platforms/libqwayland*.so qml/QtWayland || die
+ )
+ else
+ local qtzoom="5.12" qtver=$(best_version dev-qt/qtcore:5)
+ if [[ ${qtver} != dev-qt/qtcore-${qtzoom}.* ]]; then
+ ewarn "You have disabled the bundled-qt USE flag."
+ ewarn "You may experience problems when running Zoom with"
+ ewarn "a version of the system-wide Qt libs other than ${qtzoom}."
+ ewarn "See https://bugs.gentoo.org/798681 for details."
+ fi
+ fi
+
+ dosym -r /opt/zoom/ZoomLauncher /usr/bin/zoom
+ make_desktop_entry "zoom %U" Zoom videoconference-zoom \
+ "Network;VideoConference;" \
+ "MimeType=$(printf '%s;' \
+ x-scheme-handler/zoommtg \
+ x-scheme-handler/zoomus \
+ application/x-zoom)"
+ doicon videoconference-zoom.svg
+ doicon -s scalable videoconference-zoom.svg
+
+ local DOC_CONTENTS="Some of Zoom's screen share features (e.g.
+ the whiteboard) require display compositing. If you encounter
+ a black window when sharing the screen, then one of the following
+ actions should help:
+ \\n- Enable compositing in your window manager if it is supported
+ \\n- Alternatively, run the xcompmgr command (from x11-misc/xcompmgr)"
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/net-im/zoom/zoom-6.0.2.4680.ebuild b/net-im/zoom/zoom-6.0.2.4680.ebuild
new file mode 100644
index 000000000000..ad8149eaf736
--- /dev/null
+++ b/net-im/zoom/zoom-6.0.2.4680.ebuild
@@ -0,0 +1,181 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop linux-info readme.gentoo-r1 xdg-utils
+
+DESCRIPTION="Video conferencing and web conferencing service"
+HOMEPAGE="https://zoom.us/"
+SRC_URI="https://zoom.us/client/${PV}/${PN}_x86_64.tar.xz -> ${P}_x86_64.tar.xz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="+bundled-qt opencl pulseaudio wayland"
+RESTRICT="mirror bindist strip"
+
+RDEPEND="!games-engines/zoom
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/mit-krb5
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ >=dev-libs/quazip-1.0:0=[qt5(+)]
+ media-libs/alsa-lib
+ media-libs/fdk-aac:0/2
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa[gbm(+)]
+ media-sound/mpg123
+ net-print/cups
+ sys-apps/dbus
+ sys-apps/util-linux
+ sys-libs/glibc
+ sys-libs/zlib
+ virtual/opengl
+ x11-libs/cairo
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon[X]
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxshmfence
+ x11-libs/libXtst
+ x11-libs/pango
+ x11-libs/xcb-util-image
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-renderutil
+ x11-libs/xcb-util-wm
+ opencl? ( virtual/opencl )
+ pulseaudio? ( media-libs/libpulse )
+ wayland? ( dev-libs/wayland )
+ !bundled-qt? (
+ dev-libs/icu
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtdeclarative:5[widgets]
+ dev-qt/qtdiag:5
+ dev-qt/qtgraphicaleffects:5
+ dev-qt/qtgui:5
+ dev-qt/qtlocation:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtquickcontrols:5[widgets]
+ dev-qt/qtquickcontrols2:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ dev-qt/qtxml:5
+ wayland? ( dev-qt/qtwayland )
+ )"
+
+BDEPEND="dev-util/bbe"
+
+CONFIG_CHECK="~USER_NS ~PID_NS ~NET_NS ~SECCOMP_FILTER"
+QA_PREBUILT="opt/zoom/*"
+
+src_prepare() {
+ default
+
+ # The tarball doesn't contain an icon, so extract it from the binary
+ bbe -s -b '/<svg width="32" height="32"/:/<\x2fsvg>\n/' -e 'J 1;D' zoom \
+ >videoconference-zoom.svg && [[ -s videoconference-zoom.svg ]] \
+ || die "Extraction of icon failed"
+
+ if ! use pulseaudio; then
+ # For some strange reason, zoom cannot use any ALSA sound devices if
+ # it finds libpulse. This causes breakage if media-sound/apulse[sdk]
+ # is installed. So, force zoom to ignore libpulse.
+ bbe -e 's/libpulse.so/IgNoRePuLsE/' zoom >zoom.tmp || die
+ mv zoom.tmp zoom || die
+ fi
+}
+
+src_install() {
+ insinto /opt/zoom
+ exeinto /opt/zoom
+ doins -r calendar cef chatapp email json ringtone scheduler sip \
+ timezones translations
+ doins *.pcm Embedded.properties version.txt
+ doexe zoom zopen ZoomLauncher *.sh \
+ aomhost libaomagent.so libdvf.so libmkldnn.so \
+ libavcodec.so* libavformat.so* libavutil.so* libswresample.so*
+ fperms a+x /opt/zoom/cef/chrome-sandbox
+ dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libmpg123.so
+ dosym -r "/usr/$(get_libdir)/libfdk-aac.so.2" /opt/zoom/libfdkaac2.so
+ dosym -r "/usr/$(get_libdir)/libquazip1-qt5.so" /opt/zoom/libquazip.so
+
+ if use opencl; then
+ doexe libclDNN64.so
+ dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libOpenCL.so.1
+ fi
+
+ if ! use wayland; then
+ # Soname dependency on libwayland-client.so.0
+ rm "${ED}"/opt/zoom/cef/libGLESv2.so || die
+ fi
+
+ if use bundled-qt; then
+ doins -r Qt
+ find Qt -type f '(' -name '*.so' -o -name '*.so.*' ')' \
+ -printf '/opt/zoom/%p\0' | xargs -0 -r fperms 0755 || die
+ ( # Remove libs and plugins with unresolved soname dependencies.
+ # Why does the upstream package contain such garbage? :-(
+ cd "${ED}"/opt/zoom/Qt || die
+ rm -r plugins/audio plugins/egldeviceintegrations \
+ plugins/platforms/libqeglfs.so \
+ plugins/platforms/libqlinuxfb.so \
+ plugins/platformthemes/libqgtk3.so \
+ qml/QtQml/RemoteObjects \
+ qml/QtQuick/LocalStorage qml/QtQuick/Particles.2 \
+ qml/QtQuick/Scene2D qml/QtQuick/Scene3D \
+ qml/QtQuick/XmlListModel || die
+ use wayland || rm -r lib/libQt5Wayland*.so* plugins/wayland* \
+ plugins/platforms/libqwayland*.so qml/QtWayland || die
+ )
+ else
+ local qtzoom="5.12" qtver=$(best_version dev-qt/qtcore:5)
+ if [[ ${qtver} != dev-qt/qtcore-${qtzoom}.* ]]; then
+ ewarn "You have disabled the bundled-qt USE flag."
+ ewarn "You may experience problems when running Zoom with"
+ ewarn "a version of the system-wide Qt libs other than ${qtzoom}."
+ ewarn "See https://bugs.gentoo.org/798681 for details."
+ fi
+ fi
+
+ dosym -r /opt/zoom/ZoomLauncher /usr/bin/zoom
+ make_desktop_entry "zoom %U" Zoom videoconference-zoom \
+ "Network;VideoConference;" \
+ "MimeType=$(printf '%s;' \
+ x-scheme-handler/zoommtg \
+ x-scheme-handler/zoomus \
+ application/x-zoom)"
+ doicon videoconference-zoom.svg
+ doicon -s scalable videoconference-zoom.svg
+
+ local DOC_CONTENTS="Some of Zoom's screen share features (e.g.
+ the whiteboard) require display compositing. If you encounter
+ a black window when sharing the screen, then one of the following
+ actions should help:
+ \\n- Enable compositing in your window manager if it is supported
+ \\n- Alternatively, run the xcompmgr command (from x11-misc/xcompmgr)"
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}