#!/usr/bin/env bash set -eu LOG_DIR=/var/log/mullvad-vpn mkdir -p $LOG_DIR exec 2>&1 > $LOG_DIR/postinstall.log echo "Running postinstall at $(date)" INSTALL_DIR=$2 DAEMON_PLIST_PATH="/Library/LaunchDaemons/net.mullvad.daemon.plist" DAEMON_PLIST=$(cat <<-EOM Label net.mullvad.daemon ProgramArguments $INSTALL_DIR/Mullvad VPN.app/Contents/Resources/mullvad-daemon -v UserName root RunAtLoad KeepAlive SoftResourceLimits NumberOfFiles 1024 StandardErrorPath $LOG_DIR/stderr.log EOM ) ZSH_COMPLETIONS_DIR="/usr/local/share/zsh/site-functions/" FISH_COMPLETIONS_DIR="/usr/local/share/fish/vendor_completions.d/" pkill -x "Mullvad VPN" || echo "Unable to kill GUI, not running?" sleep 1 launchctl unload -w $DAEMON_PLIST_PATH cp "$LOG_DIR/daemon.log" "$LOG_DIR/old-install-daemon.log" \ || echo "Failed to copy old daemon log" echo "$DAEMON_PLIST" > $DAEMON_PLIST_PATH launchctl load -w $DAEMON_PLIST_PATH mkdir -p /usr/local/bin ln -sf "$INSTALL_DIR/Mullvad VPN.app/Contents/Resources/mullvad" /usr/local/bin/mullvad ln -sf "$INSTALL_DIR/Mullvad VPN.app/Contents/Resources/mullvad-problem-report" /usr/local/bin/mullvad-problem-report if [ -d "$FISH_COMPLETIONS_DIR" ]; then ln -sf "$INSTALL_DIR/Mullvad VPN.app/Contents/Resources/mullvad.fish" $FISH_COMPLETIONS_DIR fi mkdir -p "$ZSH_COMPLETIONS_DIR" ln -sf "$INSTALL_DIR/Mullvad VPN.app/Contents/Resources/_mullvad" "$ZSH_COMPLETIONS_DIR/_mullvad"