feat(nvidia): Automatically set needed params for hw accelerated video in Flaptak Firefox on Nvidia hardware

This commit is contained in:
Kyle Gospodnetich 2024-01-01 13:27:02 -08:00
parent 876a398459
commit cc5d25766d

View File

@ -1,14 +1,24 @@
#!/usr/bin/bash
# Script Version
VER=9
# SCRIPT VERSION
VER=10
VER_FILE="/etc/bazzite/flatpak_manager_version"
VER_RAN=$(cat $VER_FILE)
IMAGE_INFO="/usr/share/ublue-os/image-info.json"
IMAGE_FLAVOR=$(jq -r '."image-flavor"' < $IMAGE_INFO)
# IMAGE IDENTIFIERS
KNOWN_IMAGE_FLAVOR_FILE="/etc/bazzite/flatpak_manager_image_flavor"
KNOWN_IMAGE_FLAVOR=$(cat $KNOWN_IMAGE_FLAVOR_FILE)
# Run script if updated
if [[ -f $VER_FILE && $VER = $VER_RAN ]]; then
echo "Flatpak manager v$VER has already ran. Exiting..."
exit 0
if [[ -f $KNOWN_IMAGE_FLAVOR_FILE ]]; then
if [[ $IMAGE_FLAVOR = $KNOWN_IMAGE_FLAVOR ]]; then
echo "Flatpak manager v$VER has already ran. Exiting..."
exit 0
fi
fi
fi
# Opt out of and remove Fedora's flatpak repo
@ -51,5 +61,37 @@ if [[ ! -f $VER_FILE && -f $REMOVE_LIST_FILE ]]; then
fi
fi
# Configure needed params for flatpaks
flatpak override \
--system \
--env=MOZ_ENABLE_WAYLAND=1 \
--env=MOZ_USE_XINPUT2=1 \
org.mozilla.firefox
# Params needed for HW accelerated video on Nvidia
if [[ $IMAGE_FLAVOR =~ "nvidia" ]]; then
flatpak override \
--system \
--filesystem=host-os \
--env=LIBVA_DRIVER_NAME=nvidia \
--env=LIBVA_DRIVERS_PATH=/run/host/usr/lib64/dri \
--env=LIBVA_MESSAGING_LEVEL=1 \
--env=MOZ_DISABLE_RDD_SANDBOX=1 \
--env=NVD_BACKEND=direct \
org.mozilla.firefox
else
# Undo if user was previously using a Nvidia image and is no longer
flatpak override \
--system \
--nofilesystem=host-os \
--unset-env=LIBVA_DRIVER_NAME \
--unset-env=LIBVA_DRIVERS_PATH \
--unset-env=LIBVA_MESSAGING_LEVEL \
--unset-env=MOZ_DISABLE_RDD_SANDBOX \
--unset-env=NVD_BACKEND \
org.mozilla.firefox
fi
mkdir -p /etc/bazzite
echo $VER > $VER_FILE
echo $IMAGE_FLAVOR > $KNOWN_IMAGE_FLAVOR_FILE