Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package request: nvidia-open #37123

Closed
ghost opened this issue May 14, 2022 · 16 comments
Closed

Package request: nvidia-open #37123

ghost opened this issue May 14, 2022 · 16 comments
Labels
request Package request

Comments

@ghost
Copy link

ghost commented May 14, 2022

https://github.com/NVIDIA/open-gpu-kernel-modules

@paper42 paper42 added the request Package request label May 15, 2022
@hervyqa
Copy link
Contributor

hervyqa commented May 17, 2022

Pkgbuild archlinux https://github.com/archlinux/svntogit-packages/blob/packages/nvidia-open/trunk/PKGBUILD

@ghost
Copy link
Author

ghost commented May 22, 2022

Any updates? 🙄

@mvf
Copy link
Contributor

mvf commented May 22, 2022

There's no stable release to package yet. The open-source kernel driver 515.43.04 is currently in alpha (for desktop use) 1 and requires matching userspace components that are in beta 2.

Footnotes

  1. https://developer.nvidia.com/blog/nvidia-releases-open-source-gpu-kernel-modules/

  2. https://www.nvidia.com/download/driverResults.aspx/187826/en-us

@ghost
Copy link
Author

ghost commented May 31, 2022

515.48.07 was released today as the first stable open source NVIDIA driver. I hope to see it in the repositories soon (:

@abenson
Copy link
Contributor

abenson commented May 31, 2022

I'll look at making it an option. For now, I think we'll continue to ship the proprietary kernel modules due to their wider hardware support.

The proprietary flavor supports the GPU architectures Maxwell, Pascal, Volta, Turing, Ampere, and forward.

The open flavor of kernel modules supports Turing, Ampere, and forward. The open kernel modules cannot support GPUs before Turing, because the open kernel modules depend on the GPU System Processor (GSP) first introduced in Turing.

https://us.download.nvidia.com/XFree86/Linux-x86_64/515.48.07/README/kernel_open.html

@ghost
Copy link
Author

ghost commented May 31, 2022

It would be nice.

@abenson
Copy link
Contributor

abenson commented May 31, 2022

Out of curiosity, what GPU do you have, and are you on an Optimus system?

@ghost
Copy link
Author

ghost commented Jun 1, 2022

I am using a desktop GTX 1660 Super, it is supported by open source drivers. I use Sway and the old driver (current in Void repositories) causes artifacts when using it. In Arch Linux, thanks to the new driver, Sway works fine.

@ghost

This comment was marked as off-topic.

@apprehensions
Copy link
Contributor

currently i am trying (i have no deep knowledge of DKMS or void-packages) to package this and have no clue how to make it build the modules if it requests a existing kernel

 [ nvidia            ]  CC           ../common/uproc/os/libos-v2.0.0/debug/logdecode.c
 [ nvidia            ]  CC           _out/Linux_x86_64/g_nvid_string.c
 [ nvidia            ]  LD           _out/Linux_x86_64/nv-kernel.o
 [ nvidia            ]  OBJCOPY      _out/Linux_x86_64/nv-kernel.o
make[1]: Leaving directory '/builddir/open-gpu-kernel-modules-515.49.06/src/nvidia'
cd kernel-open/nvidia/ && ln -sf ../../src/nvidia/_out/Linux_x86_64/nv-kernel.o nv-kernel.o_binary
make -C kernel-open modules
make[1]: Entering directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make[2]: Entering directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make[2]: *** /lib/modules/5.18.9_1/build: No such file or directory.  Stop.
make[2]: Leaving directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make[1]: *** [Makefile:82: modules] Error 2
make[1]: Leaving directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make: *** [Makefile:50: modules] Error 2
=> ERROR: nvidia-open-515.49.06_1: do_build: '${make_cmd} ${makejobs} ${make_build_args} ${make_build_target}' exited with 2
=> ERROR:   in do_build() at common/build-style/gnu-makefile.sh:14

@ghost
Copy link
Author

ghost commented Jul 9, 2022

currently i am trying (i have no deep knowledge of DKMS or void-packages) to package this and have no clue how to make it build the modules if it requests a existing kernel

 [ nvidia            ]  CC           ../common/uproc/os/libos-v2.0.0/debug/logdecode.c
 [ nvidia            ]  CC           _out/Linux_x86_64/g_nvid_string.c
 [ nvidia            ]  LD           _out/Linux_x86_64/nv-kernel.o
 [ nvidia            ]  OBJCOPY      _out/Linux_x86_64/nv-kernel.o
make[1]: Leaving directory '/builddir/open-gpu-kernel-modules-515.49.06/src/nvidia'
cd kernel-open/nvidia/ && ln -sf ../../src/nvidia/_out/Linux_x86_64/nv-kernel.o nv-kernel.o_binary
make -C kernel-open modules
make[1]: Entering directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make[2]: Entering directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make[2]: *** /lib/modules/5.18.9_1/build: No such file or directory.  Stop.
make[2]: Leaving directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make[1]: *** [Makefile:82: modules] Error 2
make[1]: Leaving directory '/builddir/open-gpu-kernel-modules-515.49.06/kernel-open'
make: *** [Makefile:50: modules] Error 2
=> ERROR: nvidia-open-515.49.06_1: do_build: '${make_cmd} ${makejobs} ${make_build_args} ${make_build_target}' exited with 2
=> ERROR:   in do_build() at common/build-style/gnu-makefile.sh:14

If I am not mistaken, you need to export KERNEL_UNAME. Here's how it's done in KISS Linux.

@apprehensions
Copy link
Contributor

apprehensions commented Jul 9, 2022

the way xbps-src works is it is built in a chroot or a different system from the host system.
doing this is impossible,

kiss(1) and makepkg(1) both use the host system as the builder.

edit: i really can't seem to figure out a way to make this build for the system's kernel. @abenson can you help?

@apprehensions
Copy link
Contributor

it seems i am getting somewhere:

~  $ doas dkms install -m nvidia-open -v 515.49.06                                 

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
'make' -j6 NV_EXCLUDE_BUILD_MODULES='' KERNEL_UNAME=5.18.9_1 modules...(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.18.9_1 (x86_64)
Consult /var/lib/dkms/nvidia-open/515.49.06/build/make.log for more information.

i am building manually for logging.

make[1]: Entering directory '/usr/src/kernel-headers-5.18.9_1'
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: gcc (GCC) 10.2.1 20201203
  You are using:           cc (GCC) 10.2.1 20201203
make[2]: *** No rule to make target '/var/lib/dkms/nvidia-open/515.49.06/build/nvidia/nv-kernel.o_binary', needed by '/var/lib/dkms/nvidia-open/515.49.06/build/nvidia/nv-kernel.o'.  Stop.
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1838: /var/lib/dkms/nvidia-open/515.49.06/build] Error 2
make[1]: Leaving directory '/usr/src/kernel-headers-5.18.9_1'
make: *** [Makefile:82: modules] Error 2

@apprehensions
Copy link
Contributor

apprehensions commented Jul 10, 2022

i have managed to make a shitty but working template:
apprehensions@8d548cc

note: Xorg does NOT work

@ghost
Copy link
Author

ghost commented Dec 10, 2022

It has been a long time since I opened this issue. I switched from Void Linux. I am closing this, if anyone needs the nvidia-open package, create a new issue.

@ghost ghost closed this as completed Dec 10, 2022
@apprehensions
Copy link
Contributor

hi @nvidialinuxuser , nice that we both switched lol

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
request Package request
Projects
None yet
Development

No branches or pull requests

5 participants