build(fedora): fix version variables and skip post on rpm-ostree (#3265)
This commit is contained in:
7
.github/workflows/ci-copr.yml
vendored
7
.github/workflows/ci-copr.yml
vendored
@@ -29,6 +29,8 @@ jobs:
|
|||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Get properties
|
- name: Get properties
|
||||||
|
env:
|
||||||
|
COPR_PR_WH_KEY: "05fc9b07-a19b-4f83-89b2-ae1e7e0b5282"
|
||||||
run: |
|
run: |
|
||||||
# package name = repository name
|
# package name = repository name
|
||||||
package=${{ github.event.repository.name }}
|
package=${{ github.event.repository.name }}
|
||||||
@@ -42,12 +44,15 @@ jobs:
|
|||||||
COPR_PUSH_WEBHOOK="${copr_base}/stable/${{ secrets.COPR_STABLE_WEBHOOK_TOKEN }}/${package}/"
|
COPR_PUSH_WEBHOOK="${copr_base}/stable/${{ secrets.COPR_STABLE_WEBHOOK_TOKEN }}/${package}/"
|
||||||
fi
|
fi
|
||||||
elif [ "${{ github.event_name }}" = "pull_request" ]; then
|
elif [ "${{ github.event_name }}" = "pull_request" ]; then
|
||||||
COPR_PR_WEBHOOK="${copr_base}/pulls:pr:${{github.event.number}}/${{vars.COPR_PR_WEBHOOK_TOKEN}}/${package}/"
|
COPR_PR_WEBHOOK="${copr_base}/pulls:pr:${{github.event.number}}/${{env.COPR_PR_WH_KEY}}/${package}/"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "COPR_PUSH_WEBHOOK=${COPR_PUSH_WEBHOOK}" >> $GITHUB_ENV
|
echo "COPR_PUSH_WEBHOOK=${COPR_PUSH_WEBHOOK}" >> $GITHUB_ENV
|
||||||
echo "COPR_PR_WEBHOOK=${COPR_PR_WEBHOOK}" >> $GITHUB_ENV
|
echo "COPR_PR_WEBHOOK=${COPR_PR_WEBHOOK}" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
echo "COPR_PUSH_WEBHOOK=${COPR_PUSH_WEBHOOK}"
|
||||||
|
echo "COPR_PR_WEBHOOK=${COPR_PR_WEBHOOK}"
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
curl https://raw.githubusercontent.com/praiskup/copr-ci-tooling/main/copr-gh-actions-submit > submit
|
curl https://raw.githubusercontent.com/praiskup/copr-ci-tooling/main/copr-gh-actions-submit > submit
|
||||||
|
|||||||
@@ -147,7 +147,12 @@ function install_cuda() {
|
|||||||
|
|
||||||
local url="${cuda_prefix}${cuda_version}/local_installers/cuda_${cuda_version}_${cuda_build}_linux${cuda_suffix}.run"
|
local url="${cuda_prefix}${cuda_version}/local_installers/cuda_${cuda_version}_${cuda_build}_linux${cuda_suffix}.run"
|
||||||
echo "cuda url: ${url}"
|
echo "cuda url: ${url}"
|
||||||
wget "$url" --progress=bar:force:noscroll -q -O "%{_builddir}/cuda.run"
|
wget \
|
||||||
|
"$url" \
|
||||||
|
--progress=bar:force:noscroll \
|
||||||
|
--retry-connrefused \
|
||||||
|
--tries=3 \
|
||||||
|
-q -O "%{_builddir}/cuda.run"
|
||||||
chmod a+x "%{_builddir}/cuda.run"
|
chmod a+x "%{_builddir}/cuda.run"
|
||||||
"%{_builddir}/cuda.run" \
|
"%{_builddir}/cuda.run" \
|
||||||
--no-drm \
|
--no-drm \
|
||||||
@@ -173,6 +178,11 @@ if [ -n "$cuda_version" ] && [[ " ${cuda_supported_architectures[@]} " =~ " ${ar
|
|||||||
cmake_args+=("-DCMAKE_CUDA_COMPILER:PATH=%{_builddir}/cuda/bin/nvcc")
|
cmake_args+=("-DCMAKE_CUDA_COMPILER:PATH=%{_builddir}/cuda/bin/nvcc")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# setup the version
|
||||||
|
export BRANCH=%{branch}
|
||||||
|
export BUILD_VERSION=v%{build_version}
|
||||||
|
export COMMIT=%{commit}
|
||||||
|
|
||||||
# cmake
|
# cmake
|
||||||
cd %{_builddir}/Sunshine
|
cd %{_builddir}/Sunshine
|
||||||
echo "cmake args:"
|
echo "cmake args:"
|
||||||
@@ -198,12 +208,23 @@ EOF
|
|||||||
|
|
||||||
%post
|
%post
|
||||||
# Note: this is copied from the postinst script
|
# Note: this is copied from the postinst script
|
||||||
# Trigger udev rule reload for /dev/uinput and /dev/uhid
|
# Check if we're in an rpm-ostree environment
|
||||||
path_to_udevadm=$(which udevadm)
|
if [ ! -x "$(command -v rpm-ostree)" ]; then
|
||||||
if [ -x "$path_to_udevadm" ] ; then
|
echo "Not in an rpm-ostree environment, proceeding with post install steps."
|
||||||
$path_to_udevadm control --reload-rules
|
|
||||||
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uinput
|
# Trigger udev rule reload for /dev/uinput and /dev/uhid
|
||||||
$path_to_udevadm trigger --property-match=DEVNAME=/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
|
||||||
|
echo "rpm-ostree environment detected, skipping post install steps. Restart to apply the changes."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
|
|||||||
@@ -1,17 +1,32 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# Ensure Sunshine can grab images from KMS
|
# Check if we're in an rpm-ostree environment
|
||||||
path_to_setcap=$(which setcap)
|
if [ ! -x "$(command -v rpm-ostree)" ]; then
|
||||||
path_to_sunshine=$(readlink -f $(which sunshine))
|
echo "Not in an rpm-ostree environment, proceeding with post install steps."
|
||||||
if [ -x "$path_to_setcap" ] ; then
|
|
||||||
echo "$path_to_setcap cap_sys_admin+p $path_to_sunshine"
|
|
||||||
$path_to_setcap cap_sys_admin+p $path_to_sunshine
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Trigger udev rule reload for /dev/uinput and /dev/uhid
|
# Ensure Sunshine can grab images from KMS
|
||||||
path_to_udevadm=$(which udevadm)
|
path_to_setcap=$(which setcap)
|
||||||
if [ -x "$path_to_udevadm" ] ; then
|
path_to_sunshine=$(readlink -f "$(which sunshine)")
|
||||||
$path_to_udevadm control --reload-rules
|
if [ -x "$path_to_setcap" ] ; then
|
||||||
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uinput
|
echo "Setting CAP_SYS_ADMIN capability on Sunshine binary."
|
||||||
$path_to_udevadm trigger --property-match=DEVNAME=/dev/uhid
|
echo "$path_to_setcap cap_sys_admin+p $path_to_sunshine"
|
||||||
|
$path_to_setcap cap_sys_admin+p $path_to_sunshine
|
||||||
|
echo "CAP_SYS_ADMIN capability 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
|
||||||
|
echo "rpm-ostree environment detected, skipping post install steps. Restart to apply the changes."
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user