#! /bin/bash zip=$1 dir=$(mktemp -d) unzip -qq $zip -d $dir file_count=$(ls "$dir" | wc -l) if [ $file_count = "1" ] && [ -d $(ls -d $dir/*) ]; then dir="$dir/$(ls "$dir")" fi for file in $(ls "$dir"); do if [[ $file =~ \.x86_64 ]]; then chmod +x "$dir/$file" fi if [ -x "$dir/$file" ] && [ -f "$dir/$file" ]; then exe_name="$file" break fi done if [ -n $exe_name ]; then basename="${exe_name%.*}" dest="/opt/$basename" [ -d $dest ] && doas rm -rf "$dest" doas mv -f "$dir" "$dest" doas chmod 755 "$dest" exe=$(echo "$basename" | tr '[:upper:]' '[:lower:]') doas ln -fs "$dest/$exe_name" "/usr/bin/$exe" fi