aboutsummaryrefslogtreecommitdiffstats
path: root/signal-desktop
diff options
context:
space:
mode:
Diffstat (limited to 'signal-desktop')
-rwxr-xr-xsignal-desktop/mount-signal8
-rwxr-xr-xsignal-desktop/signal-desktop3
-rwxr-xr-xsignal-desktop/umount-signal7
3 files changed, 15 insertions, 3 deletions
diff --git a/signal-desktop/mount-signal b/signal-desktop/mount-signal
index 6754d0f..c23b860 100755
--- a/signal-desktop/mount-signal
+++ b/signal-desktop/mount-signal
@@ -1,9 +1,13 @@
#!/bin/dash
if mountpoint -q -- "${HOME}/.var/opt/signal/SignalCrypt.d"; then
- printf '%s\n' 'mount-signal: already mounted' >&2
+ printf '%s\n' 'mount-signal: already mounted' >&2 || :
elif test -e /dev/mapper/SignalCrypt; then
- asroot env SIGNAL_DIR="${HOME}/.var/opt/signal" sh -ec \
+ asroot=asroot
+ if ! isfg; then
+ asroot=gasroot
+ fi
+ $asroot env SIGNAL_DIR="${HOME}/.var/opt/signal" sh -ec \
'mount -- /dev/mapper/SignalCrypt "${SIGNAL_DIR}/SignalCrypt.d"'
else
gpg --decrypt -- "${HOME}/.var/opt/signal/SignalCrypt.key" | \
diff --git a/signal-desktop/signal-desktop b/signal-desktop/signal-desktop
index 54f4b99..989c771 100755
--- a/signal-desktop/signal-desktop
+++ b/signal-desktop/signal-desktop
@@ -1,4 +1,7 @@
#!/bin/dash
set -e
mount-signal
+if ! isfg; then
+ exec >/dev/null 2>&1
+fi
exec /usr/bin/signal-desktop "$@"
diff --git a/signal-desktop/umount-signal b/signal-desktop/umount-signal
index 06a4eef..c342fbb 100755
--- a/signal-desktop/umount-signal
+++ b/signal-desktop/umount-signal
@@ -1,6 +1,11 @@
#!/bin/dash
-asroot env \
+asroot=asroot
+if ! isfg; then
+ asroot=gasroot
+fi
+
+$asroot env \
SIGNAL_DIR="${HOME}/.var/opt/signal" \
SIGNAL_DEV="$(losetup | sed 's/\s\+/ /g' | cut -d ' ' -f 1,6 | \
sed -n 's#\(/[^ ]*\) '"$(realpath -- "${HOME}/.var/opt/signal/SignalCrypt.img")"'$#\1#p' | sed 1q)" \