Skip to content

Prioritize and use 'newer' download URLs - #448

Merged
guihkx merged 5 commits into
flathub:masterfrom
guihkx:update-urls
Sep 25, 2026
Merged

guihkx merged 5 commits into
flathub:masterfrom
guihkx:update-urls

Conversation

@guihkx

@guihkx guihkx commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

Some of the older download URLs are missing at the moment, failing our CI/CD:

Downloading sources
Downloading https://us.download.nvidia.com/XFree86/aarch64/545.29.02/NVIDIA-Linux-aarch64-545.29.02.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed

  0      0   0      0   0      0      0      0                              0
Failed to download sources: module nvidia: The requested URL returned error: 404
make: *** [Makefile:8: all] Error 1

Thankfully, NVIDIA has 'new' driver archives for Beta/New Feature/Production drivers, targeting i386, x86_64 and aarch64 (respectively):

This PR mainly prioritizes these new URLs over the old ones, but it also includes some other trivial but useful changes (please see each commit for more details).

Closes #447

The previous way of matching driver versions was error prone.

For example, New Feature driver 415.22 would incorrectly match as being
a Vulkan driver. Before this fix:

===
$ rm data/nvidia-415.22-*.data
$ ./update-data.sh
Generating data/nvidia-415.22-x86_64.data (Vulkan)
Downloading: https://developer.nvidia.com/downloads/vulkan-beta-41522-linux
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0           00:01              0
curl: (22) The requested URL returned error: 404
Downloading: https://developer.nvidia.com/downloads/assets/gameworks/downloads/secure/Vulkan_Beta_Drivers/NVIDIA-Linux-x86_64-415.22.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0
curl: (22) The requested URL returned error: 404
Unable to find URL for version 415.22, arch x86_64
===

After this fix:

===
$ rm data/nvidia-415.22-*.data
$ ./update-data.sh
Generating data/nvidia-415.22-x86_64.data (Production / New Feature)
Downloading: https://us.download.nvidia.com/XFree86/Linux-x86_64/415.22/NVIDIA-Linux-x86_64-415.22-no-compat32.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 65.80M   0 65.80M   0      0  7.78M      0           00:08         10.19M
Generating data/nvidia-415.22-i386.data (Production / New Feature)
Downloading: https://us.download.nvidia.com/XFree86/Linux-x86_64/415.22/NVIDIA-Linux-x86_64-415.22.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 103.7M 100 103.7M   0      0  3.91M      0   00:26   00:26          4.30M
===
Some of the older download URLs are failing at the moment, failing our
CI/CD:

===
Downloading sources
Downloading https://us.download.nvidia.com/XFree86/aarch64/545.29.02/NVIDIA-Linux-aarch64-545.29.02.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed

  0      0   0      0   0      0      0      0                              0
Failed to download sources: module nvidia: The requested URL returned error: 404
make: *** [Makefile:8: all] Error 1
===

Thankfully, NVIDIA has 'new' driver archives for Beta/New Feature/
Production drivers, targeting i386, x86_64 and aarch64 (respectively):

- https://download.nvidia.com/XFree86/Linux-x86/
- https://download.nvidia.com/XFree86/Linux-x86_64/
- https://download.nvidia.com/XFree86/Linux-aarch64/

This change simply prioritizes these new URLs over the old ones.
For some reason, the download link for the 580.105.08 driver is currently
missing from the aarch64 archive [1] (but it's present in the x86_64
archive [2]).

Luckily, downloading this version from the 'Tesla endpoint' works, so
just move this version there.

Before this fix:

===
$ rm data/nvidia-580.105.08-*.data
$ ./update-data.sh
Generating data/nvidia-580.105.08-x86_64.data (Production / New Feature)
Downloading: https://download.nvidia.com/XFree86/Linux-x86_64/580.105.08/NVIDIA-Linux-x86_64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 378.2M 100 378.2M   0      0 14.04M      0   00:26   00:26         15.86M
Generating data/nvidia-580.105.08-i386.data (Production / New Feature)
Downloading: https://download.nvidia.com/XFree86/Linux-x86_64/580.105.08/NVIDIA-Linux-x86_64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 378.2M 100 378.2M   0      0 13.75M      0   00:27   00:27         14.48M
Generating data/nvidia-580.105.08-aarch64.data (Production / New Feature)
Downloading: https://download.nvidia.com/XFree86/Linux-aarch64/580.105.08/NVIDIA-Linux-aarch64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0           00:01              0
curl: (22) The requested URL returned error: 404
Downloading: https://us.download.nvidia.com/XFree86/Linux-aarch64/580.105.08/NVIDIA-Linux-aarch64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0           00:01              0
curl: (22) The requested URL returned error: 404
Downloading: https://us.download.nvidia.com/XFree86/aarch64/580.105.08/NVIDIA-Linux-aarch64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0           00:01              0
curl: (22) The requested URL returned error: 404
Unable to find URL for version 580.105.08, arch aarch64
===

After this fix:

===
$ rm data/nvidia-580.105.08-*.data
$ ./update-data.sh
Generating data/nvidia-580.105.08-x86_64.data (Tesla)
Downloading: https://us.download.nvidia.com/tesla/580.105.08/NVIDIA-Linux-x86_64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 378.2M 100 378.2M   0      0  4.94M      0   01:16   01:16          4.77M
Generating data/nvidia-580.105.08-i386.data (Tesla)
Downloading: https://us.download.nvidia.com/tesla/580.105.08/NVIDIA-Linux-x86_64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 378.2M 100 378.2M   0      0 13.43M      0   00:28   00:28         14.52M
Generating data/nvidia-580.105.08-aarch64.data (Tesla)
Downloading: https://us.download.nvidia.com/tesla/580.105.08/NVIDIA-Linux-aarch64-580.105.08.run
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
100 298.8M 100 298.8M   0      0  4.45M      0   01:07   01:07          4.70M
===

[1] https://download.nvidia.com/XFree86/Linux-aarch64/580.105.08/
[2] https://download.nvidia.com/XFree86/Linux-x86_64/580.105.08/
@404NetworkError

404NetworkError commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

All looks good!

One interesting note is that download.nvidia.com links are plain text whereas us.download.nvidia.com are binaries. Since update-data.sh outputs each link to a file, this doesn't cause an issue.

545.29.02 x86_64 - download.nvidia.com
$ curl --head https://download.nvidia.com/XFree86/Linux-x86_64/545.29.02/NVIDIA-Linux-x86_64-545.29.02.run
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 324785376
Content-Type: text/plain
ETag: "fe6d2b1ccec8da0502c1232235c7da4e:1731141688.121847"
Last-Modified: Fri, 27 Oct 2023 05:27:04 GMT
Server: AkamaiNetStorage
Cache-Control: max-age=86400
Expires: Sat, 26 Sep 2026 11:52:42 GMT
Date: Fri, 25 Sep 2026 11:52:42 GMT
Connection: keep-alive
x-cache-status: Miss from child
x-cdn-version: v43
x-cdn: akam
545.29.02 x86_64 - us.download.nvidia.com
$ curl --head https://us.download.nvidia.com/XFree86/Linux-x86_64/545.29.02/NVIDIA-Linux-x86_64-545.29.02.run
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 324785376
ETag: "fe6d2b1ccec8da0502c1232235c7da4e:1731228774.81595"
Last-Modified: Fri, 27 Oct 2023 05:27:04 GMT
Server: AkamaiNetStorage
Cache-Control: max-age=86400
Expires: Sat, 26 Sep 2026 11:53:24 GMT
Date: Fri, 25 Sep 2026 11:53:24 GMT
Connection: keep-alive
content-disposition: attachment
Content-Type: application/octet-stream
x-cache-status: Miss from child
x-cdn-version: v19
x-cdn: aka

@guihkx
guihkx merged commit 1bffc8a into flathub:master Sep 25, 2026
1 check passed
@guihkx
guihkx deleted the update-urls branch September 25, 2026 15:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants