diff --git a/dev-libs/libquotient/Manifest b/dev-libs/libquotient/Manifest
deleted file mode 100644
index e4648b6..0000000
--- a/dev-libs/libquotient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST libquotient-0.5.3.2.tar.gz 528240 BLAKE2B a32ebf9c55840ab609225824ea96707692996623247769d5de5d587720381b0e98a89903626eab16fff97bf446279abe9ceb88fc04b8afba28438b0988774a2c SHA512 b887432ba7fb2b89c72ae5342fbd11b0066770851e8d0ea85ae4d6375bca726a5ee601c4f3d35a11fa1f2ef679ad5436917c08139e114f91516ccb370321e428
diff --git a/dev-libs/libquotient/files/quotient-fix-pc-include-path.patch b/dev-libs/libquotient/files/quotient-fix-pc-include-path.patch
deleted file mode 100644
index ae35223..0000000
--- a/dev-libs/libquotient/files/quotient-fix-pc-include-path.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur a/QMatrixClient.pc.in b/QMatrixClient.pc.in
---- a/QMatrixClient.pc.in 2020-04-01 09:49:48.000000000 -0700
-+++ b/QMatrixClient.pc.in 2020-04-02 16:02:58.198052020 -0700
-@@ -1,6 +1,6 @@
- prefix=@CMAKE_INSTALL_PREFIX@
- exec_prefix=${prefix}
--includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
-+includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/quotient
- libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
-
- Name: QMatrixClient
diff --git a/dev-libs/libquotient/libquotient-0.5.3.2.ebuild b/dev-libs/libquotient/libquotient-0.5.3.2.ebuild
deleted file mode 100644
index 1b4db07..0000000
--- a/dev-libs/libquotient/libquotient-0.5.3.2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2020 rexy712
-# Distributed under the terms of the GNU General Public License v3
-
-EAPI=7
-
-inherit cmake-utils
-
-S="${WORKDIR}/libQuotient-${PV}"
-
-DESCRIPTION="A Qt5 library to write cross-platform clients for Matrix"
-HOMEPAGE="https://github.com/quotient-im/libQuotient"
-SRC_URI="https://github.com/quotient-im/libQuotient/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0/5"
-KEYWORDS="~amd64 ~x86"
-IUSE="static-libs"
-
-RDEPEND="
- >=dev-qt/qtcore-5.12:=
- >=dev-qt/qtgui-5.12:=
- >=dev-qt/qtmultimedia-5.12:=
- >=dev-qt/qtnetwork-5.12:=
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/cmake
- dev-util/ninja
- >=sys-devel/gcc-7
-"
-PATCHES=("${FILESDIR}/quotient-fix-pc-include-path.patch")
-
-src_prepare(){
- cmake-utils_src_prepare
-}
-src_configure(){
- local mycmakeargs=(
- -DQMATRIXCLIENT_INSTALL_EXAMPLE=OFF
- -DBUILD_SHARED_LIBS=$(usex static-libs OFF ON)
- )
- cmake-utils_src_configure
-}
-src_install(){
- cmake-utils_src_install
- mkdir "${T}/quotient" || die
- mv "${D}"/usr/include/* "${T}/quotient" || die
- mv "${T}/quotient" "${D}/usr/include/" || die
-}
diff --git a/dev-libs/libquotient/metadata.xml b/dev-libs/libquotient/metadata.xml
deleted file mode 100644
index 53174d1..0000000
--- a/dev-libs/libquotient/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
- rexerton.rexy@tutamail.com
- rexy712
-
-
- The Quotient project aims to produce a Qt5-based SDK to develop applications for Matrix. libQuotient is a library that enables client applications. It is the backbone of Quaternion, Spectral and other projects. Versions 0.5.x and older use the previous name - libQMatrixClient.
-
-
-
-
-
-
-
diff --git a/net-im/element-desktop/Manifest b/net-im/element-desktop/Manifest
index a442456..96c90fc 100644
--- a/net-im/element-desktop/Manifest
+++ b/net-im/element-desktop/Manifest
@@ -1,4 +1,4 @@
-DIST element-desktop-1.7.1.tar.gz 1868515 BLAKE2B 8d989d69c6841f899229f0c02f39aa9f0c88aaf10d985f7457270c391467d054e34b1a1c2fd9464cf0f481cc4dc7cb90c1e230e969e900fee7e8ce79d2de4afc SHA512 af29cd9d659310f0c7dd9e60a5604a388cb85a554c22bca3e6a5f5414365318728987ec3966deb64836ad69ee97e2ce60acbf114b094aecd02b7f06c429e1c2b
DIST element-desktop-1.7.15.tar.gz 1885994 BLAKE2B 4a8b25757cd7401a620e57d217ab37e463099a2173ded9578ce4c3158fe073bd9ee4b3c783ded132e48decf0193c65d6003d02baba49b8db35f2385066982f5a SHA512 ae9eed020dc653b8e2fd21732da9989dd10f694b710e9581c23bacfa3d31a036367cb3bb0795d765add9f731fd66adbbd7e788b3fb2621574a405347bd137307
-DIST element-web-1.7.1.tar.gz 1162788 BLAKE2B 9b59416c015572ec8e628351b3d144e1057ceab6e43c94d0188fa79993054b8237c06da276aa49433f29e9c1ce670f2e28c7ae7dba2204f06c67307824e797ab SHA512 96a9a982acc51d798b4afa01600157a72babd041f06f1bbb49943947bbff8fbca02b3956556b1cda35f7b47689487b265f42ddb70cf5db8403d9cabd0c9ca78a
+DIST element-desktop-1.7.25.tar.gz 1895435 BLAKE2B 3f31b18c99dd0eacd5edf9b7dc59a4c11418e4551b355ac8a4db97d48229c7975581bf513f114fd0c24427620f112f2211a72c59c078053d3d8af07702c9e0f8 SHA512 230fdeaa7aff368846fafd50644518c329e7681d281a4f0ac26b6e418fcf16217be09dc6e9f65c6ac95a904059478f9eb38c98493d507e81035f7ebca51d6e81
DIST element-web-1.7.15.tar.gz 1201582 BLAKE2B 0b1a150c8874e0d27851b0b663ff84e943db4ef91904132b58a11da69094054d899b6ce663b25e43538abd4ce6b9eeefb7294f9e409bcab6db49192564f2b59e SHA512 d0f98883fdb0563e98b3bd7e41ba15c6144e87452c537845fc9d6bd2ba6eb9a4bbd73587abe08653abd6e3b3c131981b144bad567b41b5f46d973c55a2935fc4
+DIST element-web-1.7.25.tar.gz 1346582 BLAKE2B e19403fa6f950bc53a08f880c1e8f67d52a3191bedaa3feb605d296bf05044fcd6eed4e578516d4c92d741d940de9c2856a4910d77f610febdace33049f8deaa SHA512 b459d6f8bca73d749f677475ceff86702d2f7d270699b1ef4744c423832f4500436d9ae016f714a44789a7439454f6ebd78ac8e70dd6602067e6afbc844e979c
diff --git a/net-im/element-desktop/element-desktop-1.7.25.ebuild b/net-im/element-desktop/element-desktop-1.7.25.ebuild
new file mode 100644
index 0000000..97d6272
--- /dev/null
+++ b/net-im/element-desktop/element-desktop-1.7.25.ebuild
@@ -0,0 +1,134 @@
+# Copyright 2020 rexy712
+# Distributed under the terms of the GNU General Public License v3
+
+EAPI=7
+
+DESCRIPTION="A glossy Matrix collaboration client for desktop"
+HOMEPAGE="https://element.io"
+
+inherit eutils desktop
+
+if [ "${PR}" != "r0" ];then
+ rc_num="${PR:1}"
+ MY_PV="${PV}-rc.${rc_num}"
+else
+ MY_PV="${PV}"
+fi
+MY_PF="${PN}-${MY_PV}"
+
+S="${WORKDIR}"
+ELEMENT_WEB_V="element-web-${MY_PV}"
+ELEMENT_DESKTOP_V="element-desktop-${MY_PV}"
+ELEMENT_WEB="element-web"
+ELEMENT_DESKTOP="element-desktop"
+WEB_S="${S}/${ELEMENT_WEB}"
+DESKTOP_S="${S}/${ELEMENT_DESKTOP}"
+
+SRC_URI="
+ https://github.com/vector-im/element-web/archive/v${MY_PV}.tar.gz -> ${ELEMENT_WEB_V}.tar.gz
+ https://github.com/vector-im/element-desktop/archive/v${MY_PV}.tar.gz -> ${ELEMENT_DESKTOP_V}.tar.gz
+"
+KEYWORDS="~amd64"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="+emoji proxy native-modules"
+REQUIRED_USE=""
+RESTRICT="network-sandbox" #need network sandbox disabled for `yarn install` to work
+
+COMMON_DEPEND="
+ !net-im/element-desktop-bin
+ >=net-libs/nodejs-13.0
+ >=sys-apps/yarn-1.22
+ x11-libs/libXScrnSaver
+ net-print/cups
+ dev-libs/nss
+ gnome-base/gconf
+ >=media-video/ffmpeg-4.0
+ native-modules? (
+ dev-lang/tcl:=
+ dev-db/sqlcipher:=
+ )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ native-modules? (
+ || ( dev-lang/rust-bin dev-lang/rust )
+ sys-devel/make
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ emoji? ( >=media-fonts/noto-emoji-20180823 )
+"
+
+PATCHES=()
+
+DESTINATION="/opt/Element"
+
+get_proxy() {
+ if ! use "proxy";then
+ echo ""
+ else
+ echo "$http_proxy"
+ fi
+}
+
+src_unpack() {
+ unpack "${ELEMENT_WEB_V}.tar.gz" || die
+ unpack "${ELEMENT_DESKTOP_V}.tar.gz" || die
+ mv "${S}/${ELEMENT_WEB_V}" "${S}/${ELEMENT_WEB}" || die
+ mv "${S}/${ELEMENT_DESKTOP_V}" "${S}/${ELEMENT_DESKTOP}" || die
+}
+
+src_prepare() {
+ my_proxy="$(get_proxy)"
+
+ cd "${WEB_S}" || die
+
+ #workaround for canvas-prebuilt not existing for node 15
+ http_proxy="$my_proxy" yarn add node-gyp || die "Yarn module installation failed"
+
+ http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
+
+ cd "${DESKTOP_S}" || die
+ http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
+ ln -s "${WEB_S}/webapp" "${DESKTOP_S}/" || die
+
+ cd "${S}" || die
+ default
+}
+
+src_compile() {
+ my_proxy="$(get_proxy)"
+
+ einfo "Building element-web..."
+ cd "${WEB_S}" || die
+ yarn build || die "Element web build failed"
+
+ einfo "Building element-desktop..."
+ cd "${DESKTOP_S}" || die
+ http_proxy="$my_proxy" yarn build || die "Element desktop build failed"
+
+ if use native-modules;then
+ einfo "Building native modules..."
+ http_proxy="$my_proxy" yarn run build:native || die
+ fi
+}
+
+src_install() {
+ insinto "${DESTINATION}"
+ cp "${FILESDIR}/${PN}.desktop" "${T}"
+ sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${T}/${PN}.desktop" -i
+ domenu "${T}/${PN}.desktop"
+ cp -r "${DESKTOP_S}/dist/linux-unpacked/"* "${D}/${DESTINATION}/"
+
+ insinto "${DESTINATION}/resources/"
+ doins -r "${WEB_S}/webapp/"
+
+ insinto "${DESTINATION}/resources/webapp/"
+ doins "${DESKTOP_S}/element.io/release/config.json"
+
+ dosym "${DESTINATION}/${PN}" "/usr/bin/${PN}"
+}
+
diff --git a/net-im/quaternion/Manifest b/net-im/quaternion/Manifest
deleted file mode 100644
index 02f6ad9..0000000
--- a/net-im/quaternion/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST quaternion-0.0.9.4.tar.gz 999309 BLAKE2B 7f1763fa5340f11f7ed5aee0fa7e3f91764cad7f248ba1be26472866d7cf2b78e2144d0719a89a9b78503f744ca424c1eb2d3dd91f4c6677ea23255166466be8 SHA512 5478892b7dce96a60f1429ee6dff9dd0b4fbb89bf45ecc2e499ee90f615af4de12d1de0002804420a85a21a6ba533e4799c94d2411067cb7d7aacca183d9d981
diff --git a/net-im/quaternion/metadata.xml b/net-im/quaternion/metadata.xml
deleted file mode 100644
index 89bb40d..0000000
--- a/net-im/quaternion/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
- rexerton.rexy@tutamail.com
- rexy712
-
-
- Quaternion is a cross-platform desktop IM client for the Matrix protocol. This file contains general information about application usage and settings. See BUILDING.md for building instructions.
-
-
-
-
-
-
diff --git a/net-im/quaternion/quaternion-0.0.9.4.ebuild b/net-im/quaternion/quaternion-0.0.9.4.ebuild
deleted file mode 100644
index bdc32ea..0000000
--- a/net-im/quaternion/quaternion-0.0.9.4.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2020 rexy712
-# Distributed under the terms of the GNU General Public License v3
-
-EAPI=7
-
-inherit cmake-utils
-
-MY_PV="${PV}e"
-
-S="${WORKDIR}/Quaternion-${MY_PV}"
-
-DESCRIPTION="A Qt5-based IM client for Matrix"
-HOMEPAGE="https://github.com/quotient-im/Quaternion"
-SRC_URI="https://github.com/quotient-im/Quaternion/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="
- >=dev-qt/qtcore-5.12:=
- >=dev-qt/qtgui-5.12:=
- >=dev-qt/qtmultimedia-5.12:=
- >=dev-qt/qtnetwork-5.12:=
- >=dev-libs/libquotient-0.5.3.2:=
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
-BDEPEND="
- dev-util/cmake
- dev-util/ninja
- >=sys-devel/gcc-7
-"
-
-src_prepare(){
- cmake-utils_src_prepare
-}
-src_configure(){
- local quotientflags="$(pkg-config QMatrixClient --cflags)"
- local mycmakeargs=(
- -DCMAKE_CXX_FLAGS="${quotientflags}"
- )
- cmake-utils_src_configure
-}