From 2aa4ed67883acbb66817ef24b1ef23138d944e73 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Thu, 10 Dec 2015 21:14:23 -0500 Subject: XDG_RUNTIME_DIR: "Recent" Linux kernels support flock over NFS. And Purdue seems to have enabled that. --- .config/login.d/02_xdg_runtime_dir.sh | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.config/login.d/02_xdg_runtime_dir.sh b/.config/login.d/02_xdg_runtime_dir.sh index 6e3e4ad..86f1232 100644 --- a/.config/login.d/02_xdg_runtime_dir.sh +++ b/.config/login.d/02_xdg_runtime_dir.sh @@ -1,12 +1,11 @@ #!/hint/sh - # Set XDG_RUNTIME_DIR if we can if [ -z "$XDG_RUNTIME_DIR" ] && type flock &>/dev/null; then _diy_xdg_runtime_login() { - export XDG_RUNTIME_DIR="$XDG_CACHE_HOME/xdg-runtime-dir/$HOSTNAME" - if ! [ /dev/fd/7 -ef "$XDG_CACHE_HOME/xdg-runtime-dir/.lock" ]; then - mkdir -p -- "$XDG_CACHE_HOME/xdg-runtime-dir" - exec 7>"$XDG_CACHE_HOME/xdg-runtime-dir/.lock" + export XDG_RUNTIME_DIR="$XDG_CACHE_HOME/xdg-runtime-dir/$HOSTNAME.dir" + if ! [ /dev/fd/7 -ef "$XDG_CACHE_HOME/xdg-runtime-dir/$HOSTNAME.lock" ]; then + mkdir -p -- "$XDG_CACHE_HOME/xdg-runtime-dir" + exec 7>"$XDG_CACHE_HOME/xdg-runtime-dir/$HOSTNAME.lock" if flock -xn 7; then if [ ! -d "$XDG_RUNTIME_DIR" ]; then local tmp="$(mktemp -d --tmpdir -- "${USER}@${HOSTNAME}-runtime.XXXXXXXXXX")" @@ -19,9 +18,9 @@ if [ -z "$XDG_RUNTIME_DIR" ] && type flock &>/dev/null; then fi } _diy_xdg_runtime_logout() { - exec 7>"$XDG_CACHE_HOME/xdg-runtime-dir/.lock" if flock -xn 7; then rm -rf -- "$(readlink "$XDG_RUNTIME_DIR")" + rm -f -- "$XDG_RUNTIME_DIR" fi } _diy_xdg_runtime_login -- cgit v1.1-4-g5e80