ensure_bins.sh (840B)
1 #!/usr/bin/env bash 2 3 set -o errexit 4 set -o pipefail 5 6 get_sops(){ 7 if sops --version > /dev/null 8 then 9 return 10 else 11 echo "SOPS not found in PATH. Downloading..." 12 curl -L -o $HOME/.local/bin/sops https://github.com/getsops/sops/releases/download/v3.8.1/sops-v3.8.1.linux.amd64 13 chmod u+x $HOME/.local/bin/sops 14 fi 15 } 16 17 get_age(){ 18 if age --version > /dev/null 19 then 20 return 21 else 22 echo "AGE not found in PATH. Downloading..." 23 curl -L -o /tmp/age.tar.gz https://github.com/FiloSottile/age/releases/download/v1.1.1/age-v1.1.1-linux-amd64.tar.gz 24 (cd /tmp && tar xf age.tar.gz && cd age && cp age $HOME/.local/bin && cp age-keygen $HOME/.local/bin) 25 fi 26 } 27 28 main (){ 29 mkdir -p $HOME/.local/bin 30 PATH="$PATH:$HOME/.local/bin" 31 get_age 32 get_sops 33 } 34 (main)