parent
71585d0328
commit
f75a5f3651
|
|
@ -154,9 +154,9 @@ Rerun the `breezy_vulkan_setup` script. No need to re-download this script, as i
|
||||||
|
|
||||||
If you wish to completely remove the installation:
|
If you wish to completely remove the installation:
|
||||||
* For **Breezy GNOME**:
|
* For **Breezy GNOME**:
|
||||||
* If you installed *via the setup script* run the following: `~/$XDG_BIN_HOME/breezy_gnome_uninstall` or `~/.local/bin/breezy_gnome_uninstall` if the XDG variable isn't set
|
* If you installed *via the setup script* run the following: `~/.local/bin/breezy_gnome_uninstall`
|
||||||
* If you installed via `yay` run the following: `pacman -R breezy-desktop-gnome-git`, you may also want to uninstall the base driver with `pacman -R xr-driver-breezy-gnome-git`
|
* If you installed via `yay` run the following: `pacman -R breezy-desktop-gnome-git`, you may also want to uninstall the base driver with `pacman -R xr-driver-breezy-gnome-git`
|
||||||
* For **Breezy Vulkan** run the following: `sudo ~/bin/breezy_vulkan_uninstall`. This won't uninstall the base driver package, follow the instructions at the end of the uninstallation to do this manually.
|
* For **Breezy Vulkan** run the following: `~/.local/bin/breezy_vulkan_uninstall`. This won't uninstall the base driver package, follow the instructions at the end of the uninstallation to do this manually.
|
||||||
|
|
||||||
## Data Privacy Notice
|
## Data Privacy Notice
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,9 +13,7 @@ fi
|
||||||
|
|
||||||
start_dir=$(pwd)
|
start_dir=$(pwd)
|
||||||
|
|
||||||
|
|
||||||
ARCH=$(uname -m)
|
ARCH=$(uname -m)
|
||||||
echo "Building for $ARCH"
|
|
||||||
|
|
||||||
# create temp directory
|
# create temp directory
|
||||||
tmp_dir=$(mktemp -d -t breezy-gnome-XXXXXXXXXX)
|
tmp_dir=$(mktemp -d -t breezy-gnome-XXXXXXXXXX)
|
||||||
|
|
|
||||||
|
|
@ -14,17 +14,25 @@ fi
|
||||||
|
|
||||||
start_dir=$(pwd)
|
start_dir=$(pwd)
|
||||||
|
|
||||||
|
ARCH=$(uname -m)
|
||||||
|
if [ "$ARCH" != "x86_64" ]; then
|
||||||
|
echo "Breezy Vulkan only supports x86_64 currently"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# create temp directory
|
# create temp directory
|
||||||
tmp_dir=$(mktemp -d -t breezy-vulkan-XXXXXXXXXX)
|
tmp_dir=$(mktemp -d -t breezy-vulkan-XXXXXXXXXX)
|
||||||
pushd $tmp_dir > /dev/null
|
pushd $tmp_dir > /dev/null
|
||||||
echo "Created temp directory: ${tmp_dir}"
|
echo "Created temp directory: ${tmp_dir}"
|
||||||
|
|
||||||
# if the first argument is "-v" then the second argument is metrics version, and the third argument is binary path
|
binary_download_url="https://github.com/wheaney/breezy-desktop/releases/latest/download/breezyVulkan-$ARCH.tar.gz"
|
||||||
# otherwise, if the first argument is present, it's the binary path
|
|
||||||
if [ "$1" = "-v" ]
|
if [ "$1" = "-v" ]
|
||||||
then
|
then
|
||||||
metrics_version="$2"
|
metrics_version="$2"
|
||||||
binary_path_arg="$3"
|
binary_path_arg="$3"
|
||||||
|
elif [ "$1" = "--tag" ] && [ -n "$2" ]
|
||||||
|
then
|
||||||
|
binary_download_url="https://github.com/wheaney/breezy-desktop/releases/download/$2/breezyVulkan-$ARCH.tar.gz"
|
||||||
else
|
else
|
||||||
binary_path_arg="$1"
|
binary_path_arg="$1"
|
||||||
fi
|
fi
|
||||||
|
|
@ -32,8 +40,9 @@ fi
|
||||||
if [ -z "$binary_path_arg" ]
|
if [ -z "$binary_path_arg" ]
|
||||||
then
|
then
|
||||||
# download and unzip the latest driver
|
# download and unzip the latest driver
|
||||||
echo "Downloading latest release to: ${tmp_dir}/breezyVulkan.tar.gz"
|
echo "Downloading to: ${tmp_dir}/breezyVulkan-$ARCH.tar.gz"
|
||||||
curl -L -O https://github.com/wheaney/breezy-desktop/releases/latest/download/breezyVulkan.tar.gz
|
curl -L -O $binary_download_url
|
||||||
|
binary_path_arg="breezyVulkan-$ARCH.tar.gz"
|
||||||
else
|
else
|
||||||
if [[ "$binary_path_arg" = /* ]]; then
|
if [[ "$binary_path_arg" = /* ]]; then
|
||||||
abs_path="$binary_path_arg"
|
abs_path="$binary_path_arg"
|
||||||
|
|
@ -45,7 +54,7 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Extracting to: ${tmp_dir}/breezy_vulkan"
|
echo "Extracting to: ${tmp_dir}/breezy_vulkan"
|
||||||
tar -xf breezyVulkan.tar.gz
|
tar -xf $(basename $binary_path_arg)
|
||||||
|
|
||||||
pushd breezy_vulkan > /dev/null
|
pushd breezy_vulkan > /dev/null
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,8 +23,8 @@ PACKAGE_DIR=$GNOME_BUILD_DIR/breezy_gnome
|
||||||
rm -rf $PACKAGE_DIR
|
rm -rf $PACKAGE_DIR
|
||||||
mkdir -p $PACKAGE_DIR
|
mkdir -p $PACKAGE_DIR
|
||||||
|
|
||||||
XREAL_DRIVER_DIR=$ROOT_DIR/modules/XRLinuxDriver
|
XR_DRIVER_DIR=$ROOT_DIR/modules/XRLinuxDriver
|
||||||
source $XREAL_DRIVER_DIR/bin/inject_ua
|
source $XR_DRIVER_DIR/bin/inject_ua
|
||||||
|
|
||||||
# if a custom_banner image exists, copy it over the sombrero one
|
# if a custom_banner image exists, copy it over the sombrero one
|
||||||
if [ -e "$VULKAN_DIR/custom_banner.png" ]; then
|
if [ -e "$VULKAN_DIR/custom_banner.png" ]; then
|
||||||
|
|
@ -33,36 +33,37 @@ fi
|
||||||
|
|
||||||
# copy vulkan setup scripts and configs
|
# copy vulkan setup scripts and configs
|
||||||
mkdir -p $PACKAGE_DIR/bin
|
mkdir -p $PACKAGE_DIR/bin
|
||||||
copy_and_inject_ua "$XREAL_DRIVER_DIR/bin/ua.sh" "$PACKAGE_DIR/bin" "$GNOME_DIR/bin/setup" "$GNOME_DIR/bin/breezy_gnome_verify" "$GNOME_DIR/bin/breezy_gnome_uninstall"
|
copy_and_inject_ua "$XR_DRIVER_DIR/bin/ua.sh" "$PACKAGE_DIR/bin" "$GNOME_DIR/bin/setup" "$GNOME_DIR/bin/breezy_gnome_verify" "$GNOME_DIR/bin/breezy_gnome_uninstall"
|
||||||
|
|
||||||
XREAL_BINARY=$XREAL_DRIVER_DIR/out/xrealAirLinuxDriver-$ARCH.tar.gz
|
XR_DRIVER_BINARY=$XR_DRIVER_DIR/out/xrDriver-$ARCH.tar.gz
|
||||||
pushd $XREAL_DRIVER_DIR
|
|
||||||
|
|
||||||
if [ ! -e "$XREAL_BINARY" ] || [ "$1" == "--rebuild-driver" ]; then
|
if [ ! -e "$XR_DRIVER_BINARY" ] || [ "$1" == "--rebuild-driver" ]; then
|
||||||
# if a file exists at custom_banner_config.yml, copy it to the xrealAirLinuxDriver directory
|
# if a file exists at custom_banner_config.yml, copy it to the xrealAirLinuxDriver directory
|
||||||
if [ -e "$VULKAN_DIR/custom_banner_config.yml" ]; then
|
if [ -e "$VULKAN_DIR/custom_banner_config.yml" ]; then
|
||||||
cp $VULKAN_DIR/custom_banner_config.yml $XREAL_DRIVER_DIR
|
cp $VULKAN_DIR/custom_banner_config.yml $XR_DRIVER_DIR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
pushd $XR_DRIVER_DIR
|
||||||
|
|
||||||
# strange issue where the base library produces a .so file if the build is not cleaned
|
# strange issue where the base library produces a .so file if the build is not cleaned
|
||||||
rm -rf build/
|
rm -rf build/
|
||||||
|
|
||||||
docker-build/init.sh
|
docker-build/init.sh
|
||||||
BREEZY_DESKTOP=1 docker-build/run-build.sh $ARCH
|
BREEZY_DESKTOP=1 docker-build/run-build.sh $ARCH
|
||||||
|
popd
|
||||||
fi
|
fi
|
||||||
popd
|
|
||||||
|
|
||||||
TMP_DIR=$(mktemp -d -t breezy-gnome-XXXXXXXXXX)
|
TMP_DIR=$(mktemp -d -t breezy-gnome-XXXXXXXXXX)
|
||||||
pushd $TMP_DIR
|
pushd $TMP_DIR
|
||||||
cp $XREAL_BINARY $TMP_DIR/xrealAirLinuxDriver.tar.gz
|
cp $XR_DRIVER_BINARY $TMP_DIR/xrDriver.tar.gz
|
||||||
tar -xf $TMP_DIR/xrealAirLinuxDriver.tar.gz
|
tar -xf $TMP_DIR/xrDriver.tar.gz
|
||||||
|
|
||||||
XREAL_MANIFEST_LINE=$(sha256sum driver_air_glasses/manifest)
|
XR_DRIVER_MANIFEST_LINE=$(sha256sum xr_driver/manifest)
|
||||||
popd
|
popd
|
||||||
rm -rf $TMP_DIR
|
rm -rf $TMP_DIR
|
||||||
|
|
||||||
cp $XREAL_BINARY $PACKAGE_DIR/xrealAirLinuxDriver.tar.gz
|
cp $XR_DRIVER_BINARY $PACKAGE_DIR/xrDriver.tar.gz
|
||||||
cp $XREAL_DRIVER_DIR/bin/xreal_driver_setup $PACKAGE_DIR/bin
|
cp $XR_DRIVER_DIR/bin/xr_driver_setup $PACKAGE_DIR/bin
|
||||||
|
|
||||||
gnome/bin/package_extension
|
gnome/bin/package_extension
|
||||||
cp gnome/out/breezydesktop@xronlinux.com.shell-extension.zip $PACKAGE_DIR
|
cp gnome/out/breezydesktop@xronlinux.com.shell-extension.zip $PACKAGE_DIR
|
||||||
|
|
@ -78,7 +79,7 @@ cp ui/out/com.xronlinux.BreezyDesktop-$ARCH.flatpak $PACKAGE_DIR/com.xronlinux.B
|
||||||
# create manifest file for verifying installed file checksums against the originally packaged versions
|
# create manifest file for verifying installed file checksums against the originally packaged versions
|
||||||
# include any file that doesn't get modified during setup (e.g. vkBasalt.json files)
|
# include any file that doesn't get modified during setup (e.g. vkBasalt.json files)
|
||||||
pushd $PACKAGE_DIR
|
pushd $PACKAGE_DIR
|
||||||
echo $XREAL_MANIFEST_LINE > manifest
|
echo $XR_DRIVER_MANIFEST_LINE > manifest
|
||||||
echo -e "$GNOME_MANIFEST_LINE breezydesktop@xronlinux.com" >> manifest
|
echo -e "$GNOME_MANIFEST_LINE breezydesktop@xronlinux.com" >> manifest
|
||||||
popd
|
popd
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,27 +3,28 @@
|
||||||
# exit when any command fails
|
# exit when any command fails
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
XREAL_DRIVER_DIR=modules/XRLinuxDriver
|
ARCH=${ARCH:-$(uname -m)}
|
||||||
source $XREAL_DRIVER_DIR/bin/inject_ua
|
echo "Building Breezy Vulkan for $ARCH"
|
||||||
|
|
||||||
# check out submodules, recursively for nested ones
|
XR_DRIVER_DIR=modules/XRLinuxDriver
|
||||||
git submodule update --init --recursive
|
source $XR_DRIVER_DIR/bin/inject_ua
|
||||||
|
|
||||||
VULKAN_DIR=vulkan
|
VULKAN_DIR=vulkan
|
||||||
VULKAN_BUILD=$VULKAN_DIR/build
|
VULKAN_BUILD_DIR=$VULKAN_DIR/build
|
||||||
if [ ! -d "$VULKAN_BUILD" ]; then
|
if [ ! -d "$VULKAN_BUILD_DIR" ]; then
|
||||||
mkdir -p $VULKAN_BUILD
|
mkdir -p $VULKAN_BUILD_DIR
|
||||||
else
|
else
|
||||||
rm -rf $VULKAN_BUILD/*
|
rm -rf $VULKAN_BUILD_DIR/*
|
||||||
fi
|
fi
|
||||||
|
|
||||||
VULKAN_MODULES=$VULKAN_DIR/modules
|
VULKAN_MODULES=$VULKAN_DIR/modules
|
||||||
PACKAGE_DIR=$VULKAN_BUILD/breezy_vulkan
|
PACKAGE_DIR=$VULKAN_BUILD_DIR/breezy_vulkan
|
||||||
if [ ! -d "$PACKAGE_DIR" ]; then
|
if [ ! -d "$PACKAGE_DIR" ]; then
|
||||||
mkdir -p $PACKAGE_DIR
|
mkdir -p $PACKAGE_DIR
|
||||||
else
|
else
|
||||||
rm -rf $PACKAGE_DIR/*
|
rm -rf $PACKAGE_DIR/*
|
||||||
fi
|
fi
|
||||||
|
BUILD_FILE_NAME=breezyVulkan-$ARCH.tar.gz
|
||||||
|
|
||||||
# build vkBasalt
|
# build vkBasalt
|
||||||
VKBASALT_MODULE_DIR=$VULKAN_MODULES/vkBasalt
|
VKBASALT_MODULE_DIR=$VULKAN_MODULES/vkBasalt
|
||||||
|
|
@ -53,41 +54,55 @@ fi
|
||||||
|
|
||||||
# copy vulkan setup scripts and configs
|
# copy vulkan setup scripts and configs
|
||||||
mkdir -p $PACKAGE_DIR/bin
|
mkdir -p $PACKAGE_DIR/bin
|
||||||
copy_and_inject_ua "$XREAL_DRIVER_DIR/bin/ua.sh" "$PACKAGE_DIR/bin" "$VULKAN_DIR/bin/setup" "$VULKAN_DIR/bin/verify_installation" "$VULKAN_DIR/bin/breezy_vulkan_uninstall"
|
copy_and_inject_ua "$XR_DRIVER_DIR/bin/ua.sh" "$PACKAGE_DIR/bin" "$VULKAN_DIR/bin/setup" "$VULKAN_DIR/bin/breezy_vulkan_verify" "$VULKAN_DIR/bin/breezy_vulkan_uninstall"
|
||||||
cp -r $VULKAN_DIR/config $PACKAGE_DIR
|
cp -r $VULKAN_DIR/config $PACKAGE_DIR
|
||||||
|
|
||||||
# build xreal driver
|
# build XR driver
|
||||||
XREAL_BINARY=$XREAL_DRIVER_DIR/build/xrealAirLinuxDriver.tar.gz
|
XR_DRIVER_BINARY=$XR_DRIVER_DIR/out/xrDriver-$ARCH.tar.gz
|
||||||
|
|
||||||
if [ ! -e "$XREAL_BINARY" ] || [ "$1" != "--skip-module-builds" ]; then
|
if [ ! -e "$XR_DRIVER_BINARY" ] || [ "$1" != "--skip-module-builds" ]; then
|
||||||
# if a file exists at custom_banner_config.yml, copy it to the xrealAirLinuxDriver directory
|
# if a file exists at custom_banner_config.yml, copy it to the xrealAirLinuxDriver directory
|
||||||
if [ -e "$VULKAN_DIR/custom_banner_config.yml" ]; then
|
if [ -e "$VULKAN_DIR/custom_banner_config.yml" ]; then
|
||||||
cp $VULKAN_DIR/custom_banner_config.yml $XREAL_DRIVER_DIR
|
cp $VULKAN_DIR/custom_banner_config.yml $XR_DRIVER_DIR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
pushd $XREAL_DRIVER_DIR
|
pushd $XR_DRIVER_DIR
|
||||||
|
|
||||||
# strange issue where the base library produces a .so file if the build is not cleaned
|
# strange issue where the base library produces a .so file if the build is not cleaned
|
||||||
rm -rf build/
|
rm -rf build/
|
||||||
|
|
||||||
bin/package
|
docker-build/init.sh
|
||||||
else
|
docker-build/run-build.sh $ARCH
|
||||||
pushd $XREAL_DRIVER_DIR
|
popd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
XREAL_MANIFEST_LINE=$(sha256sum build/driver_air_glasses/manifest)
|
TMP_DIR=$(mktemp -d -t breezy-vulkan-XXXXXXXXXX)
|
||||||
popd
|
cp $XR_DRIVER_BINARY $TMP_DIR/xrDriver.tar.gz
|
||||||
|
pushd $TMP_DIR
|
||||||
|
tar -xf $TMP_DIR/xrDriver.tar.gz
|
||||||
|
|
||||||
# copy xreal binary and setup script
|
XR_DRIVER_MANIFEST_LINE=$(sha256sum xr_driver/manifest)
|
||||||
cp $XREAL_BINARY $PACKAGE_DIR
|
popd
|
||||||
cp $XREAL_DRIVER_DIR/bin/xreal_driver_setup $PACKAGE_DIR/bin
|
rm -rf $TMP_DIR
|
||||||
|
|
||||||
|
# copy XR driver binary and setup script
|
||||||
|
cp $XR_DRIVER_BINARY $PACKAGE_DIR/xrDriver.tar.gz
|
||||||
|
cp $XR_DRIVER_DIR/bin/xr_driver_setup $PACKAGE_DIR/bin
|
||||||
|
|
||||||
# create manifest file for verifying installed file checksums against the originally packaged versions
|
# create manifest file for verifying installed file checksums against the originally packaged versions
|
||||||
# include any file that doesn't get modified during setup (e.g. vkBasalt.json files)
|
# include any file that doesn't get modified during setup (e.g. vkBasalt.json files)
|
||||||
pushd $PACKAGE_DIR
|
pushd $PACKAGE_DIR
|
||||||
echo $XREAL_MANIFEST_LINE > manifest
|
echo $XR_DRIVER_MANIFEST_LINE > manifest
|
||||||
sha256sum bin/breezy_vulkan_uninstall vkBasalt.64/libvkbasalt.so vkBasalt.32/libvkbasalt.so *.fx* *.png >> manifest
|
sha256sum bin/breezy_vulkan_uninstall vkBasalt.64/libvkbasalt.so vkBasalt.32/libvkbasalt.so *.fx* *.png >> manifest
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# bundle everything up
|
# bundle everything up
|
||||||
tar -zcvf $VULKAN_BUILD/breezyVulkan.tar.gz --directory $VULKAN_BUILD breezy_vulkan
|
pushd $VULKAN_BUILD_DIR
|
||||||
|
tar -zcvf $BUILD_FILE_NAME breezy_vulkan
|
||||||
|
popd
|
||||||
|
|
||||||
|
mkdir -p out
|
||||||
|
if [ -e "out/$BUILD_FILE_NAME" ]; then
|
||||||
|
rm out/$BUILD_FILE_NAME
|
||||||
|
fi
|
||||||
|
cp $VULKAN_BUILD_DIR/$BUILD_FILE_NAME out
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit 21452bcf6a073888186448e247ed8ddca85946aa
|
Subproject commit a0bf7506445d61eb62da7684f361a2435300fad0
|
||||||
|
|
@ -14,31 +14,88 @@ if [ "$(id -u)" != "0" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Get the directory of the current script
|
||||||
|
script_dir=$(dirname "$0")
|
||||||
|
|
||||||
USER=${SUDO_USER:-$USER}
|
USER=${SUDO_USER:-$USER}
|
||||||
|
GROUP=$(id -gn $USER)
|
||||||
USER_HOME=$(getent passwd $USER | cut -d: -f6)
|
USER_HOME=$(getent passwd $USER | cut -d: -f6)
|
||||||
|
|
||||||
|
if [ -z "$XDG_DATA_HOME" ]; then
|
||||||
|
XDG_DATA_HOME="$USER_HOME/.local/share"
|
||||||
|
fi
|
||||||
|
DATA_DIR="$XDG_DATA_HOME/breezy_vulkan"
|
||||||
|
if [ ! -d "$DATA_DIR" ]; then
|
||||||
|
mkdir -p $DATA_DIR
|
||||||
|
fi
|
||||||
|
VULKAN_DATA_DIR="$XDG_DATA_HOME/vulkan"
|
||||||
|
XR_DRIVER_DATA_DIR="$XDG_DATA_HOME/breezy_vulkan"
|
||||||
|
|
||||||
|
if [ -z "$XDG_CONFIG_HOME" ]; then
|
||||||
|
XDG_CONFIG_HOME="$USER_HOME/.config"
|
||||||
|
fi
|
||||||
|
CONFIG_DIR="$XDG_CONFIG_HOME/breezy_vulkan"
|
||||||
|
if [ ! -d "$CONFIG_DIR" ]; then
|
||||||
|
mkdir -p $CONFIG_DIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$XDG_BIN_HOME" ]; then
|
||||||
|
XDG_BIN_HOME="$USER_HOME/.local/bin"
|
||||||
|
fi
|
||||||
|
OLD_BIN_DIR="$USER_HOME/bin"
|
||||||
|
BIN_DIR="$XDG_BIN_HOME"
|
||||||
|
if [ ! -d "$BIN_DIR" ]; then
|
||||||
|
mkdir -p $BIN_DIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$XDG_STATE_HOME" ]; then
|
||||||
|
XDG_STATE_HOME="$USER_HOME/.local/state"
|
||||||
|
fi
|
||||||
|
STATE_DIR="$XDG_STATE_HOME/breezy_vulkan"
|
||||||
|
if [ ! -d "$STATE_DIR" ]; then
|
||||||
|
mkdir -p $STATE_DIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
LIB_DIR="$USER_HOME/.local/lib"
|
||||||
|
if [ ! -d "$LIB_DIR" ]; then
|
||||||
|
mkdir -p "$LIB_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LIB32_DIR="$USER_HOME/.local/lib32"
|
||||||
|
if [ ! -d "$LIB32_DIR" ]; then
|
||||||
|
mkdir -p "$LIB32_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$for_install" -eq 0 ]; then
|
if [ "$for_install" -eq 0 ]; then
|
||||||
UA_EVENT_NAME="breezy_uninstall"
|
UA_EVENT_NAME="breezy_uninstall"
|
||||||
UA_CLIENT_ID="BreezyVulkan"
|
UA_CLIENT_ID="BreezyVulkan"
|
||||||
#INJECT_UA_CALL
|
#INJECT_UA_CALL
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ "$for_install" -eq 0 ] && echo "Removing vkBasalt binaries from $USER_HOME/.local/lib[32]/"
|
[ "$for_install" -eq 0 ] && echo "Removing vkBasalt binaries from $LIB_DIR[32]/"
|
||||||
rm $USER_HOME/.local/lib/libvkbasalt.so
|
rm $LIB_DIR/libvkbasalt.so
|
||||||
rm $USER_HOME/.local/lib32/libvkbasalt.so
|
rm $LIB32_DIR/libvkbasalt.so
|
||||||
|
|
||||||
[ "$for_install" -eq 0 ] && echo "Removing vkBasalt vulkan layer configs from $USER_HOME/.local/share/vulkan/implicit_layer.d/"
|
[ "$for_install" -eq 0 ] && echo "Removing vkBasalt vulkan layer configs from $VULKAN_DATA_DIR/implicit_layer.d/"
|
||||||
rm $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.json
|
rm $VULKAN_DATA_DIR/implicit_layer.d/vkBasalt.json
|
||||||
rm $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.x86.json
|
rm $VULKAN_DATA_DIR/implicit_layer.d/vkBasalt.x86.json
|
||||||
|
|
||||||
[ "$for_install" -eq 0 ] && echo "Removing vkBasalt and reshade directories at $USER_HOME/.config/"
|
[ "$for_install" -eq 0 ] && echo "Removing vkBasalt and reshade directories at $CONFIG_DIR/"
|
||||||
rm -rf $USER_HOME/.config/vkBasalt
|
rm -rf $CONFIG_DIR/vkBasalt
|
||||||
rm -rf $USER_HOME/.config/reshade
|
rm -rf $CONFIG_DIR/reshade
|
||||||
|
|
||||||
[ "$for_install" -eq 0 ] && echo "Removing scripts at $USER_HOME/.local/bin/breezy_vulkan"
|
[ "$for_install" -eq 0 ] && echo "Removing scripts at $BIN_DIR"
|
||||||
rm -rf $USER_HOME/.local/bin/breezy_vulkan
|
rm -f $BIN_DIR/breezy_vulkan_verify
|
||||||
|
|
||||||
[ "$for_install" -eq 0 ] && echo "SKIPPING xrealAirLinuxDriver uninstall to keep mouse/joystick driver functionality."
|
[ "$for_install" -eq 0 ] && echo "SKIPPING xrDriver uninstall to keep mouse/joystick driver functionality."
|
||||||
[ "$for_install" -eq 0 ] && echo "To manually uninstall xrealAirLinuxDriver, do: \"sudo ~/bin/xreal_driver_uninstall\""
|
[ "$for_install" -eq 0 ] && echo "To manually uninstall xrDriver, do: \"sudo xr_driver_uninstall\""
|
||||||
|
|
||||||
# this script is self-deleting, leave this as the last command
|
# this script is self-deleting, leave this as the last command
|
||||||
rm -f $USER_HOME/bin/breezy_vulkan_uninstall
|
# remove the one we're not using first
|
||||||
|
if [ "$script_dir" = "$OLD_BIN_DIR" ]; then
|
||||||
|
rm -f "$BIN_DIR/breezy_vulkan_uninstall"
|
||||||
|
rm -f "$OLD_BIN_DIR/breezy_vulkan_uninstall"
|
||||||
|
else
|
||||||
|
rm -f "$OLD_BIN_DIR/breezy_vulkan_uninstall"
|
||||||
|
rm -f "$BIN_DIR/breezy_vulkan_uninstall"
|
||||||
|
fi
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# create a string to string mapping, file name to expected file location
|
||||||
|
declare -A file_paths
|
||||||
|
file_paths=(
|
||||||
|
["bin/breezy_vulkan_uninstall"]="{bin_dir}/breezy_vulkan_uninstall"
|
||||||
|
["vkBasalt.64/libvkbasalt.so"]="{lib_dir}/libvkbasalt.so"
|
||||||
|
["vkBasalt.32/libvkbasalt.so"]="{lib32_dir}/libvkbasalt.so"
|
||||||
|
["IMUAdjust.fx"]="{reshade_config_dir}/Shaders/IMUAdjust.fx"
|
||||||
|
["ReShade.fxh"]="{reshade_config_dir}/Shaders/ReShade.fxh"
|
||||||
|
["ReShadeUI.fxh"]="{reshade_config_dir}/Shaders/ReShadeUI.fxh"
|
||||||
|
["Sideview.fx"]="{reshade_config_dir}/Shaders/Sideview.fx"
|
||||||
|
["calibrating.png"]="{reshade_config_dir}/Textures/calibrating.png"
|
||||||
|
["custom_banner.png"]="{reshade_config_dir}/Textures/custom_banner.png"
|
||||||
|
["xr_driver/manifest"]="{xr_driver_data_dir}/manifest"
|
||||||
|
)
|
||||||
|
|
||||||
|
# verify the file hashes in ./manifest
|
||||||
|
while IFS= read -r line
|
||||||
|
do
|
||||||
|
# split the line into hash and filename
|
||||||
|
manifest_hash=$(echo $line | awk '{print $1}')
|
||||||
|
file=$(echo $line | awk '{print $2}')
|
||||||
|
|
||||||
|
actual_file_path=${file_paths[$file]}
|
||||||
|
|
||||||
|
# compute the SHA256 hash of the actual file
|
||||||
|
actual_hash=$(sha256sum $actual_file_path | awk '{print $1}')
|
||||||
|
|
||||||
|
# compare the hashes
|
||||||
|
if ! [ "$manifest_hash" = "$actual_hash" ]; then
|
||||||
|
echo "Verification failed" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done < "{data_dir}/manifest"
|
||||||
|
|
||||||
|
# if our checks succeeded, run the xr_driver verify script
|
||||||
|
{bin_dir}/xr_driver_verify > /dev/null
|
||||||
|
|
||||||
|
echo "Verification succeeded"
|
||||||
152
vulkan/bin/setup
152
vulkan/bin/setup
|
|
@ -6,8 +6,53 @@ set -e
|
||||||
# to a specific release of the code, and guarantees it will never run along-side newer or older binaries.
|
# to a specific release of the code, and guarantees it will never run along-side newer or older binaries.
|
||||||
|
|
||||||
USER=${SUDO_USER:-$USER}
|
USER=${SUDO_USER:-$USER}
|
||||||
|
GROUP=$(id -gn $USER)
|
||||||
USER_HOME=$(getent passwd $USER | cut -d: -f6)
|
USER_HOME=$(getent passwd $USER | cut -d: -f6)
|
||||||
UA_EVENT_NAME="breezy_install"
|
UA_EVENT_NAME="breezy_install"
|
||||||
|
|
||||||
|
if [ -z "$XDG_DATA_HOME" ]; then
|
||||||
|
XDG_DATA_HOME="$USER_HOME/.local/share"
|
||||||
|
fi
|
||||||
|
DATA_DIR="$XDG_DATA_HOME/breezy_vulkan"
|
||||||
|
if [ ! -d "$DATA_DIR" ]; then
|
||||||
|
mkdir -p $DATA_DIR
|
||||||
|
fi
|
||||||
|
VULKAN_DATA_DIR="$XDG_DATA_HOME/vulkan"
|
||||||
|
XR_DRIVER_DATA_DIR="$XDG_DATA_HOME/xr_driver"
|
||||||
|
|
||||||
|
if [ -z "$XDG_CONFIG_HOME" ]; then
|
||||||
|
XDG_CONFIG_HOME="$USER_HOME/.config"
|
||||||
|
fi
|
||||||
|
RESHADE_CONFIG_DIR="$XDG_CONFIG_HOME/reshade"
|
||||||
|
VKBASALT_CONFIG_DIR="$XDG_CONFIG_HOME/vkBasalt"
|
||||||
|
|
||||||
|
if [ -z "$XDG_BIN_HOME" ]; then
|
||||||
|
XDG_BIN_HOME="$USER_HOME/.local/bin"
|
||||||
|
fi
|
||||||
|
OLD_BIN_DIR="$USER_HOME/bin"
|
||||||
|
BIN_DIR="$XDG_BIN_HOME"
|
||||||
|
if [ ! -d "$BIN_DIR" ]; then
|
||||||
|
mkdir -p $BIN_DIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$XDG_STATE_HOME" ]; then
|
||||||
|
XDG_STATE_HOME="$USER_HOME/.local/state"
|
||||||
|
fi
|
||||||
|
STATE_DIR="$XDG_STATE_HOME/breezy_vulkan"
|
||||||
|
if [ ! -d "$STATE_DIR" ]; then
|
||||||
|
mkdir -p $STATE_DIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
LIB_DIR="$USER_HOME/.local/lib"
|
||||||
|
if [ ! -d "$LIB_DIR" ]; then
|
||||||
|
mkdir -p "$LIB_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LIB32_DIR="$USER_HOME/.local/lib32"
|
||||||
|
if [ ! -d "$LIB32_DIR" ]; then
|
||||||
|
mkdir -p "$LIB32_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -e "$USER_HOME/bin/breezy_vulkan_uninstall" ]; then
|
if [ -e "$USER_HOME/bin/breezy_vulkan_uninstall" ]; then
|
||||||
echo "Cleaning up the previous installation"
|
echo "Cleaning up the previous installation"
|
||||||
|
|
||||||
|
|
@ -17,68 +62,93 @@ if [ -e "$USER_HOME/bin/breezy_vulkan_uninstall" ]; then
|
||||||
UA_EVENT_NAME="breezy_update"
|
UA_EVENT_NAME="breezy_update"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -e "$BIN_DIR/breezy_vulkan_uninstall" ]; then
|
||||||
|
echo "Cleaning up the previous installation"
|
||||||
|
|
||||||
|
# ` || true` will ensure that this can't cause a failure, even with `set -e`
|
||||||
|
$BIN_DIR/breezy_vulkan_uninstall --for-install || true
|
||||||
|
|
||||||
|
UA_EVENT_NAME="breezy_update"
|
||||||
|
fi
|
||||||
|
|
||||||
UA_CLIENT_ID="BreezyVulkan"
|
UA_CLIENT_ID="BreezyVulkan"
|
||||||
UA_EVENT_VERSION="$1"
|
UA_EVENT_VERSION="$1"
|
||||||
#INJECT_UA_CALL
|
#INJECT_UA_CALL
|
||||||
|
|
||||||
echo "Copying the breezy_vulkan scripts to ${USER_HOME}/bin"
|
|
||||||
if [ ! -d "$USER_HOME/bin" ]; then
|
|
||||||
su -c 'mkdir -p '$USER_HOME'/bin' $USER
|
|
||||||
fi
|
|
||||||
cp bin/breezy_vulkan_uninstall $USER_HOME/bin
|
|
||||||
|
|
||||||
echo "Installing vkBasalt; copying binaries, configs, and shader files to ${USER_HOME}/.local and ${USER_HOME}/.config"
|
# escaping sed replace: https://stackoverflow.com/questions/407523/escape-a-string-for-a-sed-replace-pattern
|
||||||
|
ESCAPED_BIN_DIR=$(printf '%s\n' "$BIN_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
ESCAPED_LIB_DIR=$(printf '%s\n' "$LIB_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
ESCAPED_LIB32_DIR=$(printf '%s\n' "$LIB32_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
ESCAPED_RESHADE_CONFIG_DIR=$(printf '%s\n' "$RESHADE_CONFIG_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
ESCAPED_STATE_DIR=$(printf '%s\n' "$STATE_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
ESCAPED_DATA_DIR=$(printf '%s\n' "$DATA_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
ESCAPED_XR_DRIVER_DATA_DIR=$(printf '%s\n' "$XR_DRIVER_DATA_DIR" | sed -e 's/[\/&]/\\&/g')
|
||||||
|
|
||||||
|
echo "Copying the breezy_vulkan scripts to ${BIN_DIR} and related files to ${DATA_DIR}"
|
||||||
|
cp bin/breezy_vulkan_uninstall $BIN_DIR
|
||||||
|
sed -i -e "s/{bin_dir}/$ESCAPED_BIN_DIR/g" \
|
||||||
|
-e "s/{lib_dir}/$ESCAPED_LIB_DIR/g" \
|
||||||
|
-e "s/{lib32_dir}/$ESCAPED_LIB32_DIR/g" \
|
||||||
|
-e "s/{reshade_config_dir}/$ESCAPED_RESHADE_CONFIG_DIR/g" \
|
||||||
|
-e "s/{state_dir}/$ESCAPED_STATE_DIR/g" \
|
||||||
|
-e "s/{data_dir}/$ESCAPED_DATA_DIR/g" \
|
||||||
|
-e "s/{xr_driver_data_dir}/$ESCAPED_XR_DRIVER_DATA_DIR/g" \
|
||||||
|
bin/breezy_vulkan_verify
|
||||||
|
cp bin/breezy_vulkan_verify $BIN_DIR
|
||||||
|
cp manifest $DATA_DIR
|
||||||
|
|
||||||
|
# keep putting this in the old location in case an older version of the script tries to find it
|
||||||
|
cp bin/breezy_vulkan_uninstall $OLD_BIN_DIR
|
||||||
|
|
||||||
|
echo "Installing vkBasalt; copying binaries, configs, and shader files"
|
||||||
|
|
||||||
# much of the setup below was informed by https://github.com/simons-public/steam-deck-vkbasalt-install
|
# much of the setup below was informed by https://github.com/simons-public/steam-deck-vkbasalt-install
|
||||||
# copy the vkBasalt binaries and configs
|
# copy the vkBasalt binaries and configs
|
||||||
su -c 'mkdir -p '$USER_HOME'/.local/{lib,lib32,share/vulkan/implicit_layer.d}' $USER
|
mkdir -p "$VULKAN_DATA_DIR"/implicit_layer.d
|
||||||
su -c 'mkdir -p '$USER_HOME'/.config/{vkBasalt,reshade/Shaders,reshade/Textures}' $USER
|
mkdir -p "$XDG_CONFIG_HOME"/{vkBasalt,reshade/Shaders,reshade/Textures}
|
||||||
cp vkBasalt.64/libvkbasalt.so $USER_HOME/.local/lib/
|
cp vkBasalt.64/libvkbasalt.so $LIB_DIR/
|
||||||
cp vkBasalt.32/libvkbasalt.so $USER_HOME/.local/lib32/
|
cp vkBasalt.32/libvkbasalt.so $LIB32_DIR/
|
||||||
chown $USER:$USER $USER_HOME/.local/lib/libvkbasalt.so
|
|
||||||
chown $USER:$USER $USER_HOME/.local/lib32/libvkbasalt.so
|
|
||||||
|
|
||||||
# there is only one vkBasalt.json file, use the 64-bit directory for both, copy and make replacements
|
# there is only one vkBasalt.json file, use the 64-bit directory for both, copy and make replacements
|
||||||
if grep -q SteamOS /etc/os-release ; then
|
if grep -q SteamOS /etc/os-release ; then
|
||||||
sed -e "s|libvkbasalt.so|${USER_HOME}/.local/lib/libvkbasalt.so|" -e "s/ENABLE_VKBASALT/SteamDeck/" vkBasalt.64/vkBasalt.json > $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.json
|
sed -e "s|libvkbasalt.so|${LIB_DIR}/libvkbasalt.so|" -e "s/ENABLE_VKBASALT/SteamDeck/" vkBasalt.64/vkBasalt.json > $VULKAN_DATA_DIR/implicit_layer.d/vkBasalt.json
|
||||||
sed -e "s|libvkbasalt.so|${USER_HOME}/.local/lib32/libvkbasalt.so|" -e "s/ENABLE_VKBASALT/SteamDeck/" vkBasalt.64/vkBasalt.json > $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.x86.json
|
sed -e "s|libvkbasalt.so|${LIB32_DIR}/libvkbasalt.so|" -e "s/ENABLE_VKBASALT/SteamDeck/" vkBasalt.64/vkBasalt.json > $VULKAN_DATA_DIR/implicit_layer.d/vkBasalt.x86.json
|
||||||
else
|
else
|
||||||
sed -e "s|libvkbasalt.so|${USER_HOME}/.local/lib/libvkbasalt.so|" vkBasalt.64/vkBasalt.json > $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.json
|
sed -e "s|libvkbasalt.so|${LIB_DIR}/libvkbasalt.so|" vkBasalt.64/vkBasalt.json > $VULKAN_DATA_DIR/implicit_layer.d/vkBasalt.json
|
||||||
sed -e "s|libvkbasalt.so|${USER_HOME}/.local/lib32/libvkbasalt.so|" vkBasalt.64/vkBasalt.json > $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.x86.json
|
sed -e "s|libvkbasalt.so|${LIB32_DIR}/libvkbasalt.so|" vkBasalt.64/vkBasalt.json > $VULKAN_DATA_DIR/implicit_layer.d/vkBasalt.x86.json
|
||||||
fi
|
fi
|
||||||
chown $USER:$USER $USER_HOME/.local/share/vulkan/implicit_layer.d/vkBasalt.*
|
|
||||||
|
|
||||||
# copy the vkBasalt.conf file and make replacements
|
# copy the vkBasalt.conf file and make replacements
|
||||||
sed -e "s|/path/to/reshade-shaders|${USER_HOME}/.config/reshade|" \
|
sed -e "s|/path/to/reshade-shaders|${RESHADE_CONFIG_DIR}|" \
|
||||||
-e "s|/path/to/virtual_display|${USER_HOME}/.config/reshade/Shaders/IMUAdjust.fx|" \
|
-e "s|/path/to/virtual_display|${RESHADE_CONFIG_DIR}/Shaders/IMUAdjust.fx|" \
|
||||||
-e "s|/path/to/sideview|${USER_HOME}/.config/reshade/Shaders/Sideview.fx|" \
|
-e "s|/path/to/sideview|${RESHADE_CONFIG_DIR}/Shaders/Sideview.fx|" \
|
||||||
config/vkBasalt.conf > $USER_HOME/.config/vkBasalt/vkBasalt.conf
|
config/vkBasalt.conf > $VKBASALT_CONFIG_DIR/vkBasalt.conf
|
||||||
chown -R $USER:$USER $USER_HOME/.config/vkBasalt
|
|
||||||
|
|
||||||
echo "Installing the Sombrero shaders and texture files to ${USER_HOME}/.config/reshade/{Shaders,Textures}"
|
echo "Installing the Sombrero shaders and texture files to ${RESHADE_CONFIG_DIR}/{Shaders,Textures}"
|
||||||
cp *.fx* $USER_HOME/.config/reshade/Shaders
|
cp *.fx* $RESHADE_CONFIG_DIR/Shaders
|
||||||
cp *.png $USER_HOME/.config/reshade/Textures
|
cp *.png $RESHADE_CONFIG_DIR/Textures
|
||||||
chown -R $USER:$USER $USER_HOME/.config/reshade
|
|
||||||
|
|
||||||
# escaping sed replace: https://stackoverflow.com/questions/407523/escape-a-string-for-a-sed-replace-pattern
|
chown -R $USER:$GROUP $LIB_DIR
|
||||||
ESCAPED_USER_HOME=$(printf '%s\n' "$USER_HOME" | sed -e 's/[\/&]/\\&/g')
|
chown -R $USER:$GROUP $LIB32_DIR
|
||||||
|
chown -R $USER:$GROUP $DATA_DIR
|
||||||
|
chown -R $USER:$GROUP $VULKAN_DATA_DIR
|
||||||
|
chown -R $USER:$GROUP $RESHADE_CONFIG_DIR
|
||||||
|
chown -R $USER:$GROUP $VKBASALT_CONFIG_DIR
|
||||||
|
chown -R $USER:$GROUP $STATE_DIR
|
||||||
|
chown -R $USER:$GROUP $BIN_DIR/breezy_vulkan_*
|
||||||
|
|
||||||
echo "Copying the verification script and manifest to ${USER_HOME}/.local/bin/breezy_vulkan"
|
# clear bash's cache of executable locations, so it can find the newly installed scripts
|
||||||
sed -i -e "s/{user_home}/$ESCAPED_USER_HOME/g" bin/verify_installation
|
hash -r
|
||||||
if [ ! -d "$USER_HOME/.local/bin/breezy_vulkan" ]; then
|
|
||||||
mkdir -p $USER_HOME/.local/bin/breezy_vulkan
|
|
||||||
fi
|
|
||||||
cp -p bin/verify_installation $USER_HOME/.local/bin/breezy_vulkan
|
|
||||||
cp manifest $USER_HOME/.local/bin/breezy_vulkan
|
|
||||||
|
|
||||||
# set up the XREAL driver using the local binary
|
# set up the XR driver using the local binary
|
||||||
echo "Installing xrealAirLinuxDriver"
|
echo "Installing xrDriver"
|
||||||
echo "BEGIN - xreal_driver_setup"
|
echo "BEGIN - xr_driver_setup"
|
||||||
if [ -z "$1" ]
|
if [ -z "$1" ]
|
||||||
then
|
then
|
||||||
bin/xreal_driver_setup $(pwd)/xrealAirLinuxDriver.tar.gz
|
bin/xr_driver_setup $(pwd)/xrDriver.tar.gz
|
||||||
else
|
else
|
||||||
bin/xreal_driver_setup -v $1 $(pwd)/xrealAirLinuxDriver.tar.gz
|
bin/xr_driver_setup -v $1 $(pwd)/xrDriver.tar.gz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "END - xreal_driver_setup"
|
echo "END - xr_driver_setup"
|
||||||
|
|
@ -1,42 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# create a string to string mapping, file name to expected file location
|
|
||||||
declare -A file_paths
|
|
||||||
file_paths=(
|
|
||||||
["bin/breezy_vulkan_uninstall"]="{user_home}/bin/breezy_vulkan_uninstall"
|
|
||||||
["vkBasalt.64/libvkbasalt.so"]="{user_home}/.local/lib/libvkbasalt.so"
|
|
||||||
["vkBasalt.32/libvkbasalt.so"]="{user_home}/.local/lib32/libvkbasalt.so"
|
|
||||||
["IMUAdjust.fx"]="{user_home}/.config/reshade/Shaders/IMUAdjust.fx"
|
|
||||||
["ReShade.fxh"]="{user_home}/.config/reshade/Shaders/ReShade.fxh"
|
|
||||||
["ReShadeUI.fxh"]="{user_home}/.config/reshade/Shaders/ReShadeUI.fxh"
|
|
||||||
["Sideview.fx"]="{user_home}/.config/reshade/Shaders/Sideview.fx"
|
|
||||||
["calibrating.png"]="{user_home}/.config/reshade/Textures/calibrating.png"
|
|
||||||
["custom_banner.png"]="{user_home}/.config/reshade/Textures/custom_banner.png"
|
|
||||||
["build/driver_air_glasses/manifest"]="{user_home}/.local/bin/xr_driver/manifest"
|
|
||||||
)
|
|
||||||
|
|
||||||
# verify the file hashes in ./manifest
|
|
||||||
while IFS= read -r line
|
|
||||||
do
|
|
||||||
# split the line into hash and filename
|
|
||||||
manifest_hash=$(echo $line | awk '{print $1}')
|
|
||||||
file=$(echo $line | awk '{print $2}')
|
|
||||||
|
|
||||||
actual_file_path=${file_paths[$file]}
|
|
||||||
|
|
||||||
# compute the SHA256 hash of the actual file
|
|
||||||
actual_hash=$(sha256sum $actual_file_path | awk '{print $1}')
|
|
||||||
|
|
||||||
# compare the hashes
|
|
||||||
if ! [ "$manifest_hash" = "$actual_hash" ]; then
|
|
||||||
echo "Verification failed" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
done < "{user_home}/.local/bin/breezy_vulkan/manifest"
|
|
||||||
|
|
||||||
# if our checks succeeded, run the xr_driver verify script
|
|
||||||
{user_home}/.local/bin/xr_driver/verify_installation > /dev/null
|
|
||||||
|
|
||||||
echo "Verification succeeded"
|
|
||||||
Loading…
Reference in New Issue