patch(-fbc).sh: restructure and remove support for old vulkan outlier

Signed-off-by: Jai Luthra <me@jailuthra.in>
This commit is contained in:
Jai Luthra 2023-11-01 22:55:16 +05:30
parent 407fe93ee2
commit f8461fd699
4 changed files with 12 additions and 311 deletions

View File

@ -63,7 +63,6 @@ If you want to donate, please send it to your favorite open source organizations
| 430.64 | YES | NO | [Driver link](https://international.download.nvidia.com/XFree86/Linux-x86_64/430.64/NVIDIA-Linux-x86_64-430.64.run) |
| 435.17 | YES | NO | [Driver link](https://international.download.nvidia.com/XFree86/Linux-x86_64/435.17/NVIDIA-Linux-x86_64-435.17.run) |
| 435.21 | YES | NO | [Driver link](https://international.download.nvidia.com/XFree86/Linux-x86_64/435.21/NVIDIA-Linux-x86_64-435.21.run) |
| 435.27.08 | YES | YES | |
| 440.26 | YES | YES | [Driver link](https://international.download.nvidia.com/XFree86/Linux-x86_64/440.26/NVIDIA-Linux-x86_64-440.26.run) |
| 440.31 | YES | YES | [Driver link](https://international.download.nvidia.com/XFree86/Linux-x86_64/440.31/NVIDIA-Linux-x86_64-440.31.run) |
| 440.33.01 | YES | YES | [Driver link](https://international.download.nvidia.com/tesla/440.33.01/NVIDIA-Linux-x86_64-440.33.01.run) |

View File

@ -223,11 +223,6 @@
"nvfbc_patch": true,
"driver_url": "https://international.download.nvidia.com/XFree86/Linux-x86_64/440.36/NVIDIA-Linux-x86_64-440.36.run"
},
{
"version": "435.27.08",
"nvenc_patch": true,
"nvfbc_patch": true
},
{
"version": "440.44",
"nvenc_patch": true,

View File

@ -55,7 +55,6 @@ if [[ $flatpak_flag ]]; then
fi
declare -A patch_list=(
["435.27.08"]='s/\x85\xc0\x89\xc3\x0f\x85\x68\xfa\xff\xff/\x31\xc0\x89\xc3\x0f\x85\x68\xfa\xff\xff/'
["440.26"]='s/\x85\xc0\x89\xc3\x0f\x85\xa9\xfa\xff\xff/\x31\xc0\x89\xc3\x0f\x85\xa9\xfa\xff\xff/'
["440.31"]='s/\x85\xc0\x89\xc3\x0f\x85\xa9\xfa\xff\xff/\x31\xc0\x89\xc3\x0f\x85\xa9\xfa\xff\xff/'
["440.33.01"]='s/\x85\xc0\x89\xc3\x0f\x85\xa9\xfa\xff\xff/\x31\xc0\x89\xc3\x0f\x85\xa9\xfa\xff\xff/'
@ -184,139 +183,9 @@ declare -A patch_list=(
["545.23.06"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x01\x90\x90\x48/'
)
declare -A object_list=(
["435.27.08"]='libnvidia-fbc.so'
["440.26"]='libnvidia-fbc.so'
["440.31"]='libnvidia-fbc.so'
["440.33.01"]='libnvidia-fbc.so'
["440.36"]='libnvidia-fbc.so'
["440.43.01"]='libnvidia-fbc.so'
["440.44"]='libnvidia-fbc.so'
["440.48.02"]='libnvidia-fbc.so'
["440.58.01"]='libnvidia-fbc.so'
["440.58.02"]='libnvidia-fbc.so'
["440.59"]='libnvidia-fbc.so'
["440.64"]='libnvidia-fbc.so'
["440.64.00"]='libnvidia-fbc.so'
["440.66.02"]='libnvidia-fbc.so'
["440.66.03"]='libnvidia-fbc.so'
["440.66.04"]='libnvidia-fbc.so'
["440.66.08"]='libnvidia-fbc.so'
["440.66.09"]='libnvidia-fbc.so'
["440.66.11"]='libnvidia-fbc.so'
["440.66.12"]='libnvidia-fbc.so'
["440.66.14"]='libnvidia-fbc.so'
["440.66.15"]='libnvidia-fbc.so'
["440.66.17"]='libnvidia-fbc.so'
["440.82"]='libnvidia-fbc.so'
["440.95.01"]='libnvidia-fbc.so'
["440.100"]='libnvidia-fbc.so'
["440.118.02"]='libnvidia-fbc.so'
["450.36.06"]='libnvidia-fbc.so'
["450.51"]='libnvidia-fbc.so'
["450.51.05"]='libnvidia-fbc.so'
["450.51.06"]='libnvidia-fbc.so'
["450.56.01"]='libnvidia-fbc.so'
["450.56.02"]='libnvidia-fbc.so'
["450.56.06"]='libnvidia-fbc.so'
["450.56.11"]='libnvidia-fbc.so'
["450.57"]='libnvidia-fbc.so'
["450.66"]='libnvidia-fbc.so'
["450.80.02"]='libnvidia-fbc.so'
["455.23.04"]='libnvidia-fbc.so'
["455.23.05"]='libnvidia-fbc.so'
["455.26.01"]='libnvidia-fbc.so'
["455.26.02"]='libnvidia-fbc.so'
["455.28"]='libnvidia-fbc.so'
["455.32.00"]='libnvidia-fbc.so'
["455.38"]='libnvidia-fbc.so'
["455.45.01"]='libnvidia-fbc.so'
["455.46.01"]='libnvidia-fbc.so'
["455.46.02"]='libnvidia-fbc.so'
["455.46.04"]='libnvidia-fbc.so'
["455.50.02"]='libnvidia-fbc.so'
["455.50.03"]='libnvidia-fbc.so'
["455.50.04"]='libnvidia-fbc.so'
["455.50.05"]='libnvidia-fbc.so'
["455.50.07"]='libnvidia-fbc.so'
["455.50.10"]='libnvidia-fbc.so'
["460.27.04"]='libnvidia-fbc.so'
["460.32.03"]='libnvidia-fbc.so'
["460.39"]='libnvidia-fbc.so'
["460.56"]='libnvidia-fbc.so'
["460.67"]='libnvidia-fbc.so'
["460.73.01"]='libnvidia-fbc.so'
["460.80"]='libnvidia-fbc.so'
["460.84"]='libnvidia-fbc.so'
["460.91.03"]='libnvidia-fbc.so'
["465.19.01"]='libnvidia-fbc.so'
["465.24.02"]='libnvidia-fbc.so'
["465.27"]='libnvidia-fbc.so'
["465.31"]='libnvidia-fbc.so'
["470.42.01"]='libnvidia-fbc.so'
["470.57.02"]='libnvidia-fbc.so'
["470.62.02"]='libnvidia-fbc.so'
["470.62.05"]='libnvidia-fbc.so'
["470.63.01"]='libnvidia-fbc.so'
["470.74"]='libnvidia-fbc.so'
["470.82.00"]='libnvidia-fbc.so'
["470.82.01"]='libnvidia-fbc.so'
["470.86"]='libnvidia-fbc.so'
["470.94"]='libnvidia-fbc.so'
["470.103.01"]='libnvidia-fbc.so'
["470.129.06"]='libnvidia-fbc.so'
["470.141.03"]='libnvidia-fbc.so'
["470.161.03"]='libnvidia-fbc.so'
["470.182.03"]='libnvidia-fbc.so'
["470.199.02"]='libnvidia-fbc.so'
["495.29.05"]='libnvidia-fbc.so'
["495.44"]='libnvidia-fbc.so'
["495.46"]='libnvidia-fbc.so'
["510.39.01"]='libnvidia-fbc.so'
["510.47.03"]='libnvidia-fbc.so'
["510.54"]='libnvidia-fbc.so'
["510.60.02"]='libnvidia-fbc.so'
["510.68.02"]='libnvidia-fbc.so'
["510.73.05"]='libnvidia-fbc.so'
["510.73.08"]='libnvidia-fbc.so'
["510.85.02"]='libnvidia-fbc.so'
["510.108.03"]='libnvidia-fbc.so'
["515.43.04"]='libnvidia-fbc.so'
["515.48.07"]='libnvidia-fbc.so'
["515.57"]='libnvidia-fbc.so'
["515.65.01"]='libnvidia-fbc.so'
["515.76"]='libnvidia-fbc.so'
["515.86.01"]='libnvidia-fbc.so'
["515.105.01"]='libnvidia-fbc.so'
["520.56.06"]='libnvidia-fbc.so'
["520.61.05"]='libnvidia-fbc.so'
["525.60.11"]='libnvidia-fbc.so'
["525.60.13"]='libnvidia-fbc.so'
["525.78.01"]='libnvidia-fbc.so'
["525.85.05"]='libnvidia-fbc.so'
["525.85.12"]='libnvidia-fbc.so'
["525.89.02"]='libnvidia-fbc.so'
["525.105.17"]='libnvidia-fbc.so'
["525.116.03"]='libnvidia-fbc.so'
["525.116.04"]='libnvidia-fbc.so'
["525.125.06"]='libnvidia-fbc.so'
["530.30.02"]='libnvidia-fbc.so'
["530.41.03"]='libnvidia-fbc.so'
["535.43.02"]='libnvidia-fbc.so'
["535.54.03"]='libnvidia-fbc.so'
["535.86.05"]='libnvidia-fbc.so'
["535.86.10"]='libnvidia-fbc.so'
["535.98"]='libnvidia-fbc.so'
["535.104.05"]='libnvidia-fbc.so'
["535.104.12"]='libnvidia-fbc.so'
["535.113.01"]='libnvidia-fbc.so'
["535.129.03"]='libnvidia-fbc.so'
["545.23.06"]='libnvidia-fbc.so'
)
check_version_supported () {
local ver="$1"
[[ "${patch_list[$ver]+isset}" && "${object_list[$ver]+isset}" ]]
[[ "${patch_list[$ver]+isset}" ]]
}
get_flatpak_driver_path () {
@ -333,7 +202,7 @@ get_flatpak_driver_path () {
get_supported_versions () {
for drv in "${!patch_list[@]}"; do
[[ "${object_list[$drv]+isset}" ]] && echo "$drv"
echo "$drv"
done | sort -t. -n
return 0
}
@ -372,7 +241,7 @@ patch_common () {
fi
patch="${patch_list[$driver_version]}"
object="${object_list[$driver_version]}"
object='libnvidia-fbc.so'
if [[ $flatpak_flag ]]; then
driver_dir=$(get_flatpak_driver_path "$driver_version")

180
patch.sh
View File

@ -93,7 +93,6 @@ declare -A patch_list=(
["430.64"]='s/\x00\x00\x00\x84\xc0\x0f\x84\x0f\xfd\xff\xff/\x00\x00\x00\x84\xc0\x90\x90\x90\x90\x90\x90/g'
["435.17"]='s/\x00\x00\x00\x84\xc0\x0f\x84\x0f\xfd\xff\xff/\x00\x00\x00\x84\xc0\x90\x90\x90\x90\x90\x90/g'
["435.21"]='s/\x00\x00\x00\x84\xc0\x0f\x84\x0f\xfd\xff\xff/\x00\x00\x00\x84\xc0\x90\x90\x90\x90\x90\x90/g'
["435.27.08"]='s/\x85\xc0\x41\x89\xc4\x75\x1f/\x31\xc0\x41\x89\xc4\x75\x1f/g'
["440.26"]='s/\x85\xc0\x41\x89\xc4\x75\x1f/\x31\xc0\x41\x89\xc4\x75\x1f/g'
["440.31"]='s/\x85\xc0\x41\x89\xc4\x75\x1f/\x31\xc0\x41\x89\xc4\x75\x1f/g'
["440.33.01"]='s/\x85\xc0\x41\x89\xc4\x75\x1f/\x31\xc0\x41\x89\xc4\x75\x1f/g'
@ -223,176 +222,9 @@ declare -A patch_list=(
["545.23.06"]='s/\xe8\xc5\x8f\xfe\xff\x85\xc0\x41\x89\xc4/\xe8\xc5\x8f\xfe\xff\x29\xc0\x41\x89\xc4/g'
)
declare -A object_list=(
["375.39"]='libnvidia-encode.so'
["390.77"]='libnvidia-encode.so'
["390.87"]='libnvidia-encode.so'
["390.147"]='libnvidia-encode.so'
["396.24"]='libnvidia-encode.so'
["396.26"]='libnvidia-encode.so'
["396.37"]='libnvidia-encode.so'
["396.54"]='libnvidia-encode.so'
["410.48"]='libnvidia-encode.so'
["410.57"]='libnvidia-encode.so'
["410.73"]='libnvidia-encode.so'
["410.78"]='libnvidia-encode.so'
["410.79"]='libnvidia-encode.so'
["410.93"]='libnvidia-encode.so'
["410.104"]='libnvidia-encode.so'
["415.18"]='libnvcuvid.so'
["415.25"]='libnvcuvid.so'
["415.27"]='libnvcuvid.so'
["418.30"]='libnvcuvid.so'
["418.43"]='libnvcuvid.so'
["418.56"]='libnvcuvid.so'
["418.67"]='libnvcuvid.so'
["418.74"]='libnvcuvid.so'
["418.87.00"]='libnvcuvid.so'
["418.87.01"]='libnvcuvid.so'
["418.88"]='libnvcuvid.so'
["418.113"]='libnvcuvid.so'
["430.09"]='libnvcuvid.so'
["430.14"]='libnvcuvid.so'
["430.26"]='libnvcuvid.so'
["430.34"]='libnvcuvid.so'
["430.40"]='libnvcuvid.so'
["430.50"]='libnvcuvid.so'
["430.64"]='libnvcuvid.so'
["435.17"]='libnvcuvid.so'
["435.21"]='libnvcuvid.so'
["435.27.08"]='libnvidia-encode.so'
["440.26"]='libnvidia-encode.so'
["440.31"]='libnvidia-encode.so'
["440.33.01"]='libnvidia-encode.so'
["440.36"]='libnvidia-encode.so'
["440.43.01"]='libnvidia-encode.so'
["440.44"]='libnvidia-encode.so'
["440.48.02"]='libnvidia-encode.so'
["440.58.01"]='libnvidia-encode.so'
["440.58.02"]='libnvidia-encode.so'
["440.59"]='libnvidia-encode.so'
["440.64"]='libnvidia-encode.so'
["440.64.00"]='libnvidia-encode.so'
["440.66.02"]='libnvidia-encode.so'
["440.66.03"]='libnvidia-encode.so'
["440.66.04"]='libnvidia-encode.so'
["440.66.08"]='libnvidia-encode.so'
["440.66.09"]='libnvidia-encode.so'
["440.66.11"]='libnvidia-encode.so'
["440.66.12"]='libnvidia-encode.so'
["440.66.14"]='libnvidia-encode.so'
["440.66.15"]='libnvidia-encode.so'
["440.66.17"]='libnvidia-encode.so'
["440.82"]='libnvidia-encode.so'
["440.95.01"]='libnvidia-encode.so'
["440.100"]='libnvidia-encode.so'
["440.118.02"]='libnvidia-encode.so'
["450.36.06"]='libnvidia-encode.so'
["450.51"]='libnvidia-encode.so'
["450.51.05"]='libnvidia-encode.so'
["450.51.06"]='libnvidia-encode.so'
["450.56.01"]='libnvidia-encode.so'
["450.56.02"]='libnvidia-encode.so'
["450.56.06"]='libnvidia-encode.so'
["450.56.11"]='libnvidia-encode.so'
["450.57"]='libnvidia-encode.so'
["450.66"]='libnvidia-encode.so'
["450.80.02"]='libnvidia-encode.so'
["450.102.04"]='libnvidia-encode.so'
["455.22.04"]='libnvidia-encode.so'
["455.23.04"]='libnvidia-encode.so'
["455.23.05"]='libnvidia-encode.so'
["455.26.01"]='libnvidia-encode.so'
["455.26.02"]='libnvidia-encode.so'
["455.28"]='libnvidia-encode.so'
["455.32.00"]='libnvidia-encode.so'
["455.38"]='libnvidia-encode.so'
["455.45.01"]='libnvidia-encode.so'
["455.46.01"]='libnvidia-encode.so'
["455.46.02"]='libnvidia-encode.so'
["455.46.04"]='libnvidia-encode.so'
["455.50.02"]='libnvidia-encode.so'
["455.50.04"]='libnvidia-encode.so'
["455.50.05"]='libnvidia-encode.so'
["455.50.07"]='libnvidia-encode.so'
["455.50.10"]='libnvidia-encode.so'
["460.27.04"]='libnvidia-encode.so'
["460.32.03"]='libnvidia-encode.so'
["460.39"]='libnvidia-encode.so'
["460.56"]='libnvidia-encode.so'
["460.67"]='libnvidia-encode.so'
["460.73.01"]='libnvidia-encode.so'
["460.80"]='libnvidia-encode.so'
["460.84"]='libnvidia-encode.so'
["460.91.03"]='libnvidia-encode.so'
["465.19.01"]='libnvidia-encode.so'
["465.24.02"]='libnvidia-encode.so'
["465.27"]='libnvidia-encode.so'
["465.31"]='libnvidia-encode.so'
["470.42.01"]='libnvidia-encode.so'
["470.57.02"]='libnvidia-encode.so'
["470.62.02"]='libnvidia-encode.so'
["470.62.05"]='libnvidia-encode.so'
["470.63.01"]='libnvidia-encode.so'
["470.74"]='libnvidia-encode.so'
["470.82.00"]='libnvidia-encode.so'
["470.82.01"]='libnvidia-encode.so'
["470.86"]='libnvidia-encode.so'
["470.94"]='libnvidia-encode.so'
["470.103.01"]='libnvidia-encode.so'
["470.129.06"]='libnvidia-encode.so'
["470.141.03"]='libnvidia-encode.so'
["470.161.03"]='libnvidia-encode.so'
["470.182.03"]='libnvidia-encode.so'
["470.199.02"]='libnvidia-encode.so'
["495.29.05"]='libnvidia-encode.so'
["495.44"]='libnvidia-encode.so'
["495.46"]='libnvidia-encode.so'
["510.39.01"]='libnvidia-encode.so'
["510.47.03"]='libnvidia-encode.so'
["510.54"]='libnvidia-encode.so'
["510.60.02"]='libnvidia-encode.so'
["510.68.02"]='libnvidia-encode.so'
["510.73.05"]='libnvidia-encode.so'
["510.73.08"]='libnvidia-encode.so'
["510.85.02"]='libnvidia-encode.so'
["510.108.03"]='libnvidia-encode.so'
["515.43.04"]='libnvidia-encode.so'
["515.48.07"]='libnvidia-encode.so'
["515.57"]='libnvidia-encode.so'
["515.65.01"]='libnvidia-encode.so'
["515.76"]='libnvidia-encode.so'
["515.86.01"]='libnvidia-encode.so'
["515.105.01"]='libnvidia-encode.so'
["520.56.06"]='libnvidia-encode.so'
["520.61.05"]='libnvidia-encode.so'
["525.60.11"]='libnvidia-encode.so'
["525.60.13"]='libnvidia-encode.so'
["525.78.01"]='libnvidia-encode.so'
["525.85.05"]='libnvidia-encode.so'
["525.85.12"]='libnvidia-encode.so'
["525.89.02"]='libnvidia-encode.so'
["525.105.17"]='libnvidia-encode.so'
["525.116.03"]='libnvidia-encode.so'
["525.116.04"]='libnvidia-encode.so'
["525.125.06"]='libnvidia-encode.so'
["530.30.02"]='libnvidia-encode.so'
["530.41.03"]='libnvidia-encode.so'
["535.43.02"]='libnvidia-encode.so'
["535.54.03"]='libnvidia-encode.so'
["535.86.05"]='libnvidia-encode.so'
["535.86.10"]='libnvidia-encode.so'
["535.98"]='libnvidia-encode.so'
["535.104.05"]='libnvidia-encode.so'
["535.104.12"]='libnvidia-encode.so'
["535.113.01"]='libnvidia-encode.so'
["535.129.03"]='libnvidia-encode.so'
["545.23.06"]='libnvidia-encode.so'
)
check_version_supported () {
local ver="$1"
[[ "${patch_list[$ver]+isset}" && "${object_list[$ver]+isset}" ]]
[[ "${patch_list[$ver]+isset}" ]]
}
get_flatpak_driver_path () {
@ -409,7 +241,7 @@ get_flatpak_driver_path () {
get_supported_versions () {
for drv in "${!patch_list[@]}"; do
[[ "${object_list[$drv]+isset}" ]] && echo "$drv"
echo "$drv"
done | sort -t. -n
return 0
}
@ -448,7 +280,13 @@ patch_common () {
fi
patch="${patch_list[$driver_version]}"
object="${object_list[$driver_version]}"
driver_maj_version=${driver_version%%.*}
if [[ $driver_maj_version -ge "415" && $driver_maj_version -le "435" ]]; then
object='libnvcuvid.so'
else
object='libnvidia-encode.so'
fi
echo $object
if [[ $flatpak_flag ]]; then
driver_dir=$(get_flatpak_driver_path "$driver_version")