commit 1a0a6ea394212394806aa1e64c8a970c52467933
parent c0578248558f74c027b5986aa0354a57b503307b
Author: Jan Pobrislo <ccx@webprojekty.cz>
Date: Wed, 16 Dec 2020 04:44:32 +0100
Move exec sockets to /run, make use of USER variable
Diffstat:
1 file changed, 12 insertions(+), 13 deletions(-)
diff --git a/bin/zshaskpass_lock b/bin/zshaskpass_lock
@@ -42,16 +42,16 @@ coproc_args=(
#"$@"
)
if [[ -n $X ]]; then
- coproc_args+=( tail -F /run/containers/xsession.$X.ccx/run/uncaught-logs/current )
+ coproc_args+=( tail -F /run/containers/xsession.$X.$USER/run/uncaught-logs/current )
typeset -g plumber_fifo terminal_exec_socket terminal_el
- plumber_fifo=/run/containers/xsession.$X.ccx/run/plumber_fifo
+ plumber_fifo=/run/containers/xsession.$X.$USER/run/plumber_fifo
# exec_socket=$HOME/chome/xsession.$[ ${TTY#/dev/tty} + 4 ]/exec/socket
- terminal_exec_socket=$HOME/chome/xsession.$[ ${TTY#/dev/tty} + 4 ]/exec/urxvt.socket
+ terminal_exec_socket=/run/containers/xsession.$[ ${TTY#/dev/tty} + 4 ].$USER/exec/urxvt
#terminal_el="redirfd -w 1 /dev/null redirfd -w 2 /dev/null s6-sudo ${(qqq)${exec_socket:A}} fdmove 3 0 redirfd -r 0 /dev/null background { urxvt -pty-fd 3 }"
terminal_el="redirfd -w 1 /dev/null redirfd -w 2 /dev/null s6-sudo ${(qqq)terminal_exec_socket:A}"
terminal_env=rxvt-unicode # the TERM variable used
else
- coproc_args+=( tail -F /run/user/ccx.logs/current )
+ coproc_args+=( tail -F /run/user/$USER.logs/current )
fi
if (($+LOGINCAP_READFD)); then
coproc_args=( fdclose $LOGINCAP_READFD unexport LOGINCAP_FD "$coproc_args[@]" )
@@ -74,9 +74,9 @@ logincap() {
lock() {
ssh-add -D || die "Error removing identities"
- s6-svc -o -wu -T 3000 /run/containers/xsession.$X.ccx/run/service/screen-locker/ || "Failed to bring up screen locker"
- s6-svstat /run/containers/xsession.$X.ccx/run/service/screen-locker/
- s6-svlisten1 -d /run/containers/xsession.$X.ccx/run/service/screen-locker/ zsh -c "read -sk 1 $'?Session locked, press enter to unlock.\n' || exit 98; until ssh-add -c; do sleep 2; read -sk 1 $'?\nUnlock failed, press enter to try again.\n' || exit 98; done; if ssh-add -l >/dev/null; then printf '%s\n' 'Success, stopping screen locker'; s6-svc -d '/run/containers/xsession.$X.ccx/run/service/screen-locker/'; fi"
+ s6-svc -o -wu -T 3000 /run/containers/xsession.$X.$USER/run/service/screen-locker/ || "Failed to bring up screen locker"
+ s6-svstat /run/containers/xsession.$X.$USER/run/service/screen-locker/
+ s6-svlisten1 -d /run/containers/xsession.$X.$USER/run/service/screen-locker/ zsh -c "read -sk 1 $'?Session locked, press enter to unlock.\n' || exit 98; until ssh-add -c; do sleep 2; read -sk 1 $'?\nUnlock failed, press enter to try again.\n' || exit 98; done; if ssh-add -l >/dev/null; then printf '%s\n' 'Success, stopping screen locker'; s6-svc -d '/run/containers/xsession.$X.$USER/run/service/screen-locker/'; fi"
ssh-add -l >/dev/null || die "Failed to load SSH agent identities (screen locker died?), exiting."
}
@@ -110,8 +110,8 @@ cmd() {
local X
X=$[ ${TTY#/dev/tty} + 4 ]
logincap X\ $X
- s6-svc -wu -o /run/service/container.xsession.$X.ccx
- s6-svstat /run/service/container.xsession.$X.ccx
+ s6-svc -wu -o /run/service/container.xsession.$X.$USER
+ s6-svstat /run/service/container.xsession.$X.$USER
setup-plumber-listener
;;
(off|poweroff)
@@ -119,7 +119,6 @@ cmd() {
(reboot)
logincap b;;
(root)
- # logincap "terminal rxvt-unicode importas -i PTY_FD PTY_FD s6-envdir /run/user/ccx/X$[ ${TTY#/dev/tty} + 4 ]/env urxvt -pty-fd \$PTY_FD" ;;
logincap "terminal $terminal_env $terminal_el"
logincap chvt X
;;
@@ -131,7 +130,7 @@ cmd() {
lock
;;
(exit)
- true >/run/user/ccx/X$[ ${TTY#/dev/tty} + 4 ]/fifo
+ true >/run/user/$USER/X$[ ${TTY#/dev/tty} + 4 ]/fifo
keep_running=0
;;
(shell)
@@ -166,8 +165,8 @@ read-plumber-message() {
logincap chvt X
;;
(exit)
- true >/run/user/ccx/X$[ ${TTY#/dev/tty} + 4 ]/fifo
- s6-svc -wd -di -T 1 /run/service/container.xsession.$X.ccx
+ true >/run/user/$USER/X$[ ${TTY#/dev/tty} + 4 ]/fifo
+ s6-svc -wd -di -T 1 /run/service/container.xsession.$X.$USER
s6-svc -wd -d -T 1 /run/service/X$X
keep_running=0
;;