Installing nvidia driver installs a new kernel [SOLVED, LOOK IN THE COMMENTS]
When installing the proprietary nvidia driver recommended by the the official debian page for Debian Bookwork, apt seems to want to install a new kernel. I actually did this before (since this is my second time installing debian on here) and this new kernel messes with the display server somehow, disabeling all monitors but one, limiting the resolution, removing all the UI animations and so on. So I don't want to do that again. My current kernel is the Debain 12 default: linux-image-6.1.0-18-amd64.
Am I doing something terribly wrong, is the website perhaps outdated, or what is going on here?
The proprietary Nvidia driver has kernel modules that are specific to a single version of the Linux kernel. With pre-built packages that's typically whatever the standard kernel is for your distro. If that kernel isn't booted then you'll have no graphics driver.
This is solved by DKMS, which will build those kernel modules for every kernel you have installed. You'll need the kernel headers for the kernel you want to build for, as well as the nvidia-kernel-dkms package which the wiki you linked only offhandedly mentions. Whenever the kernel or driver updates it should build the required modules.
Oh yeah, I completely missed the DKMS. I just installed the nvidia-kernel-dkms package, and it seemed to try to build the module, but then failed:
Building for 6.1.0-18-amd64
Building initial module for 6.1.0-18-amd64
Error! Bad return status for module build on kernel: 6.1.0-18-amd64 (x86_64)
Consult /var/lib/dkms/nvidia-current/525.147.05/build/make.log for more information.
dpkg: error processing package nvidia-kernel-dkms (--configure):
installed nvidia-kernel-dkms package post-installation script subprocess returned error exit status 10
dpkg: dependency problems prevent configuration of nvidia-driver:
nvidia-driver depends on nvidia-kernel-dkms (= 525.147.05-4~deb12u1) | nvidia-kernel-525.147.05 | nvidia-open-kernel-525.147.05 | nvidia-open-kernel-525.147.05; however:
Package nvidia-kernel-dkms is not configured yet.
Package nvidia-kernel-525.147.05 is not installed.
Package nvidia-kernel-dkms which provides nvidia-kernel-525.147.05 is not configured yet.
Package nvidia-open-kernel-525.147.05 is not installed.
Package nvidia-open-kernel-525.147.05 is not installed.
dpkg: error processing package nvidia-driver (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
nvidia-kernel-dkms
nvidia-driver
E: Sub-process /usr/bin/dpkg returned an error code (1)
It says that something hasn't been configured yet, even though I am just installing it...
You'll have to check the make.log as the error states. Details for what went wrong will be in there. But it might be, that your kernel version simply isn't supported by the driver.
This is a problem not with the operating system, but rather the nvidia DKMS. It can easily be fixed by replacing some lines in the apt sources located here: /etc/apt/sources.list.
The line update-security has to be replaced by these two:
deb http://deb.debian.org/debian/ bookworm-updates main non-free contrib non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm-updates main non-free contrib non-free-firmware
After updating the sources there, simple run sudo apt update and sudo apt upgrade. Then it should finally compile the drivers for your kernel, the extra kernel in the grub menu (if it appeared on your machine) should disappear, and your original kernel (in my case 6.1.0-18-amd64) will have the module in it. So your monitors and stuff should work as they did before.
Did you go through the steps required for Secure Boot?
Could be messed up dependencies in the apt repo. I've been this many times, in many distros, over the years.
In any case, I recommend getting the latest driver directly from Nvidia. It's easier to keep it outside the apt ecosystem than to wrestle with overriding outdated dependencies. Plus you get the newer driver, and honestly, Nvidia's installer is easier than Debian's (particularly if you have Secure Boot enabled).
For what it's worth, I am running on Debian now, using the "new feature branch" driver, which is currently version 545. This is newer than what's in Debian's repos (and most other distros too, for that matter). I've also performed kernel updates since installing it, without issue.