DebianThis forum is for the discussion of Debian Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
SystemRescueCD works.
It's based on arch. Manjaro is also based on arch. I can boot a live Manjaro from USB flash drive.
Manjaro, booted live, works.
Manjaro, installed from that very USB flash drive, shows the same colour confusion that Debian 10.2 does.
I can get Debian to work if I first boot the Manjaro live system, reboot from there (without power cycling) into GRUB and then start Debian with the kernel parameter "video=1920x1080-32@60eD" instead of the "nomodeset" that I used earlier.
How can I find out what Manjaro (booted from the flash drive) does to the graphics card so it can later work with Debian?
Manjaro, booted live, works.
Manjaro, installed from that very USB flash drive, shows the same colour confusion that Debian 10.2 does.
(...)
How can I find out what Manjaro (booted from the flash drive) does to the graphics card so it can later work with Debian?
Compare what graphics drivers it uses.
I'm pretty sure the live system uses the fallback driver, and the installed system will use nouveau for Nvidia cards.
Nouveau (open source, reverse engineered) is known to not work so well with older cards.
You will most likely benefit from the suitable proprietary driver.
You can also try mrmazda's approach but I'm not too familiar with it.
Compare the output of this command (and also show us):
Code:
lspci -k | grep -iEA5 'vga|3d|display'
FWIW, I am about 99% sure that we're starting to go in circles here, you just need to settle on one distro and then fix the problem by following advice already given.
You will most likely benefit from the suitable proprietary driver.
I'm afraid I'm out of luck here since the last proprietary driver that supports my card is not available any more. The last Debian version that came with it was 9.
Thank you. As obvious as this seems, I didn't think of that one.
But it has its own issues:
That download from the nvidia site seems to be a script that needs to compile something on the target system. So I installed linux-source and linux-headers for my current kernel plus gcc and make. With all this, the script starts compiling but ends with an error. The log says this:
Code:
nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Fri May 15 21:13:36 2020
installer version: 304.137
PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
nvidia-installer command line:
./nvidia-installer
Using: nvidia-installer ncurses v6 user interface
-> License accepted.
-> Installing NVIDIA driver version 304.137.
WARNING: The path to the `modprobe` utility reported by '/proc/sys/kernel/modprobe', `/sbin/modprobe`, differs from the path determined by `nvidia-installer`, `/usr/sbin/modprobe`. Please verify that `/sbin/modprobe` works correctly and correct the path in '/proc/sys/kernel/modprobe' if it does not.
-> Performing CC sanity check with CC="cc".
-> Performing CC version check with CC="cc".
-> Kernel source path: '/lib/modules/4.19.0-9-amd64/source'
-> Kernel output path: '/lib/modules/4.19.0-9-amd64/build'
-> Performing rivafb check.
-> Performing nvidiafb check.
-> Performing Xen check.
-> Cleaning kernel module build directory.
executing: 'cd ./kernel; make clean'...
-> Building kernel module:
executing: 'cd ./kernel; make module SYSSRC=/lib/modules/4.19.0-9-amd64/source SYSOUT=/lib/modules/4.19.0-9-amd64/build'...
NVIDIA: calling KBUILD...
(Many compiler warnings about comparing between different signed variables)
Code:
/tmp/selfgz930/NVIDIA-Linux-x86_64-304.137/kernel/nv.c: In function ‘nv_start_rc_timer’:
/tmp/selfgz930/NVIDIA-Linux-x86_64-304.137/kernel/nv.c:3032:5: error: implicit declaration of function ‘init_timer’; did you mean ‘init_timers’? [-Werror=implicit-function-declaration]
init_timer(&nvl->rc_timer);
^~~~~~~~~~
init_timers
/tmp/selfgz930/NVIDIA-Linux-x86_64-304.137/kernel/nv.c:3033:28: error: assignment to ‘void (*)(struct timer_list *)’ from incompatible pointer type ‘void (*)(long unsigned int)’ [-Werror=incompatible-pointer-types]
nvl->rc_timer.function = nv_kern_rc_timer;
^
/tmp/selfgz930/NVIDIA-Linux-x86_64-304.137/kernel/nv.c:3034:18: error: ‘struct timer_list’ has no member named ‘data’
nvl->rc_timer.data = (unsigned long) nv;
^
cc1: some warnings being treated as errors
make[4]: *** [/usr/src/linux-headers-4.19.0-9-common/scripts/Makefile.build:309: /tmp/selfgz930/NVIDIA-Linux-x86_64-304.137/kernel/nv.o] Fehler 1
make[3]: *** [/usr/src/linux-headers-4.19.0-9-common/Makefile:1537: _module_/tmp/selfgz930/NVIDIA-Linux-x86_64-304.137/kernel] Fehler 2
make[2]: *** [Makefile:146: sub-make] Fehler 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make[1]: *** [Makefile:261: module] Fehler 1
make: *** [makefile:59: module] Fehler 2
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
ERROR: Installation has failed. Please see the file '/var/log/nvidia-installer.log' for details. You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.
Those two differing modprobes both seem to work.
Any thoughts on what went wrong with the installer here?
My wild guess: The driver itself may be closed source, but it requires some patch that is not included in the standard linux kernel. The installer script compiles that part on the target machine for the closed driver to work.
But your remark leads me to the assumption that this is not the usual behaviour?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.