diff options
author | lassulus <lassulus@lassul.us> | 2018-12-04 08:08:43 +0100 |
---|---|---|
committer | lassulus <lassulus@lassul.us> | 2018-12-04 08:08:43 +0100 |
commit | d30118879d052adb9ea59cdc1d0695b5e69664e9 (patch) | |
tree | 9c3afb51a24bc26239b8b076037d79960762b17b /tv/5pkgs/haskell | |
parent | 205e74c138d809fa1bbb8cbbc983e3344217f3be (diff) | |
parent | e8e0a68029516b3577aef5aabf818589009f334d (diff) |
Merge remote-tracking branch 'ni/master'
Diffstat (limited to 'tv/5pkgs/haskell')
-rw-r--r-- | tv/5pkgs/haskell/xmonad-tv/shell.nix | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/tv/5pkgs/haskell/xmonad-tv/shell.nix b/tv/5pkgs/haskell/xmonad-tv/shell.nix index 936e69627..6ca00bc05 100644 --- a/tv/5pkgs/haskell/xmonad-tv/shell.nix +++ b/tv/5pkgs/haskell/xmonad-tv/shell.nix @@ -46,7 +46,7 @@ in xmonad_restart() {( set -efu cd "$WORKDIR" - if systemctl is-active xmonad; then + if systemctl --quiet is-active xmonad; then sudo systemctl stop xmonad cp -b "$config_XMONAD_CACHE_DIR"/xmonad.state "$CACHEDIR"/ echo "xmonad.state: $(cat "$CACHEDIR"/xmonad.state)" @@ -59,9 +59,14 @@ in xmonad_yield() {( set -efu - "$xmonad" --shutdown - cp -b "$CACHEDIR"/xmonad.state "$config_XMONAD_CACHE_DIR"/ - sudo systemctl start xmonad + if ! systemctl --quiet is-active xmonad; then + "$xmonad" --shutdown + cp -b "$CACHEDIR"/xmonad.state "$config_XMONAD_CACHE_DIR"/ + sudo systemctl start xmonad + else + echo "xmonad.service is already running" >&2 + exit -1 + fi )} export PATH=${config.systemd.services.xmonad.path}:$PATH |