diff options
author | Luke Shumaker <shumakl@purdue.edu> | 2015-12-10 21:14:23 -0500 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2015-12-12 17:28:09 -0500 |
commit | 21bb3f7fb1111d8b1043ff4c3a1d821042a8e4c6 (patch) | |
tree | 2b3913cd0bd4becd19b50f3f489870aee80a2d17 | |
parent | 259b88d6f8df12ff737257a4ef0a3ab23ab2bdb9 (diff) |
XDG_RUNTIME_DIR: "Recent" Linux kernels support flock over NFS.
And Purdue seems to have enabled that.
-rw-r--r-- | .config/login.d/02_xdg_runtime_dir.sh | 11 |
1 files 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 |