fix(linux/postins): allow running on rpm-ostree environments (#4963)
This commit is contained in:
@@ -4,33 +4,26 @@
|
|||||||
echo "Loading uhid kernel module for DS5 emulation."
|
echo "Loading uhid kernel module for DS5 emulation."
|
||||||
modprobe uhid
|
modprobe uhid
|
||||||
|
|
||||||
# Check if we're in an rpm-ostree environment
|
# Ensure Sunshine can grab images from KMS
|
||||||
if [ ! -x "$(command -v rpm-ostree)" ]; then
|
path_to_setcap=$(which setcap)
|
||||||
echo "Not in an rpm-ostree environment, proceeding with post install steps."
|
path_to_sunshine=$(readlink -f "$(which sunshine)")
|
||||||
|
if [ -x "$path_to_setcap" ] ; then
|
||||||
# Ensure Sunshine can grab images from KMS
|
echo "Setting CAP_SYS_ADMIN, CAP_SYS_NICE capabilities on Sunshine binary."
|
||||||
path_to_setcap=$(which setcap)
|
echo "$path_to_setcap cap_sys_admin,cap_sys_nice+p $path_to_sunshine"
|
||||||
path_to_sunshine=$(readlink -f "$(which sunshine)")
|
$path_to_setcap cap_sys_admin,cap_sys_nice+p $path_to_sunshine
|
||||||
if [ -x "$path_to_setcap" ] ; then
|
echo "CAP_SYS_ADMIN, CAP_SYS_NICE capabilities set on Sunshine binary."
|
||||||
echo "Setting CAP_SYS_ADMIN, CAP_SYS_NICE capabilities on Sunshine binary."
|
|
||||||
echo "$path_to_setcap cap_sys_admin,cap_sys_nice+p $path_to_sunshine"
|
|
||||||
$path_to_setcap cap_sys_admin,cap_sys_nice+p $path_to_sunshine
|
|
||||||
echo "CAP_SYS_ADMIN, CAP_SYS_NICE capabilities set on Sunshine binary."
|
|
||||||
else
|
|
||||||
echo "error: setcap not found or not executable."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Trigger udev rule reload for /dev/uinput and /dev/uhid
|
|
||||||
path_to_udevadm=$(which udevadm)
|
|
||||||
if [ -x "$path_to_udevadm" ] ; then
|
|
||||||
echo "Reloading udev rules."
|
|
||||||
$path_to_udevadm control --reload-rules
|
|
||||||
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uinput
|
|
||||||
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uhid
|
|
||||||
echo "Udev rules reloaded successfully."
|
|
||||||
else
|
|
||||||
echo "error: udevadm not found or not executable."
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
echo "rpm-ostree environment detected, skipping post install steps. Restart to apply the changes."
|
echo "error: setcap not found or not executable."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Trigger udev rule reload for /dev/uinput and /dev/uhid
|
||||||
|
path_to_udevadm=$(which udevadm)
|
||||||
|
if [ -x "$path_to_udevadm" ] ; then
|
||||||
|
echo "Reloading udev rules."
|
||||||
|
$path_to_udevadm control --reload-rules
|
||||||
|
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uinput
|
||||||
|
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uhid
|
||||||
|
echo "Udev rules reloaded successfully."
|
||||||
|
else
|
||||||
|
echo "error: udevadm not found or not executable."
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user