#!/usr/bin/env bash set -e set -o pipefail VERACRYPT="veracrypt" if [[ "$OSTYPE" == "darwin"* ]]; then VERACRYPT="/Applications/VeraCrypt.app/Contents/MacOS/VeraCrypt" fi MOUNT_TARGET=$2 if [[ -z "$MOUNT_TARGET" ]]; then MOUNT_TARGET=$HOME/.vault fi sudo chown $USER "$MOUNT_TARGET" mkdir -p "$MOUNT_TARGET" MOUNT_SOURCE=$1 if [[ -z "$MOUNT_SOURCE" ]]; then MOUNT_SOURCE="$HOME/vaults/vault.vera" fi chmod a+x "$MOUNT_SOURCE" if [[ -z "$VAULT_PASSWORD" ]]; then echo "interactive mount" $VERACRYPT -t --mount "$MOUNT_SOURCE" "$MOUNT_TARGET" else echo "non-interactive mount of '$MOUNT_SOURCE' to '$MOUNT_TARGET'" sudo $VERACRYPT -t --non-interactive -p $VAULT_PASSWORD --mount "$MOUNT_SOURCE" "$MOUNT_TARGET" fi echo "mounted" sudo chown $USER "$MOUNT_TARGET" echo "chowned" echo "$MOUNT_SOURCE -> $MOUNT_TARGET" "$MOUNT_TARGET/install"