diff options
author | Alan Pearce | 2014-04-12 13:15:53 +0100 |
---|---|---|
committer | Alan Pearce | 2014-04-12 13:15:53 +0100 |
commit | 81c8016d1e296ed91af69f2d5bf435d7d657af04 (patch) | |
tree | bbccda0a7e252ce2f90bfd648fa7b5edb7d45920 /tag-zsh/config/zsh/functions/runit/renamesv | |
parent | 9dd9b2972c4c526109f4fb57f936b67290ace003 (diff) | |
download | dotfiles-81c8016d1e296ed91af69f2d5bf435d7d657af04.tar.lz dotfiles-81c8016d1e296ed91af69f2d5bf435d7d657af04.tar.zst dotfiles-81c8016d1e296ed91af69f2d5bf435d7d657af04.zip |
Restructure everything to use rcm
https://github.com/thoughtbot/rcm
Diffstat (limited to 'tag-zsh/config/zsh/functions/runit/renamesv')
-rw-r--r-- | tag-zsh/config/zsh/functions/runit/renamesv | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tag-zsh/config/zsh/functions/runit/renamesv b/tag-zsh/config/zsh/functions/runit/renamesv new file mode 100644 index 0000000..dba1098 --- /dev/null +++ b/tag-zsh/config/zsh/functions/runit/renamesv @@ -0,0 +1,36 @@ +#!/usr/bin/env zsh +local svdir=${SVDIR:-/service} +if [[ -z $1 || -z $2 ]]; then + echo "Usage: $0 source target" + return 64 +fi + +if [[ ! -h $svdir/$1 ]]; then + echo $svdir/$1 does not exist + return 2 +fi + +if [[ -e $svdir/$2 ]]; then + echo $svdir/$2 already exists + return 3 +fi + +local servicedir=`getservicedir` + +if [[ ! ( -w $svdir && -w $servicedir ) ]]; then + echo $svdir or $servicedir is not writeable +fi + +# The service doesn't have to be stopped as removing the link will do that +# However, running the same service twice isn't a great idea, so wait here +sv stop $1 + +rm -f $svdir/$1 || return + +mv $servicedir/{$1,$2} || return + +ln -s {$servicedir,$svdir}/$2 || return + +sv start $2 + +return |