NVIDIA drivers install seems to be difficult to understand

I decide during install not to give access to network repositories.
Then I run zypper up.

This first install come at least with a mix of NVIDIA driver version 570 and 580.

nvidia-open-driver-G06-signed-kmp-meta version 570.172.08-lp156.12.1
nvidia-open-driver-G06-signed-kmp-azure version 580.82.07_k6.4.0_150600.8.48-150600.3.63.1
nvidia-open-driver-G06-signed-kmp-default version 580.82.07_k6.4.0_150600.23.65-150600.3.63.1

Some drivers with the two different versions (570 and 580) were installed simultaneously.

I decide to reinstall and give access to network repositories.

The following NVIDIA drivers were installed :

user_install@localhost:~> sudo zypper se -si nvidia-
Loading repository data…
Reading installed packages…

S | Name | Type | Version | Arch | Repository
—±------------------------------------------±--------±---------------------------------------±-------±-----------
i | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2 | x86_64 | update-sle (15.6)
i | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15

I see that two driver with the same version are installed from two different repositories. I found that surprising.

Then I runzypper up

Then the following NVIDIA drivers were installed :

user_install@localhost:~> sudo zypper se -si nvidia-
[sudo] password for root:
Loading repository data…
Reading installed packages…

S | Name | Type | Version | Arch | Repository
—±------------------------------------------±--------±--------------------------------------------±-------±----------
i | libnvidia-egl-gbm1 | package | 1.1.2-lp156.5.1 | x86_64 | repo-non-free (15.6)
i | libnvidia-gpucomp | package | 580.82.07-lp156.39.1 | x86_64 | repo-non-free (15.6)
i | nvidia-common-G06 | package | 580.82.07-lp156.39.1 | x86_64 | repo-non-free (15.6)
i | nvidia-compute-G06 | package | 580.82.07-lp156.39.1 | x86_64 | repo-non-free (15.6)
i | nvidia-compute-utils-G06 | package | 580.82.07-lp156.39.1 | x86_64 | repo-non-free (15.6)
i | nvidia-gl-G06 | package | 580.82.07-lp156.39.1 | x86_64 | repo-non-free (15.6)
i | nvidia-modprobe | package | 580.82.07-150400.9.3.1 | x86_64 | update-sle (15.6)
i | nvidia-modprobe | package | 580.82.07-150400.9.3.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i | nvidia-open-driver-G06-signed-kmp-default | package | 580.82.07_k6.4.0_150600.23.65-150600.3.63.1 | x86_64 | update-sle (15.6)
i | nvidia-open-driver-G06-signed-kmp-default | package | 580.82.07_k6.4.0_150600.23.65-150600.3.63.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2 | x86_64 | update-sle (15.6)
i | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i | nvidia-persistenced | package | 580.82.07-150400.9.3.1 | x86_64 | update-sle (15.6)
i | nvidia-persistenced | package | 580.82.07-150400.9.3.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i | nvidia-userspace-meta-G06 | package | 580.82.07-lp156.12.1 | noarch | repo-non-free (15.6)
i | nvidia-video-G06 | package | 580.82.07-lp156.39.1 | x86_64 | repo-non-free (15.6)

Question 1 :
What packages should I found.
Is there any list showing all the mandatory packages

Question 2 :
Why some packages are installed simultaneously from two different repositories.
Is it safe two delete one of the duplicate and how to choose which one to keep

Question 3 :
Why two different version of a package can be installed simultaneously.

Any comments are welcome…

Next time please use preformatted text tags </> instead of quote to post terminal output.

Question 1: according to the output, the correct packages (and versions) are installed

Question 2: they are not installed from two repositories but are available in two repos. You seem to have duplicate repos. But this can only be verified by showing proper output of zypper lr -d

Question 3. Kernel and kernel modules are multiversion packages. You always have more than one version installed. If one kernel fails, you can still boot from the prior version.

user_install@localhost:~> zypper lr -d
#  | Alias                           | Name                                                             | Enabled | GPG Check | Refresh | Keep | Priority | Type   | URI                                                                                  | Service
---+---------------------------------+------------------------------------------------------------------+---------+-----------+---------+------+----------+--------+--------------------------------------------------------------------------------------+---------
 1 | NVIDIA:repo-non-free            | repo-non-free (15.6)                                             | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | https://download.nvidia.com/opensuse/leap/15.6                                       | NVIDIA
 2 | openSUSE-Leap-15.6-1            | openSUSE-Leap-15.6-1                                             | No      | ----      | ----    | -    |   99     | rpm-md | hd:/?device=/dev/disk/by-id/usb-JetFlash_Transcend_8GB_0793PK7KZ3DM4PI4-0:0-part2    | 
 3 | openSUSE:repo-non-oss           | repo-non-oss (15.6)                                              | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://cdn.opensuse.org/distribution/leap/15.6/repo/non-oss?mediahandler=curl2       | openSUSE
 4 | openSUSE:repo-non-oss-debug     | repo-non-oss-debug (15.6)                                        | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/distribution/leap/15.6/repo/non-oss?mediahandler=curl2 | openSUSE
 5 | openSUSE:repo-openh264          | repo-openh264 (15.6)                                             | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://codecs.opensuse.org/openh264/openSUSE_Leap?mediahandler=curl2                 | openSUSE
 6 | openSUSE:repo-oss               | repo-oss (15.6)                                                  | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://cdn.opensuse.org/distribution/leap/15.6/repo/oss?mediahandler=curl2           | openSUSE
 7 | openSUSE:repo-oss-debug         | repo-oss-debug (15.6)                                            | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/distribution/leap/15.6/repo/oss?mediahandler=curl2     | openSUSE
 8 | openSUSE:repo-oss-source        | repo-oss-source (15.6)                                           | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/source/distribution/leap/15.6/repo/oss?mediahandler=curl2    | openSUSE
 9 | openSUSE:update-backports       | update-backports (15.6)                                          | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://cdn.opensuse.org/update/leap/15.6/backports?mediahandler=curl2                | openSUSE
10 | openSUSE:update-backports-debug | update-backports-debug (15.6)                                    | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/update/leap/15.6/backports_debug?mediahandler=curl2          | openSUSE
11 | openSUSE:update-non-oss         | update-non-oss (15.6)                                            | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://cdn.opensuse.org/update/leap/15.6/non-oss?mediahandler=curl2                  | openSUSE
12 | openSUSE:update-non-oss-debug   | update-non-oss-debug (15.6)                                      | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/update/leap/15.6/non-oss?mediahandler=curl2            | openSUSE
13 | openSUSE:update-oss             | update-oss (15.6)                                                | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://cdn.opensuse.org/update/leap/15.6/oss?mediahandler=curl2                      | openSUSE
14 | openSUSE:update-oss-debug       | update-oss-debug (15.6)                                          | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/update/leap/15.6/oss?mediahandler=curl2                | openSUSE
15 | openSUSE:update-sle             | update-sle (15.6)                                                | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://cdn.opensuse.org/update/leap/15.6/sle?mediahandler=curl2                      | openSUSE
16 | openSUSE:update-sle-debug       | update-sle-debug (15.6)                                          | No      | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/update/leap/15.6/sle?mediahandler=curl2                | openSUSE
17 | repo-backports-debug-update     | Update repository of openSUSE Backports (Debug)                  | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/update/leap/15.6/backports_debug/                       | 
18 | repo-backports-update           | Update repository of openSUSE Backports                          | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://download.opensuse.org/update/leap/15.6/backports/                             | 
19 | repo-debug                      | Debug Repository                                                 | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/debug/distribution/leap/15.6/repo/oss/                  | 
20 | repo-debug-non-oss              | Debug Repository (Non-OSS)                                       | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/debug/distribution/leap/15.6/repo/non-oss/              | 
21 | repo-debug-update               | Update Repository (Debug)                                        | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/debug/update/leap/15.6/oss/                             | 
22 | repo-debug-update-non-oss       | Update Repository (Debug, Non-OSS)                               | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/debug/update/leap/15.6/non-oss/                         | 
23 | repo-non-oss                    | Non-OSS Repository                                               | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://download.opensuse.org/distribution/leap/15.6/repo/non-oss/                    | 
24 | repo-openh264                   | Open H.264 Codec (openSUSE Leap)                                 | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://codecs.opensuse.org/openh264/openSUSE_Leap/                                   | 
25 | repo-oss                        | Main Repository                                                  | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://download.opensuse.org/distribution/leap/15.6/repo/oss/                        | 
26 | repo-sle-debug-update           | Update repository with updates from SUSE Linux Enterprise 15 (-> | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/debug/update/leap/15.6/sle/                             | 
27 | repo-sle-update                 | Update repository with updates from SUSE Linux Enterprise 15     | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://download.opensuse.org/update/leap/15.6/sle/                                   | 
28 | repo-source                     | Source Repository                                                | No      | ----      | ----    | -    |   99     | N/A    | http://download.opensuse.org/source/distribution/leap/15.6/repo/oss/                 | 
29 | repo-update                     | Main Update Repository                                           | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://download.opensuse.org/update/leap/15.6/oss                                    | 
30 | repo-update-non-oss             | Update Repository (Non-Oss)                                      | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | http://download.opensuse.org/update/leap/15.6/non-oss/                               |
user_install@localhost:~> sudo zypper se -si nvidia-
[sudo] password for root: 
Sorry, try again.
[sudo] password for root: 
Loading repository data...
Reading installed packages...

S  | Name                                      | Type    | Version                                     | Arch   | Repository
---+-------------------------------------------+---------+---------------------------------------------+--------+-------------------------------------------------------------
i  | libnvidia-egl-gbm1                        | package | 1.1.2-lp156.5.1                             | x86_64 | repo-non-free (15.6)
i  | libnvidia-gpucomp                         | package | 580.82.07-lp156.39.1                        | x86_64 | repo-non-free (15.6)
i  | nvidia-common-G06                         | package | 580.82.07-lp156.39.1                        | x86_64 | repo-non-free (15.6)
i  | nvidia-compute-G06                        | package | 580.82.07-lp156.39.1                        | x86_64 | repo-non-free (15.6)
i  | nvidia-compute-utils-G06                  | package | 580.82.07-lp156.39.1                        | x86_64 | repo-non-free (15.6)
i  | nvidia-gl-G06                             | package | 580.82.07-lp156.39.1                        | x86_64 | repo-non-free (15.6)
i  | nvidia-modprobe                           | package | 580.82.07-150400.9.3.1                      | x86_64 | update-sle (15.6)
i  | nvidia-modprobe                           | package | 580.82.07-150400.9.3.1                      | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i  | nvidia-open-driver-G06-signed-kmp-default | package | 580.82.07_k6.4.0_150600.23.65-150600.3.63.1 | x86_64 | update-sle (15.6)
i  | nvidia-open-driver-G06-signed-kmp-default | package | 580.82.07_k6.4.0_150600.23.65-150600.3.63.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i  | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2      | x86_64 | update-sle (15.6)
i  | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2      | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i  | nvidia-persistenced                       | package | 580.82.07-150400.9.3.1                      | x86_64 | update-sle (15.6)
i  | nvidia-persistenced                       | package | 580.82.07-150400.9.3.1                      | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i  | nvidia-userspace-meta-G06                 | package | 580.82.07-lp156.12.1                        | noarch | repo-non-free (15.6)
i  | nvidia-video-G06                          | package | 580.82.07-lp156.39.1                        | x86_64 | repo-non-free (15.6)

As already suspected, you have duplicate repos. You can leave it as it is or remove repository number 17-30 as they are duplicates of 3-16. 1 and 3-16 are managed by a service and should be kept.

Duplicate repositories lead to double listing of installed packages when querying via zypper se -si

According from opensuse forum ( SDB:Zypper manual (plain) - openSUSE ):

Query Commands
       search (se) [options] [querystring|capability]...
           Search for packages matching any of the given search strings. * and ? wildcard characters can be used
           within search strings. If the search string is enclosed in /  (e.g. /^k.*e$/) it’s interpreted as a
           regular expression. See the install command for details about how to specify a capability. + Results of
           the search are printed in a table with columns S+tatus+, Name, Summary and Type of package. + In the
           detailed view (se -s) all available instances of matching packages are shown; each version in each
           repository on a separate line, with columns S+tatus+, Name, Type, Version, Arch+itecture+ and Repository.
           For installed packages Repository shows either a repository that provides exactly the installed version of
           the package, or, if the exact version is not provided by any known repo, (System Packages) (or @System).
           Those installed packages not provided by any repo are often denoted as being unwanted, orphaned or
           dropped. + The S+tatus+ column can contain the following values:

           i+
               installed by user request

           i
               installed automatically (by the resolver, see section Automatically installed packages)

           v
               a different version is installed

           empty
               neither of the above cases

           .l
               is shown in the 2nd column if the item is locked (see section Package Locks Management)

So all the NVIDIA driver are installed because of ‘i’ in the first column.

So 2 versions from different repositories are installed with 2 different versions

i  | nvidia-open-driver-G06-signed-kmp-default | package | 580.82.07_k6.4.0_150600.23.65-150600.3.63.1 | x86_64 | update-sle (15.6)
i  | nvidia-open-driver-G06-signed-kmp-default | package | 580.82.07_k6.4.0_150600.23.65-150600.3.63.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i  | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2      | x86_64 | update-sle (15.6)
i  | nvidia-open-driver-G06-signed-kmp-default | package | 570.169_k6.4.0_150600.21-150600.3.53.2      | x86_64 | Update repository with updates from SUSE Linux Enterprise 15

I did not do any actions.
All actions were done by the installer.

Ok for the repositories.

But what about the duplicate installed drivers ?

No immediate action needed.

If you clean up your repo list, you will see that the output of the command zypper se -si nvidia will be reduced. The duplicates will be gone. The 2 versions of the kmp package are no issue. You can keep the old version or remove it via the multiversion view in Myrlyn or YaST software. As explained, kernel and kernel module packages (kmp) are multiversion packages.

Thank you for helping.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.