Update element-desktop to 1.7.15

This commit is contained in:
rexy712 2020-12-12 16:52:54 -08:00
parent b1780e78b8
commit 375642fa2c
16 changed files with 39 additions and 583 deletions

View File

@ -1,2 +1,4 @@
DIST element-desktop-1.7.1.tar.gz 1868544 BLAKE2B b91966b601351a34e0e343297a28d2efad58571e90c5d06bc2809abcdb96cd0d6a01dae6807ec31d128b0db2063b8ee30eb5fc9d507961f198bc5c4ebad8f3d3 SHA512 4122456e361c3d043659e3c00f2035ed544b8b4fde95726482399f65420113e2bd19329ea8477b90468dad9ae5e749855004a76d059cdac2caba8c7106e75d5c
DIST element-web-1.7.1.tar.gz 1162742 BLAKE2B 3d235b1c0700d725a36ee16d5815de895817e693973fc378438c7070395c168da9c7f52f4238941f888ced34333804525be3057dd25b61e70b3b4a343fc5c75b SHA512 1444fbf7872019e25e230317aff600beb44b0c7cb1497d34f8e78fb7298413a565bf705750fde8158bf1ffcd16bc5af5321678c09abd4ccb5d7e076902f196c9
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-web-1.7.15.tar.gz 1201582 BLAKE2B 0b1a150c8874e0d27851b0b663ff84e943db4ef91904132b58a11da69094054d899b6ce663b25e43538abd4ce6b9eeefb7294f9e409bcab6db49192564f2b59e SHA512 d0f98883fdb0563e98b3bd7e41ba15c6144e87452c537845fc9d6bd2ba6eb9a4bbd73587abe08653abd6e3b3c131981b144bad567b41b5f46d973c55a2935fc4

View File

@ -17,16 +17,16 @@ fi
MY_PF="${PN}-${MY_PV}"
S="${WORKDIR}"
ELEMENT_WEB="element-web-${MY_PV}"
ELEMENT_DESKTOP="element-desktop-${MY_PV}"
RIOT_WEB="riot-web-${MY_PV}"
RIOT_DESKTOP="riot-desktop-${MY_PV}"
WEB_S="${S}/${RIOT_WEB}"
DESKTOP_S="${S}/${RIOT_DESKTOP}"
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/riot-web/archive/v${MY_PV}.tar.gz -> ${ELEMENT_WEB}.tar.gz
https://github.com/vector-im/riot-desktop/archive/v${MY_PV}.tar.gz -> ${ELEMENT_DESKTOP}.tar.gz
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"
@ -37,10 +37,9 @@ REQUIRED_USE=""
RESTRICT="network-sandbox" #need network sandbox disabled for `yarn install` to work
COMMON_DEPEND="
!net-im/riot-web
!net-im/riot-desktop
!net-im/element-desktop-bin
>=net-libs/nodejs-13.0
>=sys-apps/yarn-1.20
>=sys-apps/yarn-1.22
x11-libs/libXScrnSaver
net-print/cups
dev-libs/nss
@ -63,7 +62,7 @@ RDEPEND="
emoji? ( >=media-fonts/noto-emoji-20180823 )
"
PATCHES=()
PATCHES=("${FILESDIR}/element-desktop-fix-yarn-build-1.7.15.patch")
DESTINATION="/opt/Element"
@ -75,16 +74,28 @@ get_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
}

View File

@ -0,0 +1,12 @@
diff -Naur a/package.json b/package.json
--- a/element-web/package.json 2020-12-12 16:33:27.291988530 -0800
+++ b/element-web/package.json 2020-12-12 16:35:16.045988432 -0800
@@ -30,7 +30,7 @@
"i18n": "matrix-gen-i18n",
"prunei18n": "matrix-prune-i18n",
"diff-i18n": "cp src/i18n/strings/en_EN.json src/i18n/strings/en_EN_orig.json && yarn i18n && node scripts/compare-file.js src/i18n/strings/en_EN_orig.json src/i18n/strings/en_EN.json",
- "reskindex": "reskindex -h src/header",
+ "reskindex": "reskindex -h src/header; reskindex -h src/header",
"reskindex:watch": "reskindex -h src/header -w",
"reskindex:watch-react": "node scripts/yarn-sub.js matrix-react-sdk reskindex:watch",
"clean": "rimraf lib webapp",

View File

@ -1,2 +0,0 @@
DIST riot-desktop-1.6.0.tar.gz 399201 BLAKE2B 3bfc1137a74f0e8fb6f6bda6d2c10147c5297fe9cce4fc799f1de72f5df770134fd8f90b2e79c0431682e6a15237f9d496608848833bb8efb4894503e33c539b SHA512 b18ebc52f4e16d379138c7cb5584b2d342ecf266b0e63be842fd7f05f6d3bbccd1f48ef52c028cf0594fb612db8cf496d91be74c8f7e2e19a973c5310fe112b9
DIST riot-web-1.6.0.tar.gz 1419370 BLAKE2B eed6daad0a95cbdf4e7cd442edbf65e652653242095307bf64405aacd2c777263bb25cb9e28bd67e26093a48ac9cf4737346cc0dec5f37acc237d2c93dd4741d SHA512 f51096dcad4567b9e0f0456f01c76f5b7b7bf2c1ad15ae3e5ab1c8f9e856f452bfb6190d521e5afcef32c5dbc1b358ce6020cd613ab42e820f903cd725bf40f7

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Name=Riot Web
Comment=A glossy Matrix collaboration client for the web.
Exec=/usr/bin/riot-web
Icon={::install_location::}/electron_app/img/riot.png
Terminal=false
Type=Application
Categories=Network;Chat;Telephony;VideoConference;
StartupNotify=true

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>rexerton.rexy@tutamail.com</email>
<name>rexy712</name>
</maintainer>
<longdescription>
Riot is a glossy Matrix client built on top of matrix-react-sdk with an emphasis on performance and usability.
</longdescription>
<use>
<flag name="emoji">Include support for rendering emoji</flag>
<flag name="proxy">Use http_proxy environment variable with `yarn install`</flag>
<flag name="native-modules">Build native rust modules</flag>
</use>
</pkgmetadata>

View File

@ -1,120 +0,0 @@
# 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://riot.im"
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}"
RIOT_WEB="riot-web-${MY_PV}"
RIOT_DESKTOP="riot-desktop-${MY_PV}"
WEB_S="${S}/${RIOT_WEB}"
DESKTOP_S="${S}/${RIOT_DESKTOP}"
SRC_URI="
https://github.com/vector-im/riot-web/archive/v${MY_PV}.tar.gz -> ${RIOT_WEB}.tar.gz
https://github.com/vector-im/riot-desktop/archive/v${MY_PV}.tar.gz -> ${RIOT_DESKTOP}.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/riot-web
>=net-libs/nodejs-13.0
>=sys-apps/yarn-1.20
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/Riot"
get_proxy() {
if ! use "proxy";then
echo ""
else
echo "$http_proxy"
fi
}
src_prepare() {
my_proxy="$(get_proxy)"
cd "${WEB_S}" || die
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
default
}
src_compile() {
my_proxy="$(get_proxy)"
einfo "Building riot-web..."
cd "${WEB_S}" || die
yarn build || die "Riot web build failed"
einfo "Building riot-desktop..."
cd "${DESKTOP_S}" || die
http_proxy="$my_proxy" yarn build || die "Riot 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}/riot.im/release/config.json"
dosym "${DESTINATION}/${PN}" "/usr/bin/${PN}"
}

View File

@ -1,2 +0,0 @@
DIST riot-web-1.5.10.tar.gz 1401671 BLAKE2B d9c2ba57fe4dc68cbd0b919f5a15a2a5935dd7c171815710c65224c19ac276ab62b19c7e0329489f322072b43aafc6a5f6a2705b4d01513c9486e635561ee95e SHA512 855ec625ae07afb8989b04f7f5a8cca6b1a047810a82a88746d936ea9d84c58d7a3c9374412d6f112356df2cdae13f39dd904403663abcfe19a67332e71c4cbb
DIST riot-web-1.5.15.tar.gz 1407869 BLAKE2B fb19bb606d6ddb56344ea2bc0247e9736e957ce6c97b08fa52753661ac66db7966147bfa5345f4e18b3dca5da2d8fdde6873778c91f90c434b27de741d09118d SHA512 6d02f8304617a286ea3fd74f218242bb859be8e706126550b5c38706cb56d3c45326b2d2700f9532dcb029bede766e48aa5c5a95dea3707e85222dd90bdc148a

View File

@ -1,20 +0,0 @@
diff -Naur a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js
--- a/electron_app/src/electron-main.js 2020-02-21 11:55:35.134680641 -0800
+++ b/electron_app/src/electron-main.js 2020-02-21 11:56:46.457685807 -0800
@@ -44,16 +44,6 @@
let Seshat = null;
-try {
- Seshat = require('matrix-seshat');
-} catch (e) {
- if (e.code === "MODULE_NOT_FOUND") {
- console.log("Seshat isn't installed, event indexing is disabled.");
- } else {
- console.warn("Seshat unexpected error:", e);
- }
-}
-
if (argv["help"]) {
console.log("Options:");
console.log(" --profile-dir {path}: Path to where to store the profile.");

View File

@ -1,12 +0,0 @@
diff -Naur a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js
--- a/electron_app/src/electron-main.js 2019-12-16 11:39:24.964850132 -0800
+++ b/electron_app/src/electron-main.js 2019-12-16 11:39:44.454850859 -0800
@@ -115,7 +115,7 @@
// It's important to call `path.join` so we don't end up with the packaged asar in the final path.
const iconFile = `riot.${process.platform === 'win32' ? 'ico' : 'png'}`;
-const iconPath = path.join(__dirname, "..", "..", "img", iconFile);
+const iconPath = path.join(__dirname, "..", "img", iconFile);
const trayConfig = {
icon_path: iconPath,
brand: vectorConfig.brand || 'Riot',

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Name=Riot Web
Comment=A glossy Matrix collaboration client for the web.
Exec=/usr/bin/riot-web
Icon={::install_location::}/electron_app/img/riot.png
Terminal=false
Type=Application
Categories=Network;Chat;Telephony;VideoConference;
StartupNotify=true

View File

@ -1,34 +0,0 @@
#!/bin/sh
install_location="{::install_location::}"
if [ ! -d "$install_location/electron_app" ];then
echo -n "Could not chdir to install location: " >&2
if [ ! -e "$install_location" ];then
echo "No such file or directory" >&2
else
echo "Not a directory" >&2
fi
exit 1
fi
cd "$install_location/electron_app"
if [ -n "${RIOT_USE_ELECTRON}" ];then
if [ -x "${RIOT_USE_ELECTRON}" ];then
exec "${RIOT_USE_ELECTRON}" .
fi
echo "'${RIOT_USE_ELECTRON}' is not executable!" >&2
exit 2
fi
if [ ! -e "/usr/bin/electron" ];then
echo "No electron symlink found in '/usr/bin'!" >&2
echo "Use 'eselect electron' to set the symlink" >&2
exit 3
fi
if [ ! -x "/usr/bin/electron" ];then
echo "'/usr/bin/electron' is not executable!" >&2
echo "Did you set the symlink correctly?" >&2
echo "Use 'eselect electron' to set the symlink" >&2
exit 4
fi
exec /usr/bin/electron . "$@"

View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>rexerton.rexy@tutamail.com</email>
<name>rexy712</name>
</maintainer>
<longdescription>
Riot is a glossy Matrix client built on top of matrix-react-sdk with an emphasis on performance and usability.
</longdescription>
<use>
<flag name="emoji">Include support for rendering emoji</flag>
<flag name="proxy">Use http_proxy environment variable with `yarn install`</flag>
<flag name="darkmode">Use riot.im's dark mode by default</flag>
<flag name="labs">Enable use of riot.im's labs settings</flag>
<flag name="savedconfig">Copy the config.json file from a previous install instead of the default one</flag>
</use>
</pkgmetadata>

View File

@ -1,109 +0,0 @@
# Copyright 2019 rexy712
# Distributed under the terms of the GNU General Public License v3
EAPI=6
DESCRIPTION="A glossy Matrix collaboration client for the web"
HOMEPAGE="https://riot.im"
inherit eutils
if [ "${PV}" == "9999" ];then
inherit git-r3
SRC_URI=""
KEYWORDS=""
EGIT_REPO_URI="https://github.com/vector-im/riot-web.git"
EGIT_BRANCH="develop"
else
if [ "${PR}" != "r0" ];then
rc_num="${PR:1}"
MY_PV="${PV}-rc.${rc_num}"
else
MY_PV="${PV}"
fi
MY_PF="${PN}-${MY_PV}"
SRC_URI="https://github.com/vector-im/riot-web/archive/v${MY_PV}.tar.gz -> ${MY_PF}.tar.gz" #change source tar file name to include package name
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE="+emoji proxy +darkmode +labs +savedconfig"
REQUIRED_USE=""
RESTRICT="network-sandbox" #need network sandbox disabled for `yarn install` to work
DEPEND="sys-devel/binutils:*
>=net-libs/nodejs-12.0
<net-libs/nodejs-13.9
>=sys-apps/yarn-1.20
x11-libs/libXScrnSaver
net-print/cups
dev-libs/nss
gnome-base/gconf
emoji? ( >=media-fonts/noto-emoji-20180823 )
>=media-video/ffmpeg-4.0
|| ( dev-util/electron-bin-next:7 dev-util/electron-next:7 )"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}/riot-1.5.6-icon-path.patch"
#TODO find a way to rebuild seshat for given electron target
"${FILESDIR}/riot-1.5.10-remove-seshat.patch"
)
DESTINATION="/opt/Riot"
src_prepare() {
if ! use "proxy";then
my_proxy=""
else
my_proxy="$http_proxy"
fi
http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
pushd electron_app >/dev/null 2>&1 || die
http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
popd >/dev/null 2>&1 || die
[ "${PV}" == "9999" ] && "${S}"/scripts/fetch-develop.deps.sh
if [ -e "${DESTINATION}/webapp/config.json" ] && use savedconfig;then
cp "${DESTINATION}/webapp/config.json" "${S}"/config.json
else
cp "${S}"/config.sample.json "${S}"/config.json
use "darkmode" && sed -e 's/^\([[:space:]]*"default_theme":[[:space:]]*\)"light"/\1"dark"/' "${S}"/config.json -i
use "labs" && sed -e 's/^\([[:space:]]*"showLabsSettings":[[:space:]]*\)false/\1true/' "${S}"/config.json -i
fi
if [ "${PV}" == "9999" ];then
#skip built in patches
eapply_user
else
default
fi
}
src_compile() {
yarn build || die "Build failed"
}
src_install() {
insinto "${DESTINATION}"
doins -r "${S}/webapp"
doins -r "${S}/electron_app"
cp "${FILESDIR}"/runscript.sh "${S}/${PN}"
sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${S}/${PN}" -i
insopts "-m755"
doins "${S}/${PN}"
insinto "${DESTINATION}/electron_app"
cp "${FILESDIR}/${PN}.desktop" "${T}"
sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${T}/${PN}.desktop" -i
domenu "${T}/${PN}.desktop"
dosym "${DESTINATION}/${PN}" "/usr/bin/${PN}"
}

View File

@ -1,106 +0,0 @@
# Copyright 2019 rexy712
# Distributed under the terms of the GNU General Public License v3
EAPI=6
DESCRIPTION="A glossy Matrix collaboration client for the web"
HOMEPAGE="https://riot.im"
inherit eutils
if [ "${PV}" == "9999" ];then
inherit git-r3
SRC_URI=""
KEYWORDS=""
EGIT_REPO_URI="https://github.com/vector-im/riot-web.git"
EGIT_BRANCH="develop"
else
if [ "${PR}" != "r0" ];then
rc_num="${PR:1}"
MY_PV="${PV}-rc.${rc_num}"
else
MY_PV="${PV}"
fi
MY_PF="${PN}-${MY_PV}"
SRC_URI="https://github.com/vector-im/riot-web/archive/v${MY_PV}.tar.gz -> ${MY_PF}.tar.gz" #change source tar file name to include package name
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE="+emoji proxy +darkmode +labs +savedconfig"
REQUIRED_USE=""
RESTRICT="network-sandbox" #need network sandbox disabled for `yarn install` to work
DEPEND="sys-devel/binutils:*
>=net-libs/nodejs-13.0
>=sys-apps/yarn-1.20
x11-libs/libXScrnSaver
net-print/cups
dev-libs/nss
gnome-base/gconf
emoji? ( >=media-fonts/noto-emoji-20180823 )
>=media-video/ffmpeg-4.0
|| ( dev-util/electron-bin-next:7 dev-util/electron-next:7 )"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}/riot-1.5.6-icon-path.patch"
)
DESTINATION="/opt/Riot"
src_prepare() {
if ! use "proxy";then
my_proxy=""
else
my_proxy="$http_proxy"
fi
http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
pushd electron_app >/dev/null 2>&1 || die
http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
popd >/dev/null 2>&1 || die
[ "${PV}" == "9999" ] && "${S}"/scripts/fetch-develop.deps.sh
if [ -e "${DESTINATION}/webapp/config.json" ] && use savedconfig;then
cp "${DESTINATION}/webapp/config.json" "${S}"/config.json
else
cp "${S}"/config.sample.json "${S}"/config.json
use "darkmode" && sed -e 's/^\([[:space:]]*"default_theme":[[:space:]]*\)"light"/\1"dark"/' "${S}"/config.json -i
use "labs" && sed -e 's/^\([[:space:]]*"showLabsSettings":[[:space:]]*\)false/\1true/' "${S}"/config.json -i
fi
if [ "${PV}" == "9999" ];then
#skip built in patches
eapply_user
else
default
fi
}
src_compile() {
yarn build || die "Build failed"
}
src_install() {
insinto "${DESTINATION}"
doins -r "${S}/webapp"
doins -r "${S}/electron_app"
cp "${FILESDIR}"/runscript.sh "${S}/${PN}"
sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${S}/${PN}" -i
insopts "-m755"
doins "${S}/${PN}"
insinto "${DESTINATION}/electron_app"
cp "${FILESDIR}/${PN}.desktop" "${T}"
sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${T}/${PN}.desktop" -i
domenu "${T}/${PN}.desktop"
dosym "${DESTINATION}/${PN}" "/usr/bin/${PN}"
}

View File

@ -1,104 +0,0 @@
# Copyright 2019 rexy712
# Distributed under the terms of the GNU General Public License v3
EAPI=6
DESCRIPTION="A glossy Matrix collaboration client for the web"
HOMEPAGE="https://riot.im"
inherit eutils
if [ "${PV}" == "9999" ];then
inherit git-r3
SRC_URI=""
KEYWORDS=""
EGIT_REPO_URI="https://github.com/vector-im/riot-web.git"
EGIT_BRANCH="develop"
else
if [ "${PR}" != "r0" ];then
rc_num="${PR:1}"
MY_PV="${PV}-rc.${rc_num}"
else
MY_PV="${PV}"
fi
MY_PF="${PN}-${MY_PV}"
SRC_URI="https://github.com/vector-im/riot-web/archive/v${MY_PV}.tar.gz -> ${MY_PF}.tar.gz" #change source tar file name to include package name
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE="+emoji proxy +darkmode +labs +savedconfig"
REQUIRED_USE=""
RESTRICT="network-sandbox" #need network sandbox disabled for `yarn install` to work
DEPEND="sys-devel/binutils:*
>=net-libs/nodejs-13.0
>=sys-apps/yarn-1.20
x11-libs/libXScrnSaver
net-print/cups
dev-libs/nss
gnome-base/gconf
emoji? ( >=media-fonts/noto-emoji-20180823 )
>=media-video/ffmpeg-4.0
|| ( dev-util/electron-bin-next:7 dev-util/electron:7 )"
RDEPEND="${DEPEND}"
PATCHES=()
DESTINATION="/opt/Riot"
src_prepare() {
if ! use "proxy";then
my_proxy=""
else
my_proxy="$http_proxy"
fi
http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
pushd electron_app >/dev/null 2>&1 || die
http_proxy="$my_proxy" yarn install || die "Yarn module installation failed"
popd >/dev/null 2>&1 || die
[ "${PV}" == "9999" ] && "${S}"/scripts/fetch-develop.deps.sh
if [ -e "${DESTINATION}/webapp/config.json" ] && use savedconfig;then
cp "${DESTINATION}/webapp/config.json" "${S}"/config.json
else
cp "${S}"/config.sample.json "${S}"/config.json
use "darkmode" && sed -e 's/^\([[:space:]]*"default_theme":[[:space:]]*\)"light"/\1"dark"/' "${S}"/config.json -i
use "labs" && sed -e 's/^\([[:space:]]*"showLabsSettings":[[:space:]]*\)false/\1true/' "${S}"/config.json -i
fi
if [ "${PV}" == "9999" ];then
#skip built in patches
eapply_user
else
default
fi
}
src_compile() {
yarn build || die "Build failed"
}
src_install() {
insinto "${DESTINATION}"
doins -r "${S}/webapp"
doins -r "${S}/electron_app"
cp "${FILESDIR}"/runscript.sh "${S}/${PN}"
sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${S}/${PN}" -i
insopts "-m755"
doins "${S}/${PN}"
insinto "${DESTINATION}/electron_app"
cp "${FILESDIR}/${PN}.desktop" "${T}"
sed -e 's@{::install_location::}@'"${DESTINATION}"'@g' "${T}/${PN}.desktop" -i
domenu "${T}/${PN}.desktop"
dosym "${DESTINATION}/${PN}" "/usr/bin/${PN}"
}