Solved 15.0R repo setup question

Happy new year, all,

Running into an issue, which, I believe should be a simple one. I upgraded to 15.0-RELEASE last month, on all of my systems. Everything has been working well, except, at this point, I am unable to upgrade my desktop machine, which runs an nVidia GPU. When trying to upgrade, it wants to update the driver packages, but not the kernel mods:

Code:
$ sudo pkg upgrade
...
       nvidia-driver: 580.105.08 -> 580.119.02_1 [FreeBSD-ports]
        nvidia-settings: 580.105.08 -> 580.119.02 [FreeBSD-ports]
        nvidia-xconfig: 580.105.08 -> 580.119.02 [FreeBSD-ports]
...

When I try to upgrade nvidia-kmod, it says "already at the latest version" however, freshports.org shows that 580.119.02_1 is available in the latest repo. I checked pkg repos, and got the following result:

Code:
FreeBSD-ports: {  
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/latest",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkg"
  }
FreeBSD-ports-kmods: {
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/kmods_latest_0",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkg"
  }
FreeBSD-base: {
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/base_release_0",
    enabled         : no,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkgbase-15"
  }

My /usr/local/etc/pkg/repos/FreeBSD.conf is configured as such:

Code:
FreeBSD-ports: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/latest",
  enabled: yes,
}
FreeBSD-ports-kmods: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_latest_${VERSION_MINOR}"
  enabled: yes,
}

I pulled up https://pkg.freebsd.org/FreeBSD:15:amd64/kmods_latest_0/ and https://pkg.freebsd.org/FreeBSD:15:amd64/kmods_latest/, and noticed that while the dates are the same, the times are a few minutes off, and the sizes of data.pkg and packagesite.pkg differ by a couple of hundred bytes.

Is there a way/should i be pointing to kmods_latest instead of kmods_latest_0? And will the system then find the nvidia_kmod module?

Thanks.
 

Attachments

  • freshports.jpg
    freshports.jpg
    40.8 KB · Views: 15
And will the system then find the nvidia_kmod module?
Everything is available in the FreeBSD-ports repository, and everything in there is specifically built for 15.0. The FreeBSD-ports-kmods would only be needed when 15.1-RELEASE comes, you can safely disable it for now.
 
Everything is available in the FreeBSD-ports repository, and everything in there is specifically built for 15.0. The FreeBSD-ports-kmods would only be needed when 15.1-RELEASE comes, you can safely disable it for now.
Okay, but when I try to upgrade, the nividia driver gets upgraded but the kmod doesn't and when I reboot from the upgrade, X will not start. I just did a pkg upgrade, and rebooted, and when it came back up, it dropped me at a VT, no X, with the following message:

Code:
NVRM: API mismatch: the client 'Xorg' (pid 2495)
NVRM: has the version 580.119.02, but this kernel module has
NVRM: the version 580.105.08.  Please make sure that this
NVRM: kernel module and all NVIDIA driver components
NVRM: have the same version.

So you are saying to comment out the FreeBSD-ports-kmods in both FreeBSD.conf files? Is the ports-kmods file keeping the nvidia-kmod in FreeBSD-ports from upgrading? (Sorry, I'm just trying to understand what's going on)...
 
So you are saying to comment out the FreeBSD-ports-kmods in both FreeBSD.conf files?
No, set enabled: no in /usr/local/etc/pkg/repos/FreeBSD.conf. That will disable it. Never edit /etc/pkg/FreeBSD.conf.

Is the ports-kmods file keeping the nvidia-kmod in FreeBSD-ports from upgrading?
Probably, for now there's a few discrepancies with version numbers due to the way the two repositories are built. It will get fixed by the time it's actually needed (when upgrading from 15.0 to 15.1).
Sorry, I'm just trying to understand what's going on
It's complicated.
 
The first thing I'd probably try is to ftp or git down a recent portstree and look if the Makefiles of 1 of both ports maybe complies with the pkg version of the other. If not, try online repositories like Freshports. The versions must be the same to work, apparently. There aren't other options afaik.
 
I found another workaround. Maybe not a correct workaround, but trolling around on the forums, I remembered a problem I had on my laptop, when upgrading from 14.2 to 14.3, the intel drm package did not update, so X was failing because it was still running the 140200 driver. I had to uninstall and reinstall.

So I upgraded system, and when it dropped me at the VT, I uninstalled the nvidia-kmod, which uninstalled the
580.105.08. Reinstalling installed the 580.119.02_1 version. Rebooted, and the system (and X) came up fine.

Inelegant, but as something I once read said, "if it's stupid and it works, it ain't stupid." :D

I'm marking this as solved as I believe these appear to be 15.0 early days teething pains.
 
If you pasted your /usr/local/etc/pkg/repos/FreeBSD.conf then missing a comma after
Code:
FreeBSD-ports-kmods: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_latest_${VERSION_MINOR}"   <----
 
Back
Top