aboutsummaryrefslogtreecommitdiffstats
path: root/wire-desktop
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2023-11-20 06:04:40 +0100
committerMattias Andrée <maandree@kth.se>2023-11-20 06:04:48 +0100
commit0b0adf152e94df7dff508462b4e50500e3c6ad6a (patch)
treeddbe3c4ebd4ae72c2d39b38e0782f435f5716dae /wire-desktop
parentm (diff)
downloaddotfiles-0b0adf152e94df7dff508462b4e50500e3c6ad6a.tar.gz
dotfiles-0b0adf152e94df7dff508462b4e50500e3c6ad6a.tar.bz2
dotfiles-0b0adf152e94df7dff508462b4e50500e3c6ad6a.tar.xz
Automatically mount signal/element/wire when started
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to '')
-rw-r--r--wire-desktop/Makefile19
-rw-r--r--wire-desktop/bash-aliases42
-rwxr-xr-xwire-desktop/mount-wire22
-rwxr-xr-xwire-desktop/umount-wire17
-rwxr-xr-xwire-desktop/wire-desktop5
5 files changed, 57 insertions, 48 deletions
diff --git a/wire-desktop/Makefile b/wire-desktop/Makefile
index 60a1b18..a8f6186 100644
--- a/wire-desktop/Makefile
+++ b/wire-desktop/Makefile
@@ -9,12 +9,19 @@ install:
../check-installed gnupg
../check-installed cryptsetup
../check-installed key2root
- mkdir -p -- ~/.config/bash/aliases.d
- test ! -e ~/.config/bash/aliases.d/wire-desktop || \
- test -L ~/.config/bash/aliases.d/wire-desktop
- ln -sf -- ~/.dotfiles/wire-desktop/bash-aliases ~/.config/bash/aliases.d/wire-desktop
+ ../check-installed-shebang mount-wire
+ ../check-installed-shebang umount-wire
+ ../check-installed-shebang wire-desktop
+ mkdir -p -- ~/.local/bin/
+ test ! -e ~/.local/bin/mount-wire || test -L ~/.local/bin/mount-wire
+ ln -sf -- ~/.dotfiles/wire-desktop/mount-wire ~/.local/bin/
+ test ! -e ~/.local/bin/umount-wire || test -L ~/.local/bin/umount-wire
+ ln -sf -- ~/.dotfiles/wire-desktop/umount-wire ~/.local/bin/
+ test ! -e ~/.local/bin/wire-desktop || test -L ~/.local/bin/wire-desktop
+ ln -sf -- ~/.dotfiles/wire-desktop/wire-desktop ~/.local/bin/
uninstall:
+! ../check-installed wire-desktop
- -unlink -- ~/.config/bash/aliases.d/wire-desktop
- -rmdir -- ~/.config/bash/aliases.d
+ -unlink -- ~/.local/bin/mount-wire
+ -unlink -- ~/.local/bin/umount-wire
+ -unlink -- ~/.local/bin/wire-desktop
diff --git a/wire-desktop/bash-aliases b/wire-desktop/bash-aliases
deleted file mode 100644
index dfc0d2b..0000000
--- a/wire-desktop/bash-aliases
+++ /dev/null
@@ -1,42 +0,0 @@
-# -*- shell-script -*-
-
-mount-wire () {
- if mountpoint -q -- ~/.var/opt/wire/WireCrypt.d; then
- printf '%s\n' 'mount-wire: already mounted' >&2
- elif test -e /dev/mapper/WireCrypt; then
- asroot env WIRE_DIR=~/.var/opt/wire sh -ec \
- 'mount -- /dev/mapper/WireCrypt "${WIRE_DIR}/WireCrypt.d"'
- else
- gpg --decrypt ~/.var/opt/wire/WireCrypt.key | \
- key2root -k WireCrypt env \
- WIRE_IMG=~/.var/opt/wire/WireCrypt.img \
- WIRE_DIR=~/.var/opt/wire \
- WIRE_DEV="$(losetup | sed 's/\s\+/ /g' | cut -d ' ' -f 1,6 | \
- sed -n 's#\(/[^ ]*\) '"$(realpath -- ~/.var/opt/wire/WireCrypt.img)"'$#\1#p' | sed 1q)" \
- sh -ec '
- if test -z "${WIRE_DEV}"; then
- WIRE_DEV="$(losetup --show -f -P "${WIRE_IMG}")"
- fi
- cryptsetup -d - open "${WIRE_DEV}" WireCrypt
- mount -- /dev/mapper/WireCrypt "${WIRE_DIR}/WireCrypt.d"
- '
- fi
-}
-
-umount-wire () {
- asroot env \
- WIRE_DIR=~/.var/opt/wire \
- WIRE_DEV="$(losetup | sed 's/\s\+/ /g' | cut -d ' ' -f 1,6 | \
- sed -n 's#\(/[^ ]*\) '"$(realpath -- ~/.var/opt/wire/WireCrypt.img)"'$#\1#p' | sed 1q)" \
- sh -c '
- if mountpoint -q -- "${WIRE_DIR}/WireCrypt.d"; then
- umount -- "${WIRE_DIR}/WireCrypt.d"
- fi
- if test -e /dev/mapper/WireCrypt; then
- cryptsetup close WireCrypt
- fi
- if test -n "${WIRE_DEV}"; then
- losetup -d "${WIRE_DEV}"
- fi
- '
-}
diff --git a/wire-desktop/mount-wire b/wire-desktop/mount-wire
new file mode 100755
index 0000000..a6dde57
--- /dev/null
+++ b/wire-desktop/mount-wire
@@ -0,0 +1,22 @@
+#!/bin/dash
+
+if mountpoint -q -- "${HOME}/.var/opt/wire/WireCrypt.d"; then
+ printf '%s\n' 'mount-wire: already mounted' >&2
+elif test -e /dev/mapper/WireCrypt; then
+ asroot env WIRE_DIR="${HOME}/.var/opt/wire" sh -ec \
+ 'mount -- /dev/mapper/WireCrypt "${WIRE_DIR}/WireCrypt.d"'
+else
+ gpg --decrypt -- "${HOME}/.var/opt/wire/WireCrypt.key" | \
+ key2root -k WireCrypt env \
+ WIRE_IMG="${HOME}/.var/opt/wire/WireCrypt.img" \
+ WIRE_DIR="${HOME}/.var/opt/wire" \
+ WIRE_DEV="$(losetup | sed 's/\s\+/ /g' | cut -d ' ' -f 1,6 | \
+ sed -n 's#\(/[^ ]*\) '"$(realpath -- "${HOME}/.var/opt/wire/WireCrypt.img")"'$#\1#p' | sed 1q)" \
+ sh -ec '
+ if test -z "${WIRE_DEV}"; then
+ WIRE_DEV="$(losetup --show -f -P -- "${WIRE_IMG}")"
+ fi
+ cryptsetup -d - -- open "${WIRE_DEV}" WireCrypt
+ mount -- /dev/mapper/WireCrypt "${WIRE_DIR}/WireCrypt.d"
+ '
+fi
diff --git a/wire-desktop/umount-wire b/wire-desktop/umount-wire
new file mode 100755
index 0000000..0301326
--- /dev/null
+++ b/wire-desktop/umount-wire
@@ -0,0 +1,17 @@
+#!/bin/dash
+
+asroot env \
+ WIRE_DIR="${HOME}/.var/opt/wire" \
+ WIRE_DEV="$(losetup | sed 's/\s\+/ /g' | cut -d ' ' -f 1,6 | \
+ sed -n 's#\(/[^ ]*\) '"$(realpath -- "${HOME}/.var/opt/wire/WireCrypt.img")"'$#\1#p' | sed 1q)" \
+ sh -c '
+ if mountpoint -q -- "${WIRE_DIR}/WireCrypt.d"; then
+ umount -- "${WIRE_DIR}/WireCrypt.d"
+ fi
+ if test -e /dev/mapper/WireCrypt; then
+ cryptsetup close WireCrypt
+ fi
+ if test -n "${WIRE_DEV}"; then
+ losetup -d -- "${WIRE_DEV}"
+ fi
+ '
diff --git a/wire-desktop/wire-desktop b/wire-desktop/wire-desktop
new file mode 100755
index 0000000..d57bda2
--- /dev/null
+++ b/wire-desktop/wire-desktop
@@ -0,0 +1,5 @@
+#!/bin/dash
+set -e
+mount-wire
+export ALSA_CARD=Microphone
+exec /usr/bin/wire-desktop "$@"