I have an old MSI GE40 2OC-218USK gaming laptop that I've posted about in the past. I let the updates lapse (it was on 23.10) so had to do a reinstall. The install of 24.10 went mostly fine, except for known issues (that I always encounter at least) in the installer, that forced me to do an offline installation without pulling down nvidia drivers and updates, thinking that I could do that afterwards. When I booted into the system though, it shows the graphics as the Intel HD graphics, which is the integrated graphics that's part of the CPU (an i7-4702MQ) not the GeForce GTX 760M, that the system comes with.
. From a quick google, it said to try logging into the desktop environment with Xorg and not Wayland, and that did not change anything for me.
In earlier installations of Ubuntu, it did detect this GPU successfully and install an appropriate driver. I don't know when it stopped doing that, but it doesn't do it anymore. When I go to the Additional Drivers dialog box, it's not detecting the GPU, and is not pulling up the appropriate closed driver for for the GTX 760M.
Here's some CLI reports of what's going on in the system
Here's lshw. It clearly shows the Nvidia GPU as detected.
$ sudo lshw -c video
[sudo] password for christopher:
*-display UNCLAIMED
description: 3D controller
product: GK106M [GeForce GTX 760M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: latency=0
resources: memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
*-display
description: VGA compatible controller
product: 4th Gen Core Processor Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
logical name: /dev/fb0
version: 06
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=i915 latency=0 resolution=1600,900
resources: irq:32 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64) memory:c0000-dffff
lspci says the same thing. Here it shows both the nvidiafb and the nouveau kernel drivers modules active. From a quick google, nvidiafb is not the closed source driver
$ lspci -k | grep -EA3 'VGA|3D|Display'
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
DeviceName: Onboard IGD
Subsystem: Micro-Star International Co., Ltd. [MSI] Device 10e3
Kernel driver in use: i915
--
01:00.0 3D controller: NVIDIA Corporation GK106M [GeForce GTX 760M] (rev a1)
Subsystem: Micro-Star International Co., Ltd. [MSI] Device 10e3
Kernel modules: nvidiafb, nouveau
03:00.0 Ethernet controller: Qualcomm Atheros Killer E220x Gigabit Ethernet Controller (rev 13)
But glxinfo does indeed show that the Intel HD driver is the active one
$ glxinfo | grep -iE 'vendor:|device:|version:'
GLX version: 1.4
Vendor: Intel (0x8086)
Device: Mesa Intel(R) HD Graphics 4600 (HSW GT2) (0x416)
Version: 24.2.8
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
From looking at the Nvidia website, the latest and last Nvidia Linux drivers that support the 760M is the 390 driver. So looking for the driver package for the 390 driver to manually install, I turned to a few places. First was Ubuntu documentation. It says to use the ubuntu-drivers tool, which appears to be the CLI version of the Additional Drivers dialog, so I have very little faith in it. Sure enough. It doesn't list any drivers.
$ sudo ubuntu-drivers list
But that page does list an example command for installing a newer driver, so I just try that edited for 390 sudo ubuntu-drivers install nvidia:390 and that yields nothing as well
$ sudo ubuntu-drivers install nvidia:390
[sudo] password for christopher:
All the available drivers are already installed.
So then I just google it and try the gemini answer and hope it didn't make something up. It tells me that the 390 driver package for Ubuntu is called nvidia-graphics-drivers-390 and just to apt install that, and that also yields nothing.
$ sudo apt install nvidia-graphics-drivers-390
Error: Unable to locate package nvidia-graphics-drivers-390
But if you search for nvidia on http://packages.ubuntu.com , there is an nvidia-384, and it's just a virtual package telling you to install a newer driver that's not going to work anyways, so that's also a dead end.
$ sudo apt install nvidia-384
Package nvidia-384 is a virtual package provided by:
nvidia-headless-no-dkms-550-server-open 550.127.08-0ubuntu0.24.10.1
nvidia-headless-no-dkms-550-server 550.127.08-0ubuntu0.24.10.1
nvidia-headless-no-dkms-535-server-open 535.216.03-0ubuntu0.24.10.1
nvidia-headless-no-dkms-535-server 535.216.03-0ubuntu0.24.10.1
nvidia-headless-no-dkms-560-open 560.35.03-0ubuntu5
nvidia-headless-no-dkms-560 560.35.03-0ubuntu5
You should explicitly select one to install.
Error: Package 'nvidia-384' has no installation candidate
I then try to build the drivers from the .run file off Nvidia's website and that also fails in compilation.
$ tail /var/log/nvidia-installer.log
make[5]: *** [scripts/Makefile.build:244: /tmp/selfgz72331/NVIDIA-Linux-x86_64-390.157/kernel/nvidia-drm/nvidia-drm-helper.o] Error 1
make[5]: *** [scripts/Makefile.build:244: /tmp/selfgz72331/NVIDIA-Linux-x86_64-390.157/kernel/nvidia-drm/nvidia-drm-utils.o] Error 1
make[5]: Target '/tmp/selfgz72331/NVIDIA-Linux-x86_64-390.157/kernel/' not remade because of errors.
make[2]: *** [/usr/src/linux-headers-6.11.0-14-generic/Makefile:1931: /tmp/selfgz72331/NVIDIA-Linux-x86_64-390.157/kernel] Error 2
make[2]: Target 'modules' not remade because of errors.
make[1]: *** [Makefile:224: __sub-make] Error 2
make[1]: Target 'modules' not remade because of errors.
make[1]: Leaving directory '/usr/src/linux-headers-6.11.0-14-generic'
make: *** [Makefile:81: modules] Error 2
-> Error.
So I've run out of ideas. There's two/three issues here. The GPU is not being detected and the option to easily choose the appropriate closed source driver is not working. And Ubuntu is not auto choosing the 760M GPU with the nouveau driver to use that either, and there's no easy option to use the 390 (or whatever is the right) driver for this GPU in this laptop. Can anyone assist? The closest thing I have run into and will try is the answers in this post here but the experimental driver PPA is only built for kernel 6.8, and 24.10 is on 6.11. I tried it and it doesn't have a package for oracular. Is there any other or better option than that?
