mirror of
https://github.com/PancakeTAS/lsfg-vk.git
synced 2025-10-30 07:01:10 +00:00
update installation script
This commit is contained in:
parent
0d19e15834
commit
f998647d74
1 changed files with 40 additions and 8 deletions
48
install.sh
48
install.sh
|
|
@ -3,13 +3,34 @@
|
|||
: "${INSTALL_PATH:=$HOME/.local}"
|
||||
BASE_URL='https://pancake.gay/lsfg-vk'
|
||||
|
||||
# prompt for distro
|
||||
echo "Which version would you like to install?"
|
||||
echo "1) Arch Linux (Artix Linux, CachyOS, Steam Deck, etc.)"
|
||||
echo "2) Debian"
|
||||
echo "3) Ubuntu"
|
||||
echo "4) Fedora"
|
||||
printf "Enter the number (1-4): "
|
||||
read -r version_choice < /dev/tty
|
||||
|
||||
case "$version_choice" in
|
||||
1) DISTRO="archlinux"; DISTRO_PRETTY="Arch Linux" ;;
|
||||
2) DISTRO="debian"; DISTRO_PRETTY="Debian" ;;
|
||||
3) DISTRO="ubuntu"; DISTRO_PRETTY="Ubuntu" ;;
|
||||
4) DISTRO="fedora"; DISTRO_PRETTY="Fedora" ;;
|
||||
*) echo "Invalid choice."; exit 1 ;;
|
||||
esac
|
||||
|
||||
ZIP_NAME="lsfg-vk_${DISTRO}.zip"
|
||||
SHA_NAME="lsfg-vk_${DISTRO}.zip.sha"
|
||||
SHA_FILE="$INSTALL_PATH/share/lsfg-vk.sha"
|
||||
|
||||
# get local and remote versions
|
||||
REMOTE_HASH=$(curl -fsSL "$BASE_URL/lsfg-vk.zip.sha")
|
||||
LOCAL_HASH=$(test -f "$INSTALL_PATH/share/lsfg-vk.sha" && cat "$INSTALL_PATH/share/lsfg-vk.sha")
|
||||
REMOTE_HASH=$(curl -fsSL "$BASE_URL/$SHA_NAME")
|
||||
LOCAL_HASH=$(test -f "$SHA_FILE" && cat "$SHA_FILE")
|
||||
|
||||
if [ "$REMOTE_HASH" != "$LOCAL_HASH" ]; then
|
||||
# prompt user for confirmation
|
||||
echo -n "Do you wish to install the latest version of lsfg-vk? (y/n) "
|
||||
echo -n "Are you sure you want to install lsfg-vk for ${DISTRO_PRETTY}? (y/n) "
|
||||
read -r answer < /dev/tty
|
||||
|
||||
if [ "$answer" != "y" ]; then
|
||||
|
|
@ -18,7 +39,7 @@ if [ "$REMOTE_HASH" != "$LOCAL_HASH" ]; then
|
|||
fi
|
||||
|
||||
# download lsfg-vk
|
||||
curl -fsSL -o "/tmp/lsfg-vk.zip" "$BASE_URL/lsfg-vk.zip"
|
||||
curl -fsSL -o "/tmp/$ZIP_NAME" "$BASE_URL/$ZIP_NAME"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failed to download lsfg-vk. Please check your internet connection."
|
||||
exit 1
|
||||
|
|
@ -26,10 +47,21 @@ if [ "$REMOTE_HASH" != "$LOCAL_HASH" ]; then
|
|||
|
||||
# install lsfg-vk
|
||||
cd "$INSTALL_PATH" || exit 1
|
||||
unzip -oqq "/tmp/lsfg-vk.zip"
|
||||
echo "$REMOTE_HASH" > share/lsfg-vk.sha
|
||||
unzip -o "/tmp/$ZIP_NAME"
|
||||
echo "$REMOTE_HASH" > "$SHA_FILE"
|
||||
rm -v "/tmp/$ZIP_NAME"
|
||||
|
||||
echo "lsfg-vk has been installed."
|
||||
echo "lsfg-vk for ${DISTRO_PRETTY} has been installed."
|
||||
else
|
||||
echo "lsfg-vk is already up to date."
|
||||
echo "lsfg-vk is up to date."
|
||||
|
||||
# offer to uninstall
|
||||
echo -n "Do you want to uninstall lsfg-vk? (y/n) "
|
||||
read -r uninstall_answer < /dev/tty
|
||||
if [ "$uninstall_answer" = "y" ]; then
|
||||
rm -v ~/.local/lib/liblsfg-vk.so
|
||||
rm -v ~/.local/share/vulkan/implicit_layer.d/VkLayer_LS_frame_generation.json
|
||||
rm -v "$SHA_FILE"
|
||||
echo "Uninstallation completed."
|
||||
fi
|
||||
fi
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue