#!/bin/bash cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" scriptdir="$(pwd)" echo_cyan() { echo -e "\033[0;36m$1\033[0m" } echo_blue() { echo -e "\033[0;34m$1\033[0m" } echo_yellow() { echo -e "\033[0;33m$1\033[0m" } echo_red() { echo -e "\033[0;31m$1\033[0m" } mkdir -p ${HOME}/.detee/bin mkdir -p ${HOME}/.detee/tmp mkdir -p ${HOME}/.detee/deps mkdir -p ${HOME}/.detee/ echo_blue "Make sure you add ${HOME}/.detee/bin to your path!" install_sev-snp-measure() { [[ -e "${HOME}/.detee/bin/sev-snp-measure.py" ]] && { echo_yellow "${HOME}/.detee/bin/sev-snp-measure.py already found. Delete the file to reinstall." return } cd ${HOME}/.detee/deps git clone https://github.com/virtee/sev-snp-measure.git cd sev-snp-measure git pull ln -s ../deps/sev-snp-measure/sev-snp-measure.py ${HOME}/.detee/bin/sev-snp-measure.py } install_snpguest() { [[ -f "${HOME}/.detee/bin/snpguest" ]] && { echo_yellow "${HOME}/.detee/bin/snpguest already found. Delete the file to reinstall." return } cd ${HOME}/.detee/tmp git clone https://github.com/virtee/snpguest.git cd snpguest git pull cargo build --release cp target/release/snpguest ${HOME}/.detee/bin } install_detee-cli() { cd "${scriptdir}/.." [[ -f "${HOME}/.detee/bin/detee-cli" ]] && { echo_yellow "${HOME}/.detee/bin/detee-cli already found. Delete the file to reinstall." return } cargo build --release cp ./target/release/detee-cli ${HOME}/.detee/bin } install_super-detee-cli() { cd "${scriptdir}/.." [[ -f "${HOME}/.detee/bin/super-detee-cli" ]] && { echo_yellow "${HOME}/.detee/bin/super-detee-cli already found. Delete the file to reinstall." return } cargo build --release --bin super-detee-cli cp ./target/release/super-detee-cli ${HOME}/.detee/bin/ } install_injector() { cd "${scriptdir}" [[ -f "${HOME}/.detee/bin/detee-cli_injector.sh" ]] && { echo_yellow "${HOME}/.detee/bin/detee-cli_injector.sh already found. Delete the file to reinstall." return } cp ./detee-cli_injector.sh ${HOME}/.detee/bin/ } copy_vm_samples() { cd $scriptdir cp -r ../samples "${HOME}/.detee/" } install_fish_completion() { detee-cli completion fish > ${HOME}/.config/fish/completions/detee-cli.fish super-detee-cli completion fish > ${HOME}/.config/fish/completions/super-detee-cli.fish } install_sev-snp-measure install_snpguest install_detee-cli install_super-detee-cli install_injector copy_vm_samples install_fish_completion