diff options
-rw-r--r-- | .SRCINFO | 12 | ||||
-rw-r--r-- | PKGBUILD | 14 | ||||
-rwxr-xr-x | swaymsg-root.sh | 8 |
3 files changed, 34 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..81cfdb315a38 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,12 @@ +pkgbase = swaymsg-root + pkgdesc = small wrapper for swaymsg to allow it run as root + pkgver = 1 + pkgrel = 1 + url = https://github.com/vesim987/swaymsg-root + arch = any + depends = sway + source = swaymsg-root.sh + sha256sums = 081e32f6a7374ef366e1f3e1314c2aca08a0e87ad3d54a655cc40880d3292c48 + +pkgname = swaymsg-root + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..21bf9faad9a0 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,14 @@ +# Maintainer: Vesim <vesim809@pm.me> +pkgname=swaymsg-root +pkgver=1 +pkgrel=1 +pkgdesc='small wrapper for swaymsg to allow it run as root' +arch=('any') +url='https://github.com/vesim987/swaymsg-root' +depends=('sway') +source=('swaymsg-root.sh') +sha256sums=('081e32f6a7374ef366e1f3e1314c2aca08a0e87ad3d54a655cc40880d3292c48') + +package() { + install -Dm755 swaymsg-root.sh "${pkgdir}/usr/bin/swaymsg-root" +} diff --git a/swaymsg-root.sh b/swaymsg-root.sh new file mode 100755 index 000000000000..d1fff12cafec --- /dev/null +++ b/swaymsg-root.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env sh + +# it will get only the first instance of sway +SWAY_PID="$(pgrep "^sway$" | head -n1)" +USER_ID="$(stat -c "%u" "/proc/${SWAY_PID}/")" +USER="$(id -nu "${USER_ID}")" + +SWAYSOCK="/run/user/${USER_ID}/sway-ipc.${USER_ID}.${SWAY_PID}.sock" su "${USER}" -c "swaymsg $*" |