This updates the NVIDIA ports to the latest stable production branch.
Also bump graphics/egl-wayland to the latest 1.1.19 to match with
the one in x11/linux-nvidia-libs.
PR: 286307
Differential D49982
x11/nvidia-driver, x11/linux-nvidia-libs, graphics/nvidia-drm-kmod: Update to 570.144 junchoon_dec.sakura.ne.jp on Apr 23 2025, 1:14 PM. Authored by Tags None Referenced Files
Details
This updates the NVIDIA ports to the latest stable production branch. PR: 286307
Diff Detail
Event Timeline
Comment Actions Fixed PORTREVISION in graphics/nvidia-drm-kmod/Makefile.common. Simplified x11/linux-nvidia-libs/Makefile a bit for frequently-upgraded parts (graphics/egl-wayland related and Linux-only egl-x[cb|lib] stuff). Others seems to be upgraded per-major-version or fewer.
Comment Actions A couple minor nits but overall looks good
Comment Actions Can we have an updated version string in the dmesg? On current with nvidia-drm-66-kmod, I get: Initialized nvidia-drm 0.0.0 20160202 for nvidia0 on minor 1
Comment Actions Cannot find related codes in nvidia side of src in quick glance, but found in drm-*-kmod part. Austin, do you have any insight? /usr/ports/graphics/nvidia-drm-61-kmod/work/drm-kmod-drm_v6.1.128_1/drivers/gpu/drm/drm_drv.c- ret = drm_modeset_register_all(dev); Comment Actions It is defined in the NVIDIA driver, i.e., src/nvidia-drm/nvidia-drm-drv.c. Just search 20160202. Comment Actions The file is extracted in WRKDIR as in x11/nvidia-driver.
Comment Actions Rebase to chase graphics/drm-[61|66]-kmod upgrades. This update is the rebase only, putting anything others in discussion aside. Comment Actions On headsup for pruning intermediate versions, we should clarify: *Keeping conditionals only the top of master port and each slave (legacy, currently) ports and initial version of each conditionals as a record, or *Keeping latest ones for each of major versions (starting from 304, but do not add existing upstream but not in ports Makefile). Kevin, do you imagine the former? And also need to decide how long we should give to pop in for anyone having reasons that needs specific version. Comment Actions Looking into x11/nvidia-driver/Makefile and x11/linux-nvidia-libs/Makefile thoroughly, there seems to be no more candidates for conditionals to be pruned, if I'm not overlooking something. The closest candidate would be pop up when 13.x branch is totally EoL'ed. But only single conditional. Closed conditionals seems to contain any of main or latest legacy branch within their version ranges. Comment Actions Pending rebase after D50048 landed as commit 13636d8b58f662e12d1513333d1e981a59620109 for now, as D50053 should land first. Would rebase after it lands. Comment Actions Turned out that use-cases requiring intermediate versions exists. https://forums.freebsd.org/threads/how-to-install-the-nvidia-drm-kmod-for-the-driver-nvidia-525-78-01-on-freebsd-14-2-to-be-able-to-run-comfyui.97741/ https://www.reddit.com/r/freebsd/comments/10ysy6m/how_to_install_on_freebsd_131release_a_different/ The latter is linked from the former (the same Op). Not exactly same, but what he did before. The Op want to use 525.78.01 for compatibility with a specific Linux application (here, ComfyUI) and it requires Linux version of libnvidia-egl-wayland.so.1.1.10. This would indicate that pruning intermediate versions could be problematic in some specific cases. If we decide not pruning (at least for now), I'll include the hot fix (modified to fit current form) on next rebase. Note that the Op himself was confused so me too confused to clarify what actually he needs and why. Comment Actions
Applications should never be doing this, this is incorrect behavior and we should not worry about intermediate version support to help fix broken apps. If the user needs to make a symlink or set up an old driver to work around a buggy application they are welcome to do so, egl-wayland is independent of the driver and an old one can be installed on top of any driver version. Because egl-wayland can be installed separately I think that's a good case for why keeping intermediate versions around is not worth it. Op also clearly has some setup issues from using the raw tarball so I would take the feedback with a grain of salt when deciding what is best for all users.
Comment Actions
For x11/nvidia-driver, yes. But for x11/linux-nvidia-libs, we don't build anything but distributing files into proper places of stage and fix temporary plist. So the situation is different from native x11/nvidia-driver. libnvidia-egl-wayland.so.* are simply extracted from upstream *.run for x11/linux-nvidia-libs. If libraries provided from nvidia are backward-compatible unless any GPUs are dropped, telling users of abused binaries to symlink or libmap would be sufficient. Comment Actions Rebase after commit 637e9e68f1a2ce587e5107b0fd296abd16f061a0 "x11/nvidia-driver: Fix too aggressive disabling of GSP firmware". While here, pruned intermediate versions of libnvidia-egl-wayland. Comment Actions Thanks, I think this seems reasonable now.
Either way, we should not design the package around incorrect app behavior. It should be on the developer to properly link the app. Comment Actions Some notes for the future: And if any GPU are dropped from within a major version (basically unlikely, though) but no legacy branch is created for it upstream, we would need to prepare FreeBSD-specific legacy branch (latest production driver for the dropped GPUs). Anyway, it would be much trivial than before, thanks to ashafer's idea.
|