From e69f8910a7c14490d923563370906e9031e96d5d Mon Sep 17 00:00:00 2001 From: Botspot Date: Tue, 6 Oct 2020 12:37:21 -0500 Subject: [PATCH] add zoom app --- apps/Zoom/description | 4 ++ apps/Zoom/icon-24.png | Bin 0 -> 1482 bytes apps/Zoom/icon-64.png | Bin 0 -> 4602 bytes apps/Zoom/install | 91 ++++++++++++++++++++++++++++++++++++++++++ apps/Zoom/uninstall | 12 ++++++ apps/Zoom/website | 1 + 6 files changed, 108 insertions(+) create mode 100644 apps/Zoom/description create mode 100644 apps/Zoom/icon-24.png create mode 100644 apps/Zoom/icon-64.png create mode 100755 apps/Zoom/install create mode 100755 apps/Zoom/uninstall create mode 100644 apps/Zoom/website diff --git a/apps/Zoom/description b/apps/Zoom/description new file mode 100644 index 0000000..a6871c6 --- /dev/null +++ b/apps/Zoom/description @@ -0,0 +1,4 @@ +Zoom video calls on the Raspberry Pi. +This is the full desktop app, so you can do virtual backgrounds and Gallery View! +This works by running the 32-bit x86 Zoom Linux app inside the box86 emulator. +Performance is good enough on the Pi4. Turning off HD video in Zoom's settings is recommended. diff --git a/apps/Zoom/icon-24.png b/apps/Zoom/icon-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5a13f63ef90249aea1ccff728c1f8b82e3bcc6e8 GIT binary patch literal 1482 zcmZ8fdo+}39R6~dbkohL*-96OE;I9)&rG?stHdNpMN(EeCKW1Cq-HG1DAj2dO;l9U z#&&TjHbP;MYssY>kz%n_Qj8gMdG_1WU%Ssa@B93o_xC=}AMfuywQ;?}r17)H69h5I zagDtz&CGw7o;JO|y7jb%CLLc}XIp}}cXonGs7velK5JZ^2|~P(AR?m)Vw66L>?Mdp z6hZWP6NL3ef|wbUT;TE}L1;-gu5%O67XT%o&?x0{*-%?s8-Ui<*5TnHH8A*PASfs( zFfj0Wecib6|6;D8A;~fZQqZ(kCmi=-~ai1psEgc}E1BaFB{B8}@vObyW z>`M(s2S3S_(a$vsg(B&tdQ_o+@>@-h3d*m;GTHHJwM-^Mcf*@LxoV)ZpmkI}(DPfp z^4q8G%hk$(-j0;&(XQ6|d(TJ8^3rQs2g~!*+un6H)RpJf4cS<*U$wMn+`3-(vNta` zv$FB;jN3Qr8av{$<tIROIpE~NG#i{OklCOzz_|nRF6{4toeowS z$aHY%A{FEf*kxc-E(Dq2+<@ip*pR7VT?ID<87=s#zTXM1yvuw zi39m7sIw?+K}83sSn$q(a}uVfkkgD012~d{#=lVb2HewFeO|+k21|mVJNPsNdW7#k z!}c8P;&A6F?lpjW0&EFFZmU=kAS1y&29L`SWkQ?@Xa?t7L_Oa~QiWs#yoX2?iOAy_ZyEAlUoi5U%0u0m~0;fB40z zoFg=LhjF2H(LDNJdW5*H-$e8Opkv~3JV|Tmh1L-*eNp%HWaT)i+GoVau+h+8?LY3m z@mrhEYrhG;aJ#0LPmi(e)jelaZuQ)}Ksj6dV)TW!@s6ZNb&TnTjF_7)F?8~n9ZnAR z4B_tla9WHFadZ}p?HXsO&os)3>C2|u&m8S--4@sTcoW*I7YL`in3=gu6)srK(D9y@ zcupE0d*<|MX+pg8oG|JXzow?zp|bo*MP+5h6XUAd>Q&3k*o#>v3r*~7T~p&zwfJk2 z1s;NBCd(%2yKZvZEcIYAx4vm^ZsPOeR<156V9Z{w9h2tn9vZ5zv$IFbc6(?-g85kO z^w|9ow!*181~a8JW_0!U9pLrOmR{K6=Du07(mB9O6mI9UNp$I$jpVvZu+v`89{Vrx!vY^aaMi##nR?|U!}L2yr(t!=H_ikvJSp~X^G@v z#a)k_o)VMp2YL0EEcPZGx02j^q0*f&v($J7*Q4d}K1GzmJz?TYbGCct&yUi=Nxj@G z&thR`+EY*W*ROfh>wvZg;g!$43P*_2_HgCok1LM&wYo27FigW@${b?nF4rHkX#L!u zM157lv0;;Tk@O|v$max zVkdGRKD<9DF|v;=Z7ciM_eZ})rdQzsb<5@rlMkm%(a9Exl=AkXLrPgj(&LEs?fXtP z&+nZ#g=sKn+O#mZ4!Fv15Ro+qm03kyYC;$Ke literal 0 HcmV?d00001 diff --git a/apps/Zoom/icon-64.png b/apps/Zoom/icon-64.png new file mode 100644 index 0000000000000000000000000000000000000000..adc21e8d3cd4e8b615e86f737453d7a15a96aa4b GIT binary patch literal 4602 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 literal 0 HcmV?d00001 diff --git a/apps/Zoom/install b/apps/Zoom/install new file mode 100755 index 0000000..217d687 --- /dev/null +++ b/apps/Zoom/install @@ -0,0 +1,91 @@ +#!/bin/bash + +DIRECTORY="$(dirname "$(dirname "$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )")")" + +function error { + echo -e "\\e[91m$1\\e[39m" + exit 1 +} + +cd $HOME +if [ -d box86 ];then + echo -n "Box86 already exists on your system. Do you want it overwritten with the latest version? [Y/n] " + read answer + if [ ! -z "$answer" ] && [ "$answer" == 'n' ];then + echo "OK, using your pre-existing version of box86. Be warned though: It may be out of date and may not run Zoom successfully!" + #don't do anything, don't download & compile box86 + compile=0 + else + #user confirmed removal + compile=1 + fi +else + compile=1 + #box86 does not exist beforehand, so compile +fi + +if [ $compile == 1 ];then + rm -rf box86 + git clone https://github.com/ptitSeb/box86 || error 'Failed to clone repository!' + cd box86 || error 'Failed to enter repository!' + mkdir build || error 'Failed to make build directory!' + cd build || error 'Failed to enter build directory!' + cmake .. -DRPI4=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo || error 'Failed to run cmake!' + echo "Compiling box86..." + make -j24 || error 'Failed to compile!' +fi + +cd $HOME + +if [ -d "${HOME}/zoom" ];then + echo -n "${HOME}/zoom already exists on your system. Do you want it overwritten with the latest version? [Y/n] " + read answer + if [ ! -z "$answer" ] && [ "$answer" == 'n' ];then + dlzoom=0 + else + dlzoom=1 + fi +else + dlzoom=1 +fi +if [ $dlzoom == 1 ];then + echo "Downloading Zoom..." + rm -rf "${HOME}/zoom" ~/zoom_i686.tar.xz + wget 'https://zoom.us/client/latest/zoom_i686.tar.xz' || error 'Failed to download Zoom i686!' + tar -xf ~/zoom_i686.tar.xz || error 'Failed to extract Zoom i686!' + rm -f ~/zoom_i686.tar.xz #who cares if this fails +fi + +cd box86/build +echo "Installing box86 on your system..." +sudo make install || error 'Failed to run sudo make install!' + + + +echo "Restarting systemd-binfmt service..." +sudo systemctl restart systemd-binfmt #if this fails, no big deal. + +if [ ! -f /usr/local/bin/box86 ];then + error "Box86 should be installed by now, but /usr/local/bin/box86 does not exist!" +fi + +# Get dependencies +cd $HOME +"${DIRECTORY}/pkg-install" "libxcb-xtest0 libxcb-xfixes0 cmake" "$(dirname "$0")" || exit 1 + +echo "Creating Application Menu button..." +#create menu button +echo "[Desktop Entry] +Name=Zoom +Exec=lxterminal --title 'Close this window to exit Zoom' -e 'box86 zoom;read enter' +Icon=${DIRECTORY}/apps/Zoom/icon-64.png +Path=${HOME}/zoom/ +Type=Application +Comment=i386 version of software platform used for teleconferencing using Box86 +Categories=Network;" > ~/.local/share/applications/zoom.desktop + +echo "Installation complete!" + + + + diff --git a/apps/Zoom/uninstall b/apps/Zoom/uninstall new file mode 100755 index 0000000..535603b --- /dev/null +++ b/apps/Zoom/uninstall @@ -0,0 +1,12 @@ +#!/bin/bash + +DIRECTORY="$(dirname "$(dirname "$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )")")" + +function error { + echo -e "\\e[91m$1\\e[39m" + exit 1 +} +gio trash "${HOME}/.zoom" +gio trash "${HOME}/zoom" +#if your app installs any packages, keep this command here so those packages will be removed. +"${DIRECTORY}/purge-installed" "$(dirname "$0")" || exit 1 diff --git a/apps/Zoom/website b/apps/Zoom/website new file mode 100644 index 0000000..fb7df7e --- /dev/null +++ b/apps/Zoom/website @@ -0,0 +1 @@ +https://www.youtube.com/watch?v=9yx3XzYnHV4