check if qutebrowser process is running

Sometimes when qutebrowser crashes, it leaves the IPC socket file behind. In those cases this script still tried to use it, failed, and didn't open your URL at all.
This commit is contained in:
狼耳 2017-11-24 14:52:33 +01:00 committed by GitHub
parent 06fc52321e
commit 765a22189c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -6,13 +6,14 @@ _url="$1"
_qb_version='0.10.1'
_proto_version=1
_ipc_socket="${XDG_RUNTIME_DIR}/qutebrowser/ipc-$(echo -n "$USER" | md5sum | cut -d' ' -f1)"
_qute_bin="/usr/bin/qutebrowser"
if [[ -e "${_ipc_socket}" ]]; then
if [[ -e "${_ipc_socket}" ]] && [[ `pgrep -f $_qute_bin` ]]; then
exec printf '{"args": ["%s"], "target_arg": null, "version": "%s", "protocol_version": %d, "cwd": "%s"}\n' \
"${_url}" \
"${_qb_version}" \
"${_proto_version}" \
"${PWD}" | socat - UNIX-CONNECT:"${_ipc_socket}"
else
exec /usr/bin/qutebrowser --backend webengine "$@"
exec $_qute_bin --backend webengine "$@"
fi