Skip to content

Instantly share code, notes, and snippets.

@coderofsalvation
Last active February 26, 2018 00:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save coderofsalvation/4563309 to your computer and use it in GitHub Desktop.
Save coderofsalvation/4563309 to your computer and use it in GitHub Desktop.
savihostbash - a shellscriptwrapper to easily run windows vsts in linux without the usual dependancies like vstserver,dssi-vsthost etc..this only requires wine + savihost.exe. It enables you to easily run your plugins from the commandline, or integrate it into your desktop using icons/menu/filebrowser.
#!/bin/bash
trim(){
cat - | sed -e 's/^ *//g' -e 's/ *$//g' -e "s/'//g"
}
file="$(echo "$1" | trim)"
set -- "$file" # strip single quotes (PCFMAN)
path="$(dirname "$(readlink -f "$1")" )"
exepath=~/bin # /tmp
checkexe(){
if [[ ! -f ~/bin/savihost.exe ]]; then
echo "[x] downloading savihost @ http://www.hermannseib.com/english/savihost.htm"
wget "http://www.hermannseib.com/programs/savihostx86.zip" -O /tmp/savihostx86.zip
cd /tmp; unzip savihostx86.zip
cp savihost.exe "$exepath"
fi
}
copy(){
[[ ! -f "$1" ]] && ( echo "$1 is not a valid vstfile" && exit 1);
file="$(readlink -f "$1")"
savihostexe="$( echo "$file" | sed "s/dll/exe/g" )"
ln -fs "$exepath/savihost.exe" "$savihostexe"
}
run(){
cd "$path"
savihostexe="$( basename "$( echo "$1" | sed "s/dll/exe/g")" )"
out="$( wine "$savihostexe" 2>&1 )"
rm "$savihostexe"
}
[[ ! -n "$1" ]] && echo "Usage: savihost <yourplugin.dll>" && exit 1
checkexe && copy "$1" && run "$1"
@playinmyblues
Copy link

Please forgive the question, but what do I need to type on the command line to run a VST through SAVIHost using this script? For instance, I want to use Dexed through SAVIHost.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment