summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorTab Fitts2022-02-09 20:51:31 -0700
committerTab Fitts2022-02-09 20:54:56 -0700
commitc0e5902533d8d0e54082a52c3f3b3b3ac3e6ff5e (patch)
treed40c481aecb40184a1ef04d78ec5f12f7556c057
parentf3d0902a9a667f4f290ab9198136b69f7f37d6ec (diff)
downloadaur-c0e5902533d8d0e54082a52c3f3b3b3ac3e6ff5e.tar.gz
Updates for new release. Taking over repo.
-rw-r--r--.SRCINFO57
-rw-r--r--.gitignore3
-rw-r--r--PKGBUILD45
-rwxr-xr-xsplashtop-streamer3
-rw-r--r--splashtop-streamer.install148
-rwxr-xr-xupgrade-cleanup.sh32
6 files changed, 176 insertions, 112 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 2461e6c497fa..8d37bf91c3e0 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,34 +1,45 @@
pkgbase = splashtop-streamer
pkgdesc = Splashtop Remote Streamer. Remotely access your desktop from any device from anywhere!
- pkgver = 2.6.2.0
+ pkgver = 3.0.4.0
pkgrel = 1
- url = http://www.splashtop.com/streamer/linux
+ url = https://www.splashtop.com
install = splashtop-streamer.install
arch = x86_64
- license = custom
- makedepends = curl
- makedepends = p7zip
- depends = apr>=1.5.2
- depends = apr-util>=1.5.4
- depends = bash-completion>=2.7.3
+ groups =
+ license = Proprietary
+ depends = bash-completion
+ depends = cairo>=1.2.4
depends = curl>=7.47.0
- depends = dbus>=1.9.14
- depends = dbus-glib>=0.78
- depends = glib2>=2.12.0
- depends = libcurl-gnutls>=7.16.2
+ depends = dbus
+ depends = dbus-glib
+ depends = desktop-file-utils
+ depends = gcc>=3.0
+ depends = gdk-pixbuf2
+ depends = glib2>=2.43.2
+ depends = gtk3>=3.5.12
+ depends = hicolor-icon-theme
+ depends = libappindicator-gtk3>=0.2.92
+ depends = libnotify>=0.7.0
+ depends = libproxy>=0.4.11
depends = libpulse>=0.99.1
- depends = libutil-linux>=2.16
- depends = libx11
+ depends = libxcb>=1.3
+ depends = lshw
+ depends = pam>=0.99.7.1
+ depends = systemd-libs>=217
+ depends = uriparser>=0.6.0
+ depends = util-linux-libs>=2.16
+ depends = xcb-util>=0.4.0
+ depends = xcb-util-keysyms>=0.4.0
+ depends = zlib>=1.2.0
+ depends = binutils
+ depends = libxrandr
depends = libxfixes
- depends = libxrandr>=1.2.0
depends = libxtst
- depends = mumble
- depends = networkmanager
- depends = pam>=0.99.7.1
- depends = python>=2.6.1
- depends = python2-libappindicator
- source = https://d17kmd0va0f0mp.cloudfront.net/linux/Splashtop_Streamer_Ubuntu_v2.6.2.0_amd64.tar.gz
- sha256sums = 6d5f6d6613e3fee39af692c35228716002894c9e9f4cc4257c360e9b0e00f68e
+ provides = splashtop-streamer
+ options = !strip
+ options = !emptydirs
+ backup = etc/dbus-1/system.d/com.splashtop.streamer.Daemon.conf
+ source = https://download.splashtop.com/linux/STB_CSRS_Ubuntu_v3.0.4.0_amd64.tar.gz
+ sha512sums = 15cca0bb9d1562d67da4dbd6a8c1a369919d77e4e132beb10f7af32e33e3b794c2fc11d664562a6872d8af8a6908a0814656baae68bcc0ca2d60383d499b9527
pkgname = splashtop-streamer
-
diff --git a/.gitignore b/.gitignore
index e1952d649d01..418dd91983a8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,6 @@
Splashtop*
+STB*.tar.gz
+*.sig
+*.zst
src/
pkg/
diff --git a/PKGBUILD b/PKGBUILD
index 29581dddec42..6c459c90abf4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,26 +1,39 @@
-# Maintainer: Sibren Vasse <arch at sibrenvasse dot nl>
+# Maintainer: Tab Fitts <tfitts [at] spryservers [dot] net>
# Contributor: oguzkagan <me at oguzkaganeren dot com dot tr>
+# Contributor: Sibren Vasse <arch at sibrenvasse dot nl>
#
pkgname=splashtop-streamer
-pkgver=2.6.2.0
+pkgver=3.0.4.0
pkgrel=1
pkgdesc="Splashtop Remote Streamer. Remotely access your desktop from any device from anywhere!"
arch=('x86_64')
-url="http://www.splashtop.com/streamer/linux"
-license=('custom')
-depends=('apr>=1.5.2' 'apr-util>=1.5.4' 'bash-completion>=2.7.3' 'curl>=7.47.0' 'dbus>=1.9.14' 'dbus-glib>=0.78' 'glib2>=2.12.0' 'libcurl-gnutls>=7.16.2' 'libpulse>=0.99.1' 'libutil-linux>=2.16' 'libx11' 'libxfixes' 'libxrandr>=1.2.0' 'libxtst' 'mumble' 'networkmanager' 'pam>=0.99.7.1' 'python>=2.6.1' 'python2-libappindicator')
+url="https://www.splashtop.com"
+license=('Proprietary')
+groups=('')
+depends=('bash-completion' 'cairo>=1.2.4' 'curl>=7.47.0' 'dbus' 'dbus-glib' 'desktop-file-utils' 'gcc>=3.0' 'gdk-pixbuf2' 'glib2>=2.43.2' 'gtk3>=3.5.12' 'hicolor-icon-theme' 'libappindicator-gtk3>=0.2.92' 'libnotify>=0.7.0' 'libproxy>=0.4.11' 'libpulse>=0.99.1' 'libxcb>=1.3' 'lshw' 'pam>=0.99.7.1' 'systemd-libs>=217' 'uriparser>=0.6.0' 'util-linux-libs>=2.16' 'xcb-util>=0.4.0' 'xcb-util-keysyms>=0.4.0' 'zlib>=1.2.0' 'binutils' 'libxrandr' 'libxfixes' 'libxtst')
+provides=('splashtop-streamer')
+backup=('etc/dbus-1/system.d/com.splashtop.streamer.Daemon.conf')
+options=('!strip' '!emptydirs')
install=${pkgname}.install
-makedepends=('curl' 'p7zip')
-source=(https://d17kmd0va0f0mp.cloudfront.net/linux/Splashtop_Streamer_Ubuntu_v${pkgver//_/-}_amd64.tar.gz)
-sha256sums=('6d5f6d6613e3fee39af692c35228716002894c9e9f4cc4257c360e9b0e00f68e')
+source=("https://download.splashtop.com/linux/STB_CSRS_Ubuntu_v${pkgver}_amd64.tar.gz")
+sha512sums=('15cca0bb9d1562d67da4dbd6a8c1a369919d77e4e132beb10f7af32e33e3b794c2fc11d664562a6872d8af8a6908a0814656baae68bcc0ca2d60383d499b9527')
-package ()
-{
- msg "Extracting Splashtop package"
- #cd "$srcdir/$pkgname-$pkgver"
- tar -xf $srcdir/data.tar.xz -C $pkgdir
- sed -i 's/python /python2 /' $pkgdir/opt/splashtop-streamer/script/spt_main
- install -D -m644 "$pkgdir/opt/splashtop-streamer/EULA.htm" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+prepare(){
+ tar xzf STB_CSRS_Ubuntu_v${pkgver}_amd64.tar.gz
+ ar -x Splashtop_Streamer_Ubuntu_amd64.deb
}
-# vim:set ts=2 sw=2 et:
+package(){
+
+ # Extract package data
+ tar xf data.tar.xz -C "${pkgdir}"
+
+ # Fix directory structure differences
+ cd "${pkgdir}"
+
+ install -D -m644 "${pkgdir}/opt/splashtop-streamer/EULA.htm" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ mkdir -p usr/lib 2> /dev/null; mv lib/* usr/lib; rm -rf lib
+
+ cd ..
+
+}
diff --git a/splashtop-streamer b/splashtop-streamer
deleted file mode 100755
index f5cb4d4904c5..000000000000
--- a/splashtop-streamer
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-python2 /opt/splashtop-streamer/SRStreamer.pyc
diff --git a/splashtop-streamer.install b/splashtop-streamer.install
index e4541df664c4..221a7a8b5460 100644
--- a/splashtop-streamer.install
+++ b/splashtop-streamer.install
@@ -15,54 +15,75 @@ pre_install() {
}
post_install() {
- if [ "$1" = "configure" ]; then
- echo "[Splashtop-Streamer] Configure streamer"
- if [ ! -e "/etc/splashtop-streamer.conf" ]; then
- echo "[Splashtop-Streamer] LastConfigured=`date +%s`" > /etc/splashtop-streamer.conf
- fi
- if [ ! -d "/opt/splashtop-streamer/config/" ]; then
- mkdir /opt/splashtop-streamer/config/
- fi
- if [ ! -d "/opt/splashtop-streamer/dump/" ]; then
- mkdir /opt/splashtop-streamer/dump/
- fi
- if [ ! -d "/opt/splashtop-streamer/log/" ]; then
- mkdir /opt/splashtop-streamer/log/
- fi
- chmod a=rwx /opt/splashtop-streamer/config
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ echo "[Splashtop-Streamer] Configure streamer"
+ if [ ! -e "/etc/splashtop-streamer.conf" ]; then
+ echo "LastConfigured=`date +%s`" > /etc/splashtop-streamer.conf
+ fi
+ if [ ! -d "/opt/splashtop-streamer/config/" ]; then
+ mkdir /opt/splashtop-streamer/config/
+ fi
+ if [ ! -d "/opt/splashtop-streamer/dump/" ]; then
+ mkdir /opt/splashtop-streamer/dump/
+ fi
+ if [ ! -d "/opt/splashtop-streamer/log/" ]; then
+ mkdir /opt/splashtop-streamer/log/
fi
+ chmod a=rwx /opt/splashtop-streamer/config
if [ ! -f "/usr/bin/splashtop-streamer" ]; then
echo "[Splashtop-Streamer] Install user binary link"
ln -s /opt/splashtop-streamer/script/splashtop-streamer /usr/bin/splashtop-streamer
fi
- if [ -e /etc/pam.d/common-session ]; then
- echo "[Splashtop-Streamer] Install PAM module"
- echo "session optional pam_splashtop.so" >> /etc/pam.d/common-session
- cp -f /opt/splashtop-streamer/config/pam_splashtop.so /usr/lib/x86_64-linux-gnu/security/
- fi
+ #
+ # WORKAROUND
+ # In Ubuntu 20.04 MATE Desktop Environment, the desktop entry for "Splashtop Streamer"
+ # cannot be found in brisk-menu immediately after installed the .deb.
+ # Append an new line to /usr/share/applications/com.splashtop.streamer.desktop
+ # to trigger the brisk-menu to show "Splashtop Streamer" immediately.
+ #
+ echo "" >> /usr/share/applications/com.splashtop.streamer.desktop
if [ -e /etc/gdm3/custom.conf ];then
+ if grep -Fq "#WaylandEnable=false" /etc/gdm/custom.conf; then
+ REBOOT_REQUIRED="1"
+ fi
sed -i 's/#WaylandEnable=false/WaylandEnable=false/' /etc/gdm3/custom.conf
fi
+ # Allow GDM3 in wayland mode to save screeshot to disk, reboot is required
+ GDM_SETTINGS_AUTO_PATCH="0" # Experimental - disabled for now
+ if [ "$GDM_SETTINGS_AUTO_PATCH" = "1" ]; then
+ REBOOT_REQUIRED="1"
+ echo "[Splashtop-Streamer] Enable gdm to save file to disk for screenshot in wayland mode"
+ /opt/splashtop-streamer/script/gdm-disable-save-to-disk.sh false || true
+ fi
+
if [ -d /usr/lib/systemd/system/ ]; then
echo "[Splashtop-Streamer] Install streamer service"
- cp /opt/splashtop-streamer/config/SRStreamer.service /usr/lib/systemd/system/
ln -s /usr/lib/systemd/system/SRStreamer.service /etc/systemd/system/SRStreamer.service
fi
if [ -f "/etc/systemd/system/SRStreamer.service" ]; then
echo "[Splashtop-Streamer] Start streamer service"
systemctl daemon-reload
- systemctl restart SRStreamer.service
- systemctl enable /usr/lib/systemd/system/SRStreamer.service
+ systemctl restart SRStreamer.service
+ systemctl enable /usr/lib/systemd/system/SRStreamer.service
fi
+ if [ "$REBOOT_REQUIRED" = "1" ]; then
+ echo "[SplashtopStreamer]: =============================="
+ echo "[SplashtopStreamer]: Please reboot to apply changes"
+ echo "[SplashtopStreamer]: =============================="
+ fi
+
+
+ update-desktop-database -q
}
pre_upgrade() {
+ ./upgrade-cleanup.sh
pre_install
}
@@ -71,66 +92,53 @@ post_upgrade() {
}
pre_remove() {
+
+ if [ "$1" = "remove" ]; then
+ if [ -f /tmp/sru ]; then
+ rm /tmp/sru
+ fi
+ if [ -f "/opt/splashtop-streamer/SRUtility" ]; then
+ cp /opt/splashtop-streamer/SRUtility /tmp/sru
+ fi
+ fi
+
if [ -f "/etc/systemd/system/SRStreamer.service" ]; then
echo "[Splashtop-Streamer] Stop streamer service"
- systemctl disable SRStreamer.service
+ systemctl stop SRStreamer.service
+ echo "[Splashtop-Streamer] Disable streamer service"
+ systemctl disable SRStreamer.service
echo "[Splashtop-Streamer] Remove streamer service"
- rm /usr/lib/systemd/system/SRStreamer.service
- systemctl daemon-reload
- pidof SRFeature | xargs kill -9
- if [ "$(pgrep -f 'SRStreamer.pyc' | wc -w)" != 0 ]; then
- pgrep -f SRStreamer.pyc | xargs kill -9
- fi
+ rm /usr/lib/systemd/system/SRStreamer.service
+ systemctl daemon-reload
+ # Kill SRStreamer processes, ignore error here
+ killall -q -9 SRStreamer || true
fi
-}
-
-post_remove() {
- if [ "$1" = "remove" ]; then
- if [ -f "/opt/splashtop-streamer/config/global.conf" ]; then
- echo "[Splashtop-Streamer] Find streamer settings"
- ServerID=`cat /opt/splashtop-streamer/config/global.conf | grep CloudServerID | awk 'BEGIN {FS="="} {print $2}'`
- ServerVER=`cat /opt/splashtop-streamer/config/global.conf | grep CloudVersion | awk 'BEGIN {FS="="} {print $2}'`
- ServerUUID=`cat /opt/splashtop-streamer/config/global.conf | grep ServerUUID | awk 'BEGIN {FS="="} {print $2}' | sed 's/-//g'`
- ServerURL="https://st-v3-internal.api.splashtop.com"
- if [ "$ServerID" = "241" ]; then
- echo "[Splashtop-Streamer] BE-QA"
- ServerURL="https://be-qa.api.splashtop.com"
- fi
-
- if [ ! -z "$ServerUUID" ]; then
- HttpHeaderAUTH="Authorization: Basic emVyb0BzcGxhc2h0b3AuY29tOk1WZWNpdmVkZGV2aWNlVk0="
- HttpHeaderUSER="User-Agent: SRS/"$ServerVER" splashtop2 linux"
- HttpHeaderCONTENT="Content-Type: application/x-www-form-urlencoded"
- Result="$(curl --silent -X DELETE -H "$HttpHeaderCONTENT" -H "$HttpHeaderAUTH" -H "$HttpHeaderUSER" $ServerURL/api/fulong/v3/unlink_srs/$ServerUUID )"
- echo ${Result} | grep -w 20200 > /dev/null
- if [ $? -eq 0 ]; then
- echo "[Splashtop-Streamer] Unlink streamer success"
- else
- echo "[Splashtop-Streamer] Unlink streamer $ServerUUID fail"
- fi
- fi
- fi
+ GDM_SETTINGS_AUTO_PATCH="0" # Experimental - disabled for now
+ if [ "$GDM_SETTINGS_AUTO_PATCH" = "1" ]; then
+ echo "[Splashtop-Streamer] Disable gdm to save file to disk"
+ /opt/splashtop-streamer/script/gdm-disable-save-to-disk.sh true || true
fi
- if [ -e /etc/pam.d/common-session ]; then
- sed -i '/session optional pam_splashtop.so/d' /etc/pam.d/common-session
- if [ -f "/usr/lib/x86_64-linux-gnu/security/pam_splashtop.so" ]; then
- echo "[Splashtop-Streamer] Remove PAM module"
- rm /usr/lib/x86_64-linux-gnu/security/pam_splashtop.so
- fi
- fi
+}
- if [ "$1" = "remove" ]; then
+post_remove() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
if [ -d "/opt/splashtop-streamer/config/" ]; then
echo "[Splashtop-Streamer] Remove streamer settings"
+ if [ -f /tmp/sru ]; then
+ /tmp/sru -remove
+ rm /tmp/sru
+ fi
+
rm -rf /opt/splashtop-streamer/config/global.conf
- rm -rf /opt/splashtop-streamer/log
+ rm -rf /opt/splashtop-streamer/config/region.json
fi
- fi
+ find /home -type f | grep /.config/autostart/com.splashtop.streamer.desktop | xargs rm -f
rm /usr/bin/splashtop-streamer
- rm -rf /opt/splashtop-streamer/dump
- rm -rf /opt/splashtop-streamer/SRFeature.sock
+ rm -rf /opt/splashtop-streamer
+ rm /etc/splashtop-streamer.conf
+ update-desktop-database -q
}
diff --git a/upgrade-cleanup.sh b/upgrade-cleanup.sh
new file mode 100755
index 000000000000..300b6f420a09
--- /dev/null
+++ b/upgrade-cleanup.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+ver2=$(pacman -Q splashtop-streamer 2>&1 |grep -i -c -E "splashtop-streamer (2\.[0-9]\.)")
+if [[ "$ver2" -ne 0 ]];
+then
+echo "Cleaning up old install"
+ if [ -f "/etc/systemd/system/SRStreamer.service" ]; then
+ echo "[Splashtop-Streamer] Stop streamer service"
+ systemctl disable SRStreamer.service
+ echo "[Splashtop-Streamer] Remove streamer service"
+ rm /usr/lib/systemd/system/SRStreamer.service
+ systemctl daemon-reload
+ pidof SRFeature | xargs kill -9
+ if [ "$(pgrep -f 'SRStreamer.pyc' | wc -w)" != 0 ]; then
+ pgrep -f SRStreamer.pyc | xargs kill -9
+ fi
+ fi
+ if [ -e /etc/pam.d/common-session ]; then
+ sed -i '/session optional pam_splashtop.so/d' /etc/pam.d/common-session
+ if [ -f "/usr/lib/x86_64-linux-gnu/security/pam_splashtop.so" ]; then
+ echo "[Splashtop-Streamer] Remove PAM module, as not needed."
+ rm /usr/lib/x86_64-linux-gnu/security/pam_splashtop.so
+ fi
+ fi
+ find /home -type f | grep /.config/autostart/com.splashtop.streamer.desktop | xargs rm -f
+ cp /opt/splashtop-streamer/config/global.conf /tmp/streamerconf
+ rm /usr/bin/splashtop-streamer
+ rm -rf /opt/splashtop-streamer
+ mkdir -p /opt/splashtop-streamer/config/
+ mv /tmp/streamerconf /opt/splashtop-streamer/config/global.conf
+ chmod a=rwx /opt/splashtop-streamer/config
+
+fi