net-im/psi: sync with upstream
authorSergey Ilinykh <rion4ik@gmail.com>
Sat, 14 Mar 2020 12:26:44 +0000 (15:26 +0300)
committerAndreas Sturmlechner <asturm@gentoo.org>
Mon, 16 Mar 2020 21:26:57 +0000 (22:26 +0100)
Signed-off-by: Sergey Ilinykh <rion4ik@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/14952
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
net-im/psi/metadata.xml
net-im/psi/psi-9999.ebuild

index 96ff15122396521d721c68b917935dee5e96d148..d1fdaf8e1f54585b1735ac1d0d31043dc3c000cc 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='UTF-8'?>
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
        <maintainer type="person">
@@ -9,17 +9,20 @@
                <email>proxy-maint@gentoo.org</email>
                <name>Proxy Maintainers</name>
        </maintainer>
-       <longdescription>Psi is a very good XMPP client that uses Qt</longdescription>
+       <longdescription>
+               Psi is a multi-platform XMPP client based on Qt and supports a wide range of XMPP extensions. It is extremely configurable and extendable with plugins.
+       </longdescription>
        <use>
-               <flag name='aspell'>Enable spellchecking using <pkg>app-text/aspell</pkg></flag>
-               <flag name='enchant'>Enable spellchecking using <pkg>app-text/enchant</pkg></flag>
-               <flag name='extras'>Enable Psi+ patcheset</flag>
-               <flag name='hunspell'>Enable spellchecking using <pkg>app-text/hunspell</pkg></flag>
-               <flag name='iconsets'>Install additional iconsets, some of them has not clear licensing</flag>
-               <flag name='sql'>Enable psi-new-history extras patch</flag>
-               <flag name='webengine'>Use <pkg>dev-qt/qtwebengine</pkg> instead of <pkg>dev-qt/qtwebkit</pkg></flag>
-               <flag name='webkit'>Enable themed, html-based chatlogs</flag>
-               <flag name='whiteboarding'>Enable experimental interactive SVG drawing</flag>
+               <flag name="aspell">Enable spellchecking using <pkg>app-text/aspell</pkg></flag>
+               <flag name="enchant">Enable spellchecking using <pkg>app-text/enchant</pkg></flag>
+               <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>
        <upstream>
                <remote-id type="github">psi-im/psi</remote-id>
index e1a2ea1f5729e7eb2c09d8161ff3c1ca23dd31a1..429334fabc9bfbf9d6e15cbeb1ce30aa43cc1488 100644 (file)
@@ -3,10 +3,10 @@
 
 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"
+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 l10n git-r3 qmake-utils xdg
+inherit git-r3 cmake l10n qmake-utils xdg
 
 DESCRIPTION="Qt XMPP client"
 HOMEPAGE="https://psi-im.org"
@@ -20,13 +20,11 @@ EGIT_MIN_CLONE_TYPE="single"
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS=""
-IUSE="aspell crypt dbus debug doc enchant extras +hunspell iconsets sql webengine webkit whiteboarding xscreensaver"
+IUSE="aspell crypt debug doc enchant extras +hunspell iconsets keyring webengine webkit xscreensaver"
 
 REQUIRED_USE="
        ?? ( aspell enchant hunspell )
        iconsets? ( extras )
-       sql? ( extras )
-       webengine? ( !webkit )
 "
 
 BDEPEND="
@@ -39,10 +37,12 @@ DEPEND="
        app-crypt/qca:2[ssl]
        dev-qt/qtconcurrent:5
        dev-qt/qtcore:5
+       dev-qt/qtdbus:5
        dev-qt/qtgui:5
        dev-qt/qtmultimedia:5
        dev-qt/qtnetwork:5
        dev-qt/qtsql:5[sqlite]
+       dev-qt/qtsvg:5
        dev-qt/qtwidgets:5
        dev-qt/qtx11extras:5
        dev-qt/qtxml:5
@@ -51,20 +51,19 @@ DEPEND="
        x11-libs/libX11
        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:= )
+       keyring? ( dev-libs/qtkeychain:= )
        webengine? (
                dev-qt/qtwebchannel:5
                dev-qt/qtwebengine:5[widgets]
                net-libs/http-parser
        )
        webkit? ( dev-qt/qtwebkit:5 )
-       whiteboarding? ( dev-qt/qtsvg:5 )
-       xscreensaver? ( x11-libs/libXScrnSaver )
 "
 RDEPEND="${DEPEND}
        dev-qt/qtimageformats
+       crypt? ( app-crypt/qca[gpg] )
 "
 
 RESTRICT="test iconsets? ( bindist )"
@@ -83,6 +82,8 @@ pkg_setup() {
                        ewarn "and has not clear licensing."
                        ewarn "Possibly this build is not redistributable in some countries."
                fi
+
+               EGIT_REPO_URI="${PSI_PLUS_URI}/${MY_PN}-snapshots.git"
        fi
 }
 
@@ -95,75 +96,46 @@ src_unpack() {
        EGIT_CHECKOUT_DIR="${WORKDIR}/psi-l10n"
        git-r3_src_unpack
 
-       if use extras; then
+       if use iconsets; then
                unset EGIT_BRANCH EGIT_COMMIT
-               EGIT_CHECKOUT_DIR="${WORKDIR}/psi-plus" \
-               EGIT_REPO_URI="${PSI_PLUS_URI}/main.git" \
+               EGIT_CHECKOUT_DIR="${WORKDIR}/resources" \
+               EGIT_REPO_URI="${PSI_URI}/resources.git" \
                git-r3_src_unpack
-
-               if use iconsets; then
-                       unset EGIT_BRANCH EGIT_COMMIT
-                       EGIT_CHECKOUT_DIR="${WORKDIR}/resources" \
-                       EGIT_REPO_URI="${PSI_PLUS_URI}/resources.git" \
-                       git-r3_src_unpack
-               fi
        fi
 }
 
 src_prepare() {
-       default
-       if use extras; then
-               cp -a "${WORKDIR}/psi-plus/iconsets" "${S}" || die "failed to copy iconsets"
-               if use iconsets; then
-                       cp -a "${WORKDIR}/resources/iconsets" "${S}" || die "failed to copy additional iconsets"
-               fi
-
-               eapply "${WORKDIR}/psi-plus/patches"/*.diff
-               use sql && eapply "${WORKDIR}/psi-plus/patches/dev/psi-new-history.patch"
-
-               vergen="${WORKDIR}/psi-plus/admin/psi-plus-nightly-version"
-               features="$(use webkit && echo '--webkit') $(use webengine && echo '--webengine') $(use sql && echo '--sql')"
-               NIGHTLY_VER=$("${vergen}" ./ $features)
-               elog "Prepared version: ${NIGHTLY_VER}"
-               echo "${NIGHTLY_VER}" > version || die "Failed to write version file"
-
-               qconf || die "Failed to create ./configure."
+       cmake_src_prepare
+       if use iconsets; then
+               cp -a "${WORKDIR}/resources/iconsets" "${S}" || die "failed to copy additional iconsets"
        fi
 }
 
 src_configure() {
-       CONF=(
-               --prefix="${EPREFIX}"/usr
-               --libdir="${EPREFIX}"/usr/$(get_libdir)
-               --no-separate-debug-info
-               --qtdir="$(qt5_get_bindir)/.."
-               $(use_enable aspell)
-               $(use_enable dbus qdbus)
-               $(use_enable enchant)
-               $(use_enable hunspell)
-               $(use_enable xscreensaver xss)
-               $(use_enable whiteboarding)
+       local chattype=basic
+       use webengine && chattype=webengine
+       use webkit && chattype=webkit
+
+       local mycmakeargs=(
+               -DUSE_ASPELL=$(usex aspell)
+               -DUSE_ENCHANT=$(usex enchant)
+               -DUSE_HUNSPELL=$(usex hunspell)
+               -DINSTALL_PLUGINS_SDK=1
+               -DUSE_KEYCHAIN=$(usex keyring)
+               -DCHAT_TYPE=$chattype
+               -DUSE_XSS=$(usex xscreensaver)
+               -DPSI_PLUS=$(usex extras)
        )
-
-       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
-       # future qconf versions.
-       ./configure "${CONF[@]}" || die "configure failed"
-
-       eqmake5 psi.pro
+       cmake_src_configure
 }
 
 src_compile() {
-       emake
+       cmake_src_compile
        use doc && emake -C doc api_public
 }
 
 src_install() {
-       emake INSTALL_ROOT="${D}" install
+       cmake_src_install
 
        # this way the docs will be installed in the standard gentoo dir
        rm "${ED}"/usr/share/${MY_PN}/{COPYING,README.html} || die "doc files set seems to have changed"