View RSS Feed

James' openSUSE Bash Scripting (and other things) Blog - Your Comments are Welcome!

Installing the nVIDIA Video Driver the Hard Way

Rating: 15 votes, 5.00 average.
If you have an nVIDIA video card, do you have 3D support enabled? If you look into the "My Computer" icon, what does the display info say there? Here is a look at mine:

            Display Info

   Vendor:  nVidia Corporation
    Model:  GK104 [GeForce GTX 660 Ti]
2D driver:  nvidia
3D driver:  NVIDIA 331.20
I always install the nVIDIA driver the Hard Way, which is not very hard using the most recent driver and I always run the 64 bit version. I go here and get the most recent driver and download it to my PC:

nVIDIA driver 331.20 (64 bit) has been released you can find here: (README)


nVIDIA driver 331.20 (32 bit) has been released you can find here: (README)

Always take a look here for the present nVIDIA driver released versions: Unix Drivers Portal Page & Nvidia Installer HOWTO for openSUSE users

Here is the article I would look at about installing the nVIDIA driver the hard way: SDB:NVIDIA the hard way - openSUSE

In order to allow the nVIDIA driver to compile, I suggest that you do the following:

Open YaST / Software / Software Management - Select the View Button on the top left and pick Patterns. Now, you will see several Patterns listed and you want to select:


[X] Base Development
[X] Linux Kernel Development
[X] C/C++ Development
Then Press the Accept button on the bottom right and allow these applications to install.

I always add the nomodeset kernel load option to my grub menu.lst file (openSUSE 12.1) or grub.cfg file (openSUSE 12.2) for use by my normal openSUSE OS selection menu. I always restart openSUSE from the OS selection menu, I enter the kernel load option 3 to load the kernel and then switch to Run Level 3, thus not loading the desktop. The nomodeset command was already added to my grub menu before I did a reboot.

For information on How To switch to Run Level 3 to install this driver, have a look at the following Link:

How to Start openSUSE 12.3 with Grub 2 into Run Level 3 - Blogs - openSUSE Forums

I have a bash script file that can be used to install the nVIDIA proprietary video driver. You can find it here in my blog:

LNVHW - Load NVIDIA (driver the) Hard Way from runlevel 3 - Blogs - openSUSE Forums

For anyone wanting to use DKMS to install the NVIDIA driver automatically on a kernel update, have a look here:

S.A.N.D.I. - SuSE Automated NVIDIA Driver Installer - Blogs - openSUSE Forums

For all users of nVIDIA video cards and who are installing the nVIDIA Proprietary video driver, consider using YaST to find and install the nvidia-settings package and use it to setup your nVIDIA video card. I have found a very interesting site that listed all of the nVIDIA chips code names and Video cards used with here:

nouveau Wiki - CodeNames

Let me know if you have any other questions with this procedure I have prescribed. For anyone who would like install the nVIDIA drivers using a different method, have a look here:

SDB:NVIDIA drivers - openSUSE

I highly recommended you go with the The repository way in the link provided above and stay away from the 1-Click install if you do not wish to use the "Hard-Way" as described above.

For anyone who has upgraded or installed openSUSE 12.2, now using the Grub 2 OS boot selector, may want to look at my bash script here:

GNU Grub2 Command Help/Config Editor - Blogs - openSUSE Forums

Good Luck!!!!

Thank You,

Blogs: asroot : Bash : Packet Filter : C.F.U. : DKMS : Grub2Cmd : Grub 2 & Run Level 3 : GPU's : fewrup : F.S.M. : H.I. : nVIDIA : LNVHW : N.S.F. : S.A.K.C. : MMCHECK
S.A.S.I. : S.A.C.T. : S.A.N.D.I. : S.C.L.U. : S.G.T.B. : S.K.I.M. : S.L.A.V.E. : S.L.R.C. : S.T.A.R.T. : S.U.F.F. : SYSEdit : SysdCmd : UTC or GMT Time : YaST Power : Zypper Command

Submit "Installing the nVIDIA Video Driver the Hard Way" to Digg Submit "Installing the nVIDIA Video Driver the Hard Way" to Submit "Installing the nVIDIA Video Driver the Hard Way" to StumbleUpon Submit "Installing the nVIDIA Video Driver the Hard Way" to Google Submit "Installing the nVIDIA Video Driver the Hard Way" to Facebook Submit "Installing the nVIDIA Video Driver the Hard Way" to Twitter

Updated 09-Nov-2013 at 08:27 by jdmcdaniel3

openSUSE Hardware


Page 2 of 3 FirstFirst 123 LastLast
  1. jdmcdaniel3's Avatar
    NVIDIA Driver 295.59 has been released and does work with kernel 3.3, 3.4 and works with kernel 3.5 (so far) with no patch file applied at all. New features are:

    [LIST][*]Added support for the following GPUs:
    [LIST][*]NVS 5400M
    NVS 310
    GeForce GT 620M
    GeForce GT 640M
    GeForce GT 640M LE
    GeForce GT 650M
    GeForce GTX 660M
    GeForce GTX 670M
    GeForce GTX 675M
    GeForce GTX 555
    GeForce GTX 560 SE
    GeForce GT 415
    GeForce GTX 460 v2 [/LIST]
    [*]Disabled the use of certain OpenGL optimizations with Autodesk Maya and Mudbox, due to conflicts between these applications and the optimizations. Some performance loss in Autodesk Maya and Mudbox is possible, as a result. [*]Fixed a behavior issue where redundant DPMS state transitions were leading to unexpected screen blanking on DisplayPort displays. [/LIST]

    Thank You,
  2. jdmcdaniel3's Avatar
    Added support for the following GPUs:
    [LIST][*] [URL=""][COLOR=blue][FONT=inherit !important][FONT=inherit ! important]GeForce[/FONT][/FONT][/COLOR][/URL] GTX 690 [*] GeForce GTX 670 [*] GeForce 605 [*] GeForce GT 610 [*] GeForce GT 630 [*] GeForce GT 640 [*] GeForce GT 645 [/LIST]
    [*] Fixed a bug affecting some G-Sync configurations which could cause active stereo content to be inverted on some display devices. [*] Added support for calculating the physical size and DPI of each RandR 1.2 Output using the EDID Detailed Timing Description. [*] Fixed a bug that prevented a workaround for the invalid EDID in certain AUO laptop flat panels from being applied, leading to an 800x600 desktop repeated several times across the screen. [*] Fixed a bug that caused the link configuration of DisplayPort devices to be reported incorrectly in nvidia-settings. [/LIST]
    [B]Known issues:[/B] This beta release is known to cause crashes on distributions packaging older X servers, such as Fedora 8 and OpenSUSE 11.0; these issues will be addressed in a subsequent release.

    The [B]302.11[/B] [URL=""]NVIDIA[/URL][URL=""][COLOR=blue][FONT=inherit !important][FONT=inherit !important] Accelerated[/FONT][/FONT][/COLOR][/URL] Linux Graphics Driver Set for [B]Linux/x86[/B] is available for download via [URL=""]FTP[/URL].
    The [B]302.11[/B] [URL=""]NVIDIA[/URL] Accelerated Linux Graphics Driver Set for [B]Linux/x86_64[/B] is available for download via [URL=""]FTP[/URL].

    Please see the [B]README[/B] ([URL=""]x86[/URL] / [URL=""]x86_64[/URL]) for more information about this release.

    [B]Please note:[/B] This [URL=""]NVIDIA[/URL] Linux graphics driver release supports [B]GeForce 6xxx and newer [URL=""]NVIDIA[/URL] [URL=""][COLOR=blue][FONT=inherit !important][FONT=inherit !important]GPUs[/FONT][/FONT][/COLOR][/URL][/B], GeForce4 and older GPUs are supported through the [B]96.43.xx[/B] and [B]71.86.xx[/B] [URL=""]NVIDIA[/URL] legacy graphics drivers. GeForce FX GPUs are supported through the [B]173.14.xx[/B] NVIDIA legacy graphics drivers.

    [B]Please also note:[/B] If you encounter any problems with the [B]302.11[/B] NVIDIA Linux graphics driver release, please start a new thread and include a detailed description of the problem, reproduction steps and generate/attach an [FONT=Courier New][B][COLOR=Red]nvidia-bug-report.log.gz[/COLOR][/B][/FONT] file (please see [URL=""]If you have a problem, PLEASE read this first - nV News Forums[/URL] for details).

    Reproduced from the nVIDIA forums here: [URL=""]302.11 (beta) for Linux x86/x86_64 released - nV News Forums[/URL]

    Thank You,
  3. jdmcdaniel3's Avatar
    NVIDIA Driver 295.59 has been released and does work for sure with kernel 3.3, 3.4 and works with kernel 3.5 so far with no patch file applied at all.

    Thank You,
  4. tom_enos's Avatar
    I really like your script, a simple and effective way to get a job done.
    But I was thinking, why not add an option to download the latest driver?
    This my not be pretty but it works
  5. jdmcdaniel3's Avatar
    [QUOTE=tom_enos;bt502]I really like your script, a simple and effective way to get a job done.
    But I was thinking, why not add an option to download the latest driver?

    [url=]SUSE Paste[/url]
    This my not be pretty but it works[/QUOTE]

    I will check out your script. Thanks for your kind words and for the suggestion and example you have provided.

    Thank You,
  6. jdmcdaniel3's Avatar
    nVIDIA released the following message found at this link: [URL=""]NVIDIA UNIX graphics driver exploit advisory.[/URL]

    [QUOTE][SIZE=3][COLOR=black][FONT=Times New Roman]NVIDIA received notification of a security exploit that uses NVIDIA UNIX device files to map and program registers to redirect the VGA window. Through the VGA window, the exploit can access any region of physical system memory. This arbitrary memory access can be further exploited, for example, to escalate user privileges.

    Because any user with read and write access to the NVIDIA device files (which is needed to execute applications that use the GPU) could potentially exploit this vulnerability to gain access to arbitrary system memory, this vulnerability is classified as high risk by NVIDIA.

    NVIDIA is resolving this problem by blocking user-space access to registers that control redirection of the VGA window. Further, NVIDIA is also blocking user-space access to registers that control GPU-internal microcontrollers, which could be used to achieve a similar exploit.

    NVIDIA is committed to security and is working on more robust solutions to prevent malicious manipulations of GPUs.[/FONT][/COLOR][/SIZE]
    [/QUOTE][COLOR=black][FONT=Times New Roman]
    The 304.32 driver is also available for download at the NVIDIA FTP site:

    32-bit Linux: [URL][/URL]
    64-bit Linux: [URL=""]

    [/URL]Thank You.[/SIZE]
  7. jdmcdaniel3's Avatar
    nVIDIA driver version 295.71 have been released to the public.

    Thank You,
  8. jdmcdaniel3's Avatar
    The following patch file, provided by Larry Finger, can be used to patch the NVIDIA binary file for version 295.71 to work with Linux kernel 3.6. Copy the text from the code block below and save it in your $HOME/Downloads folder as the text file NVIDIA-295.71.patch

    --- kernel/nv-acpi.c.orig
    +++ kernel/nv-acpi.c
    @@ -10,6 +10,7 @@

    #define __NO_VERSION__

    +#include <linux/version.h>
    #include "nv-misc.h"
    #include "os-interface.h"
    #include "nv-linux.h"
    @@ -300,7 +301,11 @@ static int nv_acpi_remove(struct acpi_de
    if (pNvAcpiObject->notify_handler_installed)
    // no status returned for this function
    + acpi_os_wait_events_complete();

    // remove event notifier
    status = acpi_remove_notify_handler(device->handle,
    ACPI_DEVICE_NOTIFY, nv_acpi_event);

    You can use SANDI or LNVHW to patch the proprietary nVIDIA video driver version 295.71 before installing it to work with kernel version 3.6

    Thank You,
  9. jdmcdaniel3's Avatar
    nVIDIA driver version 304.37 has been released. Find links for in my blog here ...

    Thank You,
    Updated 18-Aug-2012 at 21:31 by jdmcdaniel3
  10. Sagemta's Avatar
    Since, 304.37 does its own nouveau blacklisting, do you think it may have an effect on future versions of LNVHW or SANDI?
  11. jdmcdaniel3's Avatar
    [QUOTE=Sagemta;bt537]Since, 304.37 does its own nouveau blacklisting, do you think it may have an effect on future versions of LNVHW or SANDI?[/QUOTE]

    So these two bash scripts check to see if nouveau was already blacklisted, in the manner as written in the nVIDIA documents and so it will not do it again. There will be no stack-up of the blacklist commands and so no harm should come of this.

    Thank You,
  12. jdmcdaniel3's Avatar
    The nVIDIA driver version 304.43 has been released and links are provided in the base blog entry.

    Thank You,
  13. jdmcdaniel3's Avatar
    [B][SIZE=3]Kernel Log: NVIDIA updates graphics drivers[/SIZE][/B]

    [B][COLOR=#0000ff]by Thorsten Leemhuis[/COLOR][/B] [B]

    NVIDIA's next driver generation will no longer support GeForce series 6 and 7 graphics cards. Mesa 3D jumps to version 9.0. The kernel developers plan to drop support for i386 processors.[/B]

    Read More: [URL=""]Kernel Log: NVIDIA updates graphics drivers - The H Open: News and Features[/URL]

    Copyright © 2012 Heise Media UK Ltd.

    Thank You,
  14. jdmcdaniel3's Avatar
    [COLOR=#0000ff][B][SIZE=3]nVIDIA Video Driver Version 304.51 Has Been Released[/SIZE][/B][/COLOR]

    [LIST][*]Added support for the following GPUs:
    [LIST][*]GeForce GTX 660
    GeForce GTX 650
    GeForce GT 645M
    GeForce GTX 670MX
    GeForce GTX 675MX [/LIST]
    [*]Added support for the new Quadro Sync board for Quadro Kepler GPUs. See the "Configuring Frame Lock and Genlock" chapter in the README for details. [*]Fixed an X server crash on X.Org xserver 1.13 when it is compiled without support for DRI2. [*]Fixed a regression that broke color controls on older X servers. [*]Fixed a bug that sometimes caused the display layout area of the nvidia-settings control panel to be laid out incorrectly. [*]Fixed a bug that prevented panning from working correctly after a modeswitch on some X servers with support for cursor constraining. [*]Gamma ramp and colormap adjustments now apply correctly when screen transformations such as rotation and keystone correction are in use. [*]Fixed RandR per-CRTC gamma persistence across modeswitches and VT-switches. [*]Fixed a bug that caused the X server to sometimes hang in response to input events. [*]Fixed a reduction in rendering performance for core X11 rendering on certain GPUs that occurred in the 290.series of releases. [*]Fixed a bug that prevented PowerMizer from working correctly on some boards with GDDR5 memory, such as some GeForce GT 240 SKUs. [*]Fixed a bug that caused OpenGL applications to not animate properly when a rotation or a transformation was applied on some older X server versions. [*]Enabled FXAA with Unified Back Buffers. [*]Fixed a bug that prevented the "Reset Hardware Defaults" button in the Display Settings page of nvidia-settings from being activated. [/LIST]
  15. jdmcdaniel3's Avatar
    NVIDIA Driver 304.60 has been released

    [LIST][*]Fixed a bug that caused the X server to crash if a display was put into DPMS off mode and subsequently reenabled while screen transformations are in use.[*]Fixed a bug that caused the X Resize and Rotate extension to be enabled when Xinerama is enabled. These two X extensions are incompatible and having them both enabled can confuse window managers such as KDE's kwin. RandR is now correctly disabled when Xinerama is enabled.[*]Fixed a bug causing OpenGL stereo applications to not work properly when using passive stereo modes 5 through 9 on Quadro Fermi and newer GPUs.[*]Updated nvidia-settings to report Dedicated GPU Memory (i.e., the memory dedicated exclusively to the GPU) and Total GPU Memory (i.e., Dedicated GPU Memory plus any TurboCache(TM)-accessible system memory) separately on the GPU information page.[*]Added reporting of the current utilization of Dedicated GPU Memory to the GPU information page of nvidia-settings.[*]Added support for the "Backlight" RandR output property for configuring the brightness of some notebook internal panels.[*]Fixed a bug that prevented the Ubuntu Unity launcher panel from unhiding: [url][/url][*]Fixed a bug that caused nvidia-installer to sometimes attempt to write a log file in a nonexistent directory.[*]Fixed a bug that caused incorrect input transformation after resizing an NVIDIA X screen with xserver ABI 12 (xorg-server 1.12) or newer.[*]Fixed a bug that caused GLX to leak memory when Xinerama is enabled.[/LIST]
  16. jdmcdaniel3's Avatar
    nVIDIA Linux Proprietary Video Driver version 304.64 has been released

    Added support for the following GPUs:
    VGX K1
    VGX K2
    Fixed a regression in backlight control functionality on some notebook configurations.
    Fixed a performance issue with recent Linux kernels when allocating and freeing system memory.
    Fixed a bug that sometimes prevented the display device / X screen selection menu from being displayed in nvidia-settings.
    Fixed a bug that prevented X driver gamma manipulation from working after a VT-switch on some configurations.
    Added the option "--output-file" to to allow specifying a custom filename for the log file.
    Fixed a hang when using OpenGL programs with some SLI Mosaic configurations on pre-Fermi GPUs.
    Added sections to the "Supported NVIDIA GPU Products" list for NVS, Tesla, and VGX products.
  17. jdmcdaniel3's Avatar
    NVIDIA Version 310.19 Proprietary Video Driver Release Highlights

    Added support for OpenGL 4.3.
    Added a new X configuration option, "UseHotplugEvents", to allow the suppression of RandR events when adding or removing non-DisplayPort displays. See the "X Config Options" appendix of the README for details.
    Added support for configuring stereo in nvidia-settings when stereo is enabled in the X configuration file.
    Added support for configuring the ViewPortIn and ViewPortOut for display devices in nvidia-settings.
    Fixed metamode bookkeeping when modifying the display configuration in the "X Server Display Configuration" page of nvidia-settings.
    Added support for configuring rotation and reflection per display device in nvidia-settings.
    Implemented workarounds for two Adobe Flash bugs by applying libvdpau commit ca9e637c61e80145f0625a590c91429db67d0a40 to the version of libvdpau shipped with the NVIDIA driver.
    Fixed an issue which affected the performance of moving windows of VDPAU applications when run in some composite managers.
    Added unofficial GLX protocol support (i.e., for GLX indirect rendering) for the GL_ARB_pixel_buffer_object OpenGL extension.
    Added support for HDMI 3D Stereo with Quadro Kepler and later GPUs. See the documentation for the "Stereo" X configuration option in the README for details.
    Added experimental support for OpenGL threaded optimizations, available through the __GL_THREADED_OPTIMIZATIONS environment variable. For more information, please refer to the "Threaded Optimizations" section in chapter "Specifying OpenGL Environment Variable Settings" of the README.
    Improved performance and responsiveness of windowed OpenGL applications running inside a Unity session.
  18. jdmcdaniel3's Avatar
    [LIST][*]NVIDIA Version 310.32 Proprietary Video Driver Release Highlights [*]Added support for the following GPUs:
    [LIST][*]GeForce GTX 680MX
    Tesla K20Xm [/LIST]
    [*]Fixed a bug when enabling framelock between displays connected to the same GPU as other displays with different refresh rates, which caused the latter to be incorrectly assigned to the framelock group. [*]Updated the reporting of HDMI 3D framerates and pixel clocks to be more consistent with how they are reported by HDMI 3D displays. [*]Fixed a bug that sometimes prevented rotation controls in the nvidia-settings control panel from working after changing resolutions. [*]Fixed a bug that could cause applications using GL_NV_vdpau_interop to crash during modeswitches. [*]Fixed a regression that could cause OpenGL applications to crash while compiling shaders. [*]Added a kernel module parameter, "NVreg_EnablePCIeGen3", which can be used to enable PCIe gen 3 when possible. Note that on many systems where the NVIDIA driver does not allow PCIe gen 3 by default, stability problems can be expected when this option is enabled: users should do so at their own risk. [*]Fixed a VDPAU bug that could cause the X server to hang when decoding some corrupted video streams. [*]Renamed VGX products to GRID products in the "Supported NVIDIA GPU Products" list. [*]Added support for xserver ABI 14 (xorg-server 1.14). [*]Fixed a bug in nvidia-settings that could cause the wrong resolution to be set in basic mode for setups based on one display per X screen. [*]Fixed library dependency by linking it with instead of while creating it. [*]Improved performance of OpenGL framebuffer object binds with Xinerama enabled by 2000-3000% when the application's windows do not span screen boundaries. [*]Fix performance issues when using some versions of HyperMesh with Quadro GPUs. [/LIST]

    Thank You,
  19. jdmcdaniel3's Avatar
    [LIST][*]NVIDIA Version 310.40 Proprietary Video Driver Release Highlights[*]Added support for the following GPUs:
    [LIST]Quadro K4000
    Quadro K2000
    Quadro K2000D
    Quadro K600
    GeForce G205M
    GeForce GT 240M LE
    GeForce 405M
    GeForce 610
    GeForce 615
    GeForce 620M
    GeForce GT 625M
    GeForce GT 625 (OEM)
    GeForce GT 635
    GeForce 705M
    GeForce 710M
    GeForce GT 710M
    GeForce GT 720A
    GeForce GT 730M
    Tesla X2070
    Tesla S2050
    Tesla K20s[/LIST]
    [*]Reduced the amount of time needed to establish framelock in some stereo configurations with many monitors.[*]Fixed a bug where glXSwapIntervalEXT failed to set a swap interval value of zero in certain situations.[/LIST]
  20. jdmcdaniel3's Avatar
    nVIDIA driver 310.44 has been released with the following fixes.

    Fixed CVE-2013-0131: NVIDIA UNIX GPU Driver ARGB Cursor Buffer Overflow in "NoScanout" Mode. This buffer overflow, which occurred when an X client installed a large ARGB cursor on an X server running in NoScanout mode, could cause a denial of service (e.g., an X server segmentation fault), or could be exploited to achieve arbitrary code execution.
Page 2 of 3 FirstFirst 123 LastLast