Giter Site home page Giter Site logo

nvidia-all's Introduction

Nvidia driver latest to 396 series AIO installer

LIBGLVND compatible, with 32 bit libs and DKMS enabled out of the box (you will still be asked if you want to use the regular package). Installs for all currently installed kernels. Comes with custom patches to enhance kernel compatibility, dynamically applied when you're requesting a driver that's not compatible OOTB with your currently installed kernel(s). Unwanted packages can be disabled with switches in the PKGBUILD. Defaults to complete installation.

Huge thanks to Isaak I. Aleksandrov who has been much faster at offering compat patches than myself for a good while now! https://gitlab.com/EULA

You may need/want to add a pacman hook for nvidia depending on your setup : https://wiki.archlinux.org/index.php/NVIDIA#DRM_kernel_mode_setting

Vulkan dev drivers : https://developer.nvidia.com/vulkan-driver

Regular drivers : https://www.nvidia.com/object/unix.html

How to run the installer

git clone https://github.com/Frogging-Family/nvidia-all.git
cd nvidia-all
makepkg -si

Then follow the prompts.

DKMS or regular?

DKMS is recommended as it allows for automatic module rebuilding on kernel updates. As long as you're on the same major version (5.8.x for example), you won't need to regenerate the packages on updates, which is a huge QoL feature. Regular modules can also be problematic on Manjaro due to differences in kernel hooking mechanisms compared to Arch. So if in doubt, go DKMS.

My DKMS driver installed with kernel X.1 doesn't work/build anymore after I upgraded to kernel X.2! Help!

  • Simply rebuild the packages so the script can detect your currently installed kernel(s) and patch your driver accordingly to fix compatibility issues.

How to generate a package for a driver that isn't listed (390 and lower branches are not supported) :

  • When you are prompted for driver version, select "custom" (choice 8).
  • You'll then be asked the branch group. Select either "Vulkan dev" (choice 2) for Vulkan dev drivers or "stable or regular beta" (choice 1) for every other driver.
  • Now you have to enter the version number of the desired driver. Vulkan dev drivers version is usually formatted as mainbranch.version.subversion (i.e.: 415.22.01) while the stable or regular beta drivers version is usually mainbranch.version (i.e.: 415.25)
  • To finish, you'll be asked if you want dkms(recommended) or regular modules, similarly to the usual drivers versions.

Optimus users :

Mostlyportable-gcc users :

nvidia-all's People

Contributors

begin-theadventure avatar cabopust avatar codingkoopa avatar dylanmtaylor avatar electwix avatar flindeberg avatar gardotd426 avatar jebaitedneko avatar k0bin avatar lewiji avatar netbospl avatar notpentadactyl avatar phush0 avatar pkejval avatar pongo1231 avatar ptr1337 avatar qumaciel avatar rosegayming avatar ryzendew avatar saancreed avatar shyvortex avatar sid127 avatar snoop05 avatar thojohns avatar timocapa avatar tk-glitch avatar vash63 avatar ventureoo avatar yuiiio avatar yvieta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nvidia-all's Issues

VK_ERROR_INITIALIZATION_FAILED With Unreal Engine 4 Games

I encountered an issue when using a combination of linux-tkg kernel (in this case linux511-tkg-upds-5.11.17-152-x86_64) with nvidia drivers (tested on both 455.50.10 and 460.67).

With Unreal Engine 4 games, such as TO4 (https://discord.com/channels/155794864305471497/803665151102025778/837351849275293717), the game crashes with the following error.

LowLevelFatalError [File:Unknown] [Line: 794] Result failed, VkResult=-3 at D:/Build/++UE4/Sync/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:493 with error VK_ERROR_INITIALIZATION_FAILED Signal 11 caught.

Other vulkan games, like Unity vulkan games, or open source engines, seem to work fine. Also, Beyond a Steel Sky, another UE4 game seems to work fine.

I am running Manjaro with a GTX 1070. If I use manjaro's 5.10 kernel with 460.73.01 then everything seems to work fine.

error: incompatible gcc/plugin versions

Hello, so I'm trying to build the dkms module on linux-tkg but I'm getting this error:

DKMS make.log for nvidia-465.31 for kernel 5.11.11-144-tkg-upds (x86_64)
mié 16 jun 2021 21:06:41 CEST
make[1]: se entra en el directorio '/usr/lib/modules/5.11.11-144-tkg-upds/build'
scripts/Makefile.lib:8: 'always' is deprecated. Please use 'always-y' instead
  SYMLINK /var/lib/dkms/nvidia/465.31/build/nvidia/nv-kernel.o
  SYMLINK /var/lib/dkms/nvidia/465.31/build/nvidia-modeset/nv-modeset-kernel.o
  CC [M]  /var/lib/dkms/nvidia/465.31/build/nvidia-peermem/nvidia-ib-peermem-stub.o
cc1: error: incompatible gcc/plugin versions
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/structleak_plugin.so
make[2]: *** [scripts/Makefile.build:279: /var/lib/dkms/nvidia/465.31/build/nvidia-peermem/nvidia-ib-peermem-stub.o] Error 1
make[2]: *** Se espera a que terminen otras tareas....
make[1]: *** [Makefile:1809: /var/lib/dkms/nvidia/465.31/build] Error 2
make[1]: se sale del directorio '/usr/lib/modules/5.11.11-144-tkg-upds/build'
make: *** [Makefile:80: modules] Error 2

I tried rebuilding the kernel but didn't work, is this issue similar to #36 ? The module is correctly compiled for the normal kernel but it doesn't work for linux-tkg, any suggestion?

Thanks

Unable to install the newest 495.44 driver

Hi, trying to install the newer driver and it seems to fail here:

==> Starting package_nvidia-utils-tkg()...
readelf: Error: '/home/liam/.local/share/Trash/files/nvidia-all' is not an ordinary file
readelf: Error: '(1)/nvidia-all/pkg/nvidia-utils-tkg/usr/lib/libcuda.so.495.44': No such file
ln: failed to create symbolic link '(1)/nvidia-all/pkg/nvidia-utils-tkg/usr/lib/': No such file or directory
==> ERROR: A failure occurred in package_nvidia-utils-tkg().
Aborting...
-> exit cleanup done
-> exit cleanup done

Full log: https://gist.github.com/LiamDawe/ec7e94a1a20243b7c7bc2c554905c125

NVIDIA 470 on Arch

Hey, tried installing with the custom option for the new NVIDIA 470 driver.

Gets stuck here:

==> Starting package_nvidia-egl-wayland-tkg()...
install: cannot stat 'libnvidia-egl-wayland.so.1.1.5': No such file or directory
==> ERROR: A failure occurred in package_nvidia-egl-wayland-tkg().

How to uninstall the drivers

Hello,
I'm interested in trying out the beta vulkan drivers, but I'd rather know how I am supposed to uninstall them before I do anything. Do you have any indications ?
I am on Manjaro i3.

Thank you very much.

Screen Tearing

Have been experiencing a lot of screen tearing in media playback and scrolling of websites. What could be the problem? Installed version is 455, GTX 980TI for the card.

No Vulkan Support without using VK_ICD_FILENAMES

So, I went over to the darkside and got an RTX 3090 (I know. Hush. 🐸). I used nvidia-all to install the necessary driver, and Vulkan won't work without first specifying VK_ICD_FILENAMES.

I've always used AMD GPUs, but in all my research before going to Nvidia I never saw anywhere where it was stated that you'd have to specify VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json in order to have any vulkan support.

When I put that in /etc/environment, everything works as expected, but surely that's not expected behavior, is it? Everything I've ever seen says all you need to do is install nvidia-utils, the nvidia drivers, and the 64 and 32-bit vulkan icd loader, and you'd have Vulkan support with no other tweaks.

But without specifying nvidia_icd.json, Lutris, Steam, vulkaninfo, vkcube, and all other vulkan stuff says I have no Vulkan support.

vulkaninfo go brrrrrrr with

ERROR: [Loader Message] Code 0 : /usr/lib32/amdvlk32.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /opt/amdgpu-pro/lib/i386-linux-gnu/amdvlk32.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib32/libvulkan_intel.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib32/libvulkan_radeon.so: wrong ELF class: ELFCLASS32
ERROR at /build/vulkan-tools/src/Vulkan-Tools-1.2.151/vulkaninfo/vulkaninfo.h:665:vkCreateInstance failed with ERROR_OUT_OF_HOST_MEMORY

I don't know if it's just the newness of the GPU, or what, but like I said, if I actually use VK_ICD_FILENAMES everything works fine and I get 350 fps in Doom Eternal @ 1440 so it's working flawlessly other than this.

If it's intended behavior/not your issue feel free to close

🐸

Build failing with latest vulkan beta - 455.50.02

Hello,
I manually updated customization.cfg with _driver_branch="vulkandev" and _driver_version="455.50.02". Below is the error I receive after executing makepkg -si

-> Applying linux-version.diff for 5.10.3-106-tkg-upds...
patching file nvidia-drm/nvidia-drm-gem-nvkms-memory.c
patching file nvidia-drm/nvidia-drm-encoder.c
patching file nvidia-drm/nvidia-drm-drv.c
patching file nvidia-drm/nvidia-drm-connector.c
patching file common/inc/nv.h
Hunk #1 succeeded at 36 with fuzz 2 (offset 18 lines).
patching file nvidia-drm/nvidia-drm-gem.h
Hunk #1 succeeded at 45 with fuzz 1 (offset 7 lines).
patching file nvidia-drm/nvidia-drm-helper.c
Hunk #1 succeeded at 29 with fuzz 1.
patching file nvidia-drm/nvidia-drm-linux.c
patching file nvidia-uvm/uvm_linux.h
patching file nvidia/nvlink_linux.c
Hunk #1 succeeded at 39 with fuzz 1 (offset 2 lines).
patching file nvidia/os-interface.c
Hunk #1 succeeded at 24 with fuzz 2 (offset 10 lines).
patching file nvidia-modeset/nvidia-modeset-linux.c
  -> Applying 455 crashfix for 5.10.3-106-tkg-upds...
patching file nvidia-modeset/nvidia-modeset-linux.c
Hunk #1 succeeded at 23 (offset 2 lines).
Hunk #2 FAILED at 171.
Hunk #3 succeeded at 314 with fuzz 1 (offset 115 lines).
1 out of 3 hunks FAILED -- saving rejects to file nvidia-modeset/nvidia-modeset-linux.c.rej
==> ERROR: A failure occurred in prepare().
    Aborting...
  -> exit cleanup done

Can someone please help me to fix this ?

nvidia-settings icon is not visible for KDE

After this commit 05233ee, the nvidia-settings icon is not visible for KDE. Reverting it locally made the icon be displayed again. I haven't opened a PullRequest because I'm not sure about the other desktop environments.

Linux 5.12 - DKMS module isn't compiling

Logfile:

DKMS make.log for nvidia-465.24.02 for kernel 5.12.0-150-tkg-bmq (x86_64)
St 28. dubna 2021, 09:14:23 CEST
make[1]: Vstupuje se do adresáře „/usr/lib/modules/5.12.0-150-tkg-bmq/build“
SYMLINK /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-kernel.o
SYMLINK /var/lib/dkms/nvidia/465.24.02/build/nvidia-modeset/nv-modeset-kernel.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-peermem/nvidia-ib-peermem-stub.o
LD [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-ib-peermem-stub.o
CONFTEST: set_pages_uc
CONFTEST: hash__remap_4k_pfn
CONFTEST: list_is_first
CONFTEST: set_memory_uc
CONFTEST: set_memory_array_uc
CONFTEST: set_pages_array_uc
CONFTEST: acquire_console_sem
CONFTEST: console_lock
CONFTEST: ioremap_cache
CONFTEST: ioremap_wc
CONFTEST: sg_alloc_table
CONFTEST: acpi_walk_namespace
CONFTEST: pci_get_domain_bus_and_slot
CONFTEST: get_num_physpages
CONFTEST: efi_enabled
CONFTEST: pde_data
CONFTEST: proc_remove
CONFTEST: pm_vt_switch_required
CONFTEST: xen_ioemu_inject_msi
CONFTEST: phys_to_dma
CONFTEST: get_dma_ops
CONFTEST: dma_attr_macros
CONFTEST: dma_map_page_attrs
CONFTEST: write_cr4
CONFTEST: of_get_property
CONFTEST: of_find_node_by_phandle
CONFTEST: of_node_to_nid
CONFTEST: pnv_pci_get_npu_dev
CONFTEST: of_get_ibm_chip_id
CONFTEST: node_end_pfn
CONFTEST: pci_bus_address
CONFTEST: pci_stop_and_remove_bus_device
CONFTEST: pci_remove_bus_device
CONFTEST: register_cpu_notifier
CONFTEST: cpuhp_setup_state
CONFTEST: dma_map_resource
CONFTEST: backlight_device_register
CONFTEST: get_backlight_device_by_name
CONFTEST: timer_setup
CONFTEST: pci_enable_msix_range
CONFTEST: kernel_read_has_pointer_pos_arg
CONFTEST: kernel_write
CONFTEST: kthread_create_on_node
CONFTEST: of_find_matching_node
CONFTEST: dma_direct_map_resource
CONFTEST: dev_is_pci
CONFTEST: tegra_get_platform
CONFTEST: tegra_bpmp_send_receive
CONFTEST: flush_cache_all
CONFTEST: vmf_insert_pfn
CONFTEST: jiffies_to_timespec
CONFTEST: ktime_get_raw_ts64
CONFTEST: ktime_get_real_ts64
CONFTEST: full_name_hash
CONFTEST: hlist_for_each_entry
CONFTEST: pci_enable_atomic_ops_to_root
CONFTEST: vga_tryget
CONFTEST: iterate_fd
CONFTEST: pgprot_decrypted
CONFTEST: seq_read_iter
CONFTEST: unsafe_follow_pfn
CONFTEST: address_space_init_once
CONFTEST: kbasename
CONFTEST: vzalloc
CONFTEST: wait_on_bit_lock_argument_count
CONFTEST: bitmap_clear
CONFTEST: usleep_range
CONFTEST: radix_tree_empty
CONFTEST: radix_tree_replace_slot
CONFTEST: pnv_npu2_init_context
CONFTEST: cpumask_of_node
CONFTEST: drm_dev_unref
CONFTEST: drm_reinit_primary_mode_group
CONFTEST: get_user_pages_remote
CONFTEST: get_user_pages
CONFTEST: drm_atomic_state_ref_counting
CONFTEST: drm_gem_object_lookup
CONFTEST: drm_atomic_helper_connector_dpms
CONFTEST: drm_driver_has_gem_prime_res_obj
CONFTEST: drm_connector_funcs_have_mode_in_name
CONFTEST: drm_framebuffer_get
CONFTEST: drm_gem_object_get
CONFTEST: drm_dev_put
CONFTEST: drm_format_num_planes
CONFTEST: drm_connector_for_each_possible_encoder
CONFTEST: drm_rotation_available
CONFTEST: drm_vma_offset_exact_lookup_locked
CONFTEST: drm_gem_object_put_unlocked
CONFTEST: is_export_symbol_gpl_of_node_to_nid
CONFTEST: is_export_symbol_gpl_sme_active
CONFTEST: is_export_symbol_present_swiotlb_map_sg_attrs
CONFTEST: is_export_symbol_present_swiotlb_dma_ops
CONFTEST: is_export_symbol_present___close_fd
CONFTEST: is_export_symbol_present_close_fd
CONFTEST: is_export_symbol_present_get_unused_fd
CONFTEST: is_export_symbol_present_get_unused_fd_flags
CONFTEST: is_export_symbol_present_nvhost_get_default_device
CONFTEST: is_export_symbol_present_nvhost_syncpt_unit_interface_get_byte_offset
CONFTEST: is_export_symbol_present_nvhost_syncpt_unit_interface_get_aperture
CONFTEST: is_export_symbol_present_tegra_dce_register_ipc_client
CONFTEST: is_export_symbol_present_tegra_dce_unregister_ipc_client
CONFTEST: is_export_symbol_present_tegra_dce_client_ipc_send_recv
CONFTEST: is_export_symbol_present_dram_clk_to_mc_clk
CONFTEST: is_export_symbol_present_get_dram_num_channels
CONFTEST: is_export_symbol_present_tegra_dram_types
CONFTEST: is_export_symbol_present_kthread_create_on_node
CONFTEST: acpi_op_remove
CONFTEST: file_operations
CONFTEST: file_inode
CONFTEST: kuid_t
CONFTEST: dma_ops
CONFTEST: swiotlb_dma_ops
CONFTEST: noncoherent_swiotlb_dma_ops
CONFTEST: vm_fault_has_address
CONFTEST: backlight_properties_type
CONFTEST: vm_insert_pfn_prot
CONFTEST: vmf_insert_pfn_prot
CONFTEST: vm_ops_fault_removed_vma_arg
CONFTEST: vmbus_channel_has_ringbuffer_page
CONFTEST: device_driver_of_match_table
CONFTEST: device_of_node
CONFTEST: node_states_n_memory
CONFTEST: kmem_cache_has_kobj_remove_work
CONFTEST: sysfs_slab_unlink
CONFTEST: proc_ops
CONFTEST: timespec64
CONFTEST: vmalloc_has_pgprot_t_arg
CONFTEST: acpi_fadt_low_power_s0
CONFTEST: mm_has_mmap_lock
CONFTEST: pci_channel_state
CONFTEST: address_space
CONFTEST: backing_dev_info
CONFTEST: mm_context_t
CONFTEST: vm_fault_t
CONFTEST: mmu_notifier_ops_invalidate_range
CONFTEST: drm_bus_present
CONFTEST: drm_bus_has_bus_type
CONFTEST: drm_bus_has_get_irq
CONFTEST: drm_bus_has_get_name
CONFTEST: drm_driver_has_device_list
CONFTEST: drm_driver_has_legacy_dev_list
CONFTEST: drm_crtc_state_has_connectors_changed
CONFTEST: drm_driver_has_set_busid
CONFTEST: drm_init_function_args
CONFTEST: drm_helper_mode_fill_fb_struct
CONFTEST: drm_master_drop_has_from_release_arg
CONFTEST: drm_driver_unload_has_int_return_type
CONFTEST: drm_atomic_helper_crtc_destroy_state_has_crtc_arg
CONFTEST: drm_mode_object_find_has_file_priv_arg
CONFTEST: drm_atomic_helper_plane_destroy_state_has_plane_arg
CONFTEST: dma_buf_owner
CONFTEST: drm_connector_list_iter
CONFTEST: drm_atomic_helper_swap_state_has_stall_arg
CONFTEST: drm_driver_prime_flag_present
CONFTEST: drm_gem_object_has_resv
CONFTEST: drm_crtc_state_has_async_flip
CONFTEST: drm_crtc_state_has_pageflip_flags
CONFTEST: drm_format_modifiers_present
CONFTEST: drm_vma_node_is_allowed_has_tag_arg
CONFTEST: drm_vma_offset_node_has_readonly
CONFTEST: drm_display_mode_has_vrefresh
CONFTEST: drm_driver_master_set_has_int_return_type
CONFTEST: drm_driver_has_gem_free_object
CONFTEST: drm_prime_pages_to_sg_has_drm_device_arg
CONFTEST: drm_driver_has_gem_prime_callbacks
CONFTEST: drm_crtc_atomic_check_has_atomic_state_arg
CONFTEST: drm_gem_object_vmap_has_map_arg
CONFTEST: dom0_kernel_present
CONFTEST: nvidia_vgpu_kvm_build
CONFTEST: nvidia_grid_build
CONFTEST: nvidia_grid_csp_build
CONFTEST: pm_runtime_available
CONFTEST: pci_class_multimedia_hd_audio
CONFTEST: drm_available
CONFTEST: drm_atomic_available
CONFTEST: is_export_symbol_gpl_refcount_inc
CONFTEST: is_export_symbol_gpl_refcount_dec_and_test
CONFTEST: drm_alpha_blending_available
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-frontend.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-pci.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-acpi.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-cray.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-dma.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-i2c.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-mmap.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-p2p.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-pat.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-procfs.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-usermap.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-vm.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-vtophys.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/os-interface.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/os-mlock.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/os-pci.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/os-registry.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/os-usermap.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-modeset-interface.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-pci-table.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-kthread-q.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-memdbg.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-ibmnpu.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-report-err.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-rsync.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-msi.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-caps.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv_uvm_interface.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nvlink_linux.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/nvlink_caps.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/linux_nvswitch.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia/procfs_nvswitch.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_common.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_linux.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/nvstatus.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/nvCpuUuid.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/nv-kthread-q.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/nv-kthread-q-selftest.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_tools.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_global.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_gpu.o
/var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-caps.c: In function ‘nv_cap_close_fd’:
/var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-caps.c:598:5: error: implicit declaration of function ‘sys_close’ [-Werror=implicit-function-declaration]
598 | sys_close(fd);
| ^~~~~~~~~
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_gpu_isr.o
CC [M] /var/lib/dkms/nvidia/465.24.02/build/nvidia-uvm/uvm_procfs.o
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:271: /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-caps.o] Chyba 1
make[2]: *** Čeká se na nedokončené úlohy…
make[1]: *** [Makefile:1851: /var/lib/dkms/nvidia/465.24.02/build] Chyba 2
make[1]: Opouští se adresář „/usr/lib/modules/5.12.0-150-tkg-bmq/build“
make: *** [Makefile:80: modules] Chyba 2

DKMS fails on Kernel 5.12.10

DKMS fails for a custom Linux Kernel built from source:

/var/lib/dkms/nvidia/465.31/build/nvidia/nv-caps.c:598:5: error: implicit declaration of function ‘sys_close’ [-Werror=implicit-function-declaration]
  598 |     sys_close(fd);
      |     ^~~~~~~~~

This happens even with the regular unpatched nvidia version BTW.
The script doesn't apply any patches at all.

But the stock kernel 5.12.* from Arch Linux works fine.

Update Nvidia 460 series

Could you use the 460.91.03 instead of 460.84, it fixes a bug for my system where I cant use my monitor with a display port

Can't seem to install

Hi, tried to use it today to rollback to a previous driver.

-> Applying kernel-5.9.patch for 5.9.1-arch1-1...
patching file common/inc/nv-mm.h
Hunk #1 FAILED at 142.
1 out of 1 hunk FAILED -- saving rejects to file common/inc/nv-mm.h.rej
patching file conftest.sh
Hunk #2 FAILED at 2702.
Hunk #3 succeeded at 2805 (offset 38 lines).
Hunk #4 FAILED at 3873.
2 out of 4 hunks FAILED -- saving rejects to file conftest.sh.rej
patching file nvidia-drm/nvidia-drm-drv.c
Hunk #1 FAILED at 471.
Hunk #2 FAILED at 717.
2 out of 2 hunks FAILED -- saving rejects to file nvidia-drm/nvidia-drm-drv.c.rej
patching file nvidia-drm/nvidia-drm-gem.h
Hunk #1 FAILED at 94.
Hunk #2 FAILED at 143.
2 out of 2 hunks FAILED -- saving rejects to file nvidia-drm/nvidia-drm-gem.h.rej
patching file nvidia-drm/nvidia-drm-utils.c
Reversed (or previously applied) patch detected! Assume -R? [n]

I know there's certain issues with kernel 5.9, but I thought they were already sorted here? If you need other details let me know what to provide.

The process of finding this repository without exact information

This is a minor issue in some sense, but when I told a friend to use this repo for managing nvidia-drivers on arch he could not find the repo by googling for tkg nvidia-all. nvidia-all tkg however works better.

On DDG the first hit for tkg nvidia-all is the chaotic-aur-clone. This repository is hit number four on DDG.

Is there some meta-information for the repository which can be altered / changed? It seems like nvidia-tkg, which is the old name for this repo if I understand correctly, gives better search results than nvidia-all.

The best search term i can come up with is frogging family nvidia-all, which is considerably harder to convey in speech and longer to write in a chat.

Install Error with Linux-tkg Kernel

I compiled a Linux-tkg kernel with the below configuration:

customization.cfg Zip File

And, attempting to install an Nvidia driver gives me this error for some reason:

DKMS make.log for nvidia-465.24.02 for kernel 5.11.15-148-tkg-upds-llvm (x86_64)
Thu Apr 22 01:14:21 AM CDT 2021
make[1]: Entering directory '/usr/lib/modules/5.11.15-148-tkg-upds-llvm/build'
scripts/Makefile.lib:8: 'always' is deprecated. Please use 'always-y' instead
  SYMLINK /var/lib/dkms/nvidia/465.24.02/build/nvidia/nv-kernel.o
  SYMLINK /var/lib/dkms/nvidia/465.24.02/build/nvidia-modeset/nv-modeset-kernel.o
  CC [M]  /var/lib/dkms/nvidia/465.24.02/build/nvidia-peermem/nvidia-ib-peermem-stub.o
cc: error: unrecognized command-line option ‘-Qunused-arguments’
cc: error: unrecognized command-line option ‘-mno-global-merge’
cc: error: unrecognized command-line option ‘-ftrivial-auto-var-init=zero’
make[2]: *** [scripts/Makefile.build:279: /var/lib/dkms/nvidia/465.24.02/build/nvidia-peermem/nvidia-ib-peermem-stub.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1820: /var/lib/dkms/nvidia/465.24.02/build] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.11.15-148-tkg-upds-llvm/build'
make: *** [Makefile:80: modules] Error 2

Not sure if I did something wrong?

Fails to load on 5.14.9 Clang LTO TKG Kernel

Both the DKMS and regular flavor of both the stable branch and vulkan dev branch fails to load with this message:

kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_rax (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_r8 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_rdx (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_rcx (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_r10 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_r9 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_rdi (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_r11 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_rsi (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_rbx (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_jmp_r12 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_rax (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r8 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_rbx (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r13 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r9 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_rdx (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_rcx (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r10 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r12 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r11 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r15 (err -2)
kernel: nvidia: Unknown symbol __x86_indirect_alt_call_r14 (err -2)

The very same package works just fine with 5.14.8 TKG (also Clang and LTO).

The regular version building fails with "different compilers" error, even though both the kernel and the module is being built by the exact same compiler and version, so maybe that's a clue?

I'm happy to provide any additional information required.

DKMS fails on Kernel 5.13.x

  CC [M]  /var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-modeset.o
/var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.c:274:23: error: initialization of ‘int (*)(struct drm_plane *, struct drm_atomic_state *)’ from incompatible pointer type ‘int (*)(struct drm_plane>
  274 |     .atomic_check   = nv_drm_plane_atomic_check,
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.c:274:23: note: (near initialization for ‘nv_plane_helper_funcs.atomic_check’)
/var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.c:275:23: error: initialization of ‘void (*)(struct drm_plane *, struct drm_atomic_state *)’ from incompatible pointer type ‘void (*)(struct drm_pla>
  275 |     .atomic_update  = nv_drm_plane_atomic_update,
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.c:275:23: note: (near initialization for ‘nv_plane_helper_funcs.atomic_update’)
/var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.c:276:23: error: initialization of ‘void (*)(struct drm_plane *, struct drm_atomic_state *)’ from incompatible pointer type ‘void (*)(struct drm_pla>
  276 |     .atomic_disable = nv_drm_plane_atomic_disable,
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.c:276:23: note: (near initialization for ‘nv_plane_helper_funcs.atomic_disable’)
  CC [M]  /var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-prime-fence.o
  CC [M]  /var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-linux.o
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:273: /var/lib/dkms/nvidia/455.50.19/build/nvidia-drm/nvidia-drm-crtc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1851: /var/lib/dkms/nvidia/455.50.19/build] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.13.2-rt1-1-cacule-rdb-rt/build'
make: *** [Makefile:81: modules] Error 2

Please add patch for 5.11 (git versions)

please add patch for linux 5.11 kernels (linux-git, linux-amd-git) :
http://ix.io/2K9F

as per:
http://rglinuxtech.com/?p=2878

please note : The patch for 460.* (link above) is easy to modify to work with this version – just remove the first section (patch to ~/kernel/common/inc/nv-linux.h) as this is no longer necessary.

currently those kernels show version 5.10.0-rc* so they apply 5.10 patches as well which shouldnt be needed for latest driver version 460.32.03, only the above patch (minux the nv-linux.h section) should be needed.

I tried modifying myself but i find the PKGBUILD a bit confusing, however the patch minus the relevant part does work manually for 5.11 git version.

440.100 driver fails to install

When installing 440.100 driver on 5.8.1-3-tkg-pds, DKMS produces an error. I have attached the terminal output and the make log for your perusal.

Thank you for all your hard work, and thank you in advance for looking into this for me (I only want to install it because the 450 series drivers make Final Fantasy XIV repeatedly crash lol)

DKMS error 440-100.txt
DKMS error 440-100 make log.txt
Screenshot from 2020-08-19 18-53-42

495.44 is out

This is the first stable release of the 495 series. Updated in #67

Rudimentary clang / llvm support?

There is circumstantial evidence which suggests that it might take a while for DKMS to natively support clang (i.e., dell/dkms#124), however there are others which have managed to get DKMS nvidia-drivers working (i.e., https://rglinuxtech.com/?p=2903, they have messed up their certificates though, so proceed with care) without issues.

The reason I find this (partially) worthwhile is that a clang + LTO compiled linux kernel gives about a percentage point of performance compared to a gcc-compiled kernel (i.e., https://www.phoronix.com/scan.php?page=article&item=clang-lto-kernel&num=3). And free performance is good, right? :-)

eglexternalplatform should be added as a hard dependency

The eglexternalplatform package is needed for the proper usage of the new GBM support in 495, this can be seen in the egl-wayland .pc file and also in the egl-wayland Github FAQ. Arch official package also includes this package as a dependency.

Hades: "Vulkan initialization failed" on vulkandev branch

I have no idea where to report errors on Linux drivers in nvidia, besides, it is still necessary to check that the problem is definitely not somewhere in the tkg scripts.
In the summer I did some tests with different versions, and found the Hades game in Vulkan render mode, does not run on the developer beta (vulkandev) driver branch.
I decided to pins it here so as not to lose the results.
(yes, the problem is still presented.)

I made checks with 6 drivers totally:
470.56.05 (vulkandev) - bad
460.91.03 - good
470.57.02 - good
465.31 - good
455.50.19 (vulkandev) - bad
455.45.01 - good

msgboxes on vulkandev:
hades-vulkandev

works if you do not change anything except leaving vulkandev:
hades-not-vulkandev

Prime render is broken?

I've tried your package on 450.66 install and everything was smooth and working but for Prime Render Offloading i installed this nvidia-prime package from arch https://www.archlinux.org/packages/extra/any/nvidia-prime/ with prime-run command and doesn't seem to work at all nor with optimus-manager https://github.com/Shatur95/optimus-manager-qt in hybrid mode using the lutris option "prime-rendering' selected.

I've ran a test using the official nvidia drivers from arch for 450.66 for both dkms and normal kernel with nvidia-prime and optimus manager and both work just fine. What am I missing here? Half of the wiki pages caused my boot to fail and seem outdated.

I'm using 970M Nvidia driver with Intel Broadwell with the TKG PDS Broadwell kernel and 450.66 tkg nvidia dkms package.

Explain Vulkan dev branch vs. regular

It would be nice to have clarification in the readme and/or PKGBUILD of the differences between the two driver branches. I've been using vulkandev drivers without understanding that they are behind the newest driver in many Vulkan-unrelated ways 🐸

Why use this instead of arch packages?

Hello and thank you for your work!

Honest question here: why would I use these packages instead of the arch repos' one (nvidia, nvidia-lts, nvidia-dkms)?

From what I gathered, three reasons:

  • This package is often updated more quickly than the official ones
  • Using the vulkan dev drivers?
  • This package contains patches for different kernels

About those patches. I have been unable to find information about what they do. I understand that some of them are compatibility patches for different kernels.

If it's only about kernel compatibility, why not contribute to the official packages instead?

But there might be more than this, if I read between the lines of this other issue.

So what is the main difference for me if I don't have an exotic kernel, use the latest driver version and don't wish to use vulkan dev drivers?

Thanks!

Ubuntu installer?

Problem:
I cannot run makepkg on Ubuntu, because it is bound to pacman PKGBUILD (Arch-based Linux)

Question:
Is it possible to run this (nvidia-all) on Ubuntu?

Cannot change MemoryTransferRate and GPUGraphicsClock Offsets using nvidia-all

For reference, here is lshw output

Hello, so I wanted to use PowerMizer with nvidia-all but there is an issue. I can set up the preffered usage mode but I cannot change MemoryTransferRate and GPUGraphicsClock Offsets, it let me inputs numbers in the GUI but pressing enter doesn't register the change.

Moreover trying to modify the values using the terminal doen't work as well. Here is the command outputs

Here is the customization.cfg of nvidia-all
Here is the output of nvidia-bug-report

I tried putting cool-bits option to 0 using nvidia-xconfig then I built nvidia-all using cool-bits=0 in the customization.cfg. Then finally put cool-bits to 31 using nvidia-xconfig. Same issue
Here is the customization.cfg of nvidia-all
Here is the output of nvidia-bug-report

PS: I of course rebooted the computer when I reinstalled nvidia-all using different build options.

Uninstall scripts?

May we have uninstall scripts to remove all the installed packages from the last install along with all the custom configs? I ask because I originally tried nvidia vulkan drivers and then decided to go back to regular and had no way of removing the drivers so I uninstalled everything with the name nvidia in it and reinstalled.

Download NVIDIA drivers over https

See here:

# Source
if [ "$_driver_branch" = "vulkandev" ]; then
  if [[ $pkgver = 396* ]]; then
    _source_name="NVIDIA-Linux-x86_64-$pkgver.run::https://developer.nvidia.com/linux-${pkgver//.}"
  else
    _source_name="NVIDIA-Linux-x86_64-$pkgver.run::https://developer.nvidia.com/vulkan-beta-${pkgver//.}-linux"
  fi
else
    _source_name="http://us.download.nvidia.com/XFree86/Linux-x86_64/$pkgver/NVIDIA-Linux-x86_64-$pkgver.run"
fi

The drivers seem to only be downloaded over a TLS connection if using the Vulkan dev driver. I tested downloading the stable version 450.57 from:

http://us.download.nvidia.com/XFree86/Linux-x86_64/450.57/NVIDIA-Linux-x86_64-450.57.run

and it does not seem to upgrade the connection to https. Manually changing the URL from http to https worked though. The drivers only seem to be verified with md5sums, which are trivially broken and no longer secure for authentication.

Can you change the URL to https to prevent MITM attacks?

Thank you!

AUR ?

Why not host the PKGBUILD in AUR ?

Needs a patch for Linux Kernel 5.12.0

Tested Nvidia versions: [465, 460]

Fails to install DKMS Module:

(4/5) Install DKMS modules
==> dkms install --no-depmod -m nvidia -v 465.19.01 -k 5.12.0-rc5-144-tkg-cfs
Error! Bad return status for module build on kernel: 5.12.0-rc5-144-tkg-cfs (x86_64)
Consult /var/lib/dkms/nvidia/465.19.01/build/make.log for more information.
==> Warning, `dkms install --no-depmod -m nvidia -v 465.19.01 -k 5.12.0-rc5-144-tkg-cfs' returned 10

Make log error:

  CC [M]  /var/lib/dkms/nvidia/465.19.01/build/nvidia/procfs_nvswitch.o
/var/lib/dkms/nvidia/465.19.01/build/nvidia/nv-caps.c: In function ‘nv_cap_close_fd’:
/var/lib/dkms/nvidia/465.19.01/build/nvidia/nv-caps.c:598:5: error: implicit declaration of function ‘sys_close’ [-Werror=implicit-function-declaration]
  598 |     sys_close(fd);
      |     ^~~~~~~~~
  CC [M]  /var/lib/dkms/nvidia/465.19.01/build/nvidia-uvm/uvm_common.o
  CC [M]  /var/lib/dkms/nvidia/465.19.01/build/nvidia-uvm/uvm_linux.o
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:271: /var/lib/dkms/nvidia/465.19.01/build/nvidia/nv-caps.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1851: /var/lib/dkms/nvidia/465.19.01/build] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.12.0-rc5-144-tkg-cfs/build'
make: *** [Makefile:80: modules] Error 2

Arch post that references a similar issue along with providing a patch file: https://bbs.archlinux.org/viewtopic.php?id=262091&p=2

Error in package_nvidia-dev-utils-tkg()

When I'm building from path /home/<user>/source/nvidia-all I got error:
ln: failed to create symbolic link '/home/<user>.so': Permission denied

But when I move git repo from /home/<user>/source/nvidia-all to /home/<user>/nvidia-all build is working. I was building from my source folder for months. Now it's not working from it.

[Wayland] Windows Render Without Borders and Desktop UI is Tiny

Desktop Environment: KDE Plasma 5.22.3
GPU: RTX 2080 Ti
Driver Version: 470.57.02 ("stable")

For some reason, I ended up with really weird rendering issues, despite the fact that 470 was supposed to be the driver release that brings proper Wayland support?

In Discord's case, it just refused to open properly entirely, even with the config suggested by the Arch Wiki

These screenshots were taken when I had the environment variable QT_QPA_PLATFORM set to "xcb;wayland", as per the Arch Wiki for suggests for Plasma, but these issues were still present with it set to just "wayland"

why-wayland
horrific-wayland
wayland-discord-madness

I also had SDDM set to run the session under Wayland:

sudo nano /etc/sddm.conf

[General]
DisplayServer=wayland
EnableHiDPI=true

The Patch Needed to Fix CUDA on 5.9+ is Included in the patches/ Directory, but Doesn't Get Applied

So, due to the whole "GPL condom" mess, CUDA is now broken on 5.9+. The patch that apparently fixes it is indeed in patches/kernel-5.9.patch, but during the PKGBUILD process, I get the "Skipping kernel-5.9.patch as it doesn't apply to this driver version..." message, the patches aren't applied, and therefore CUDA remains broken.

Is there an easy way to set up a config option in customization.cfg that would allow for enabling/disabling this, since it seems like this is going to be an issue for the foreseeable future? If there are other parts of the patch that aren't necessary, is it possible to maybe take the necessary nvidia_uvm patch and put it in a standalone patch?

Fedora compatibilty

Hi folks,
Anyone knows if theres a way to use nvidia-all on Fedora, would be nice use this script since kernel and wine are avaiable to use.

XNVCtrl library is not installed correctly.

XNVCtrl, the library for nvidia-settings is not installed to /usr/lib64. As a result, any library/app that attempts to load the library, despite nvidia-settings working correctly, will fail.

If nvidia-settings-tkg is replaced via:

sudo pacman -S nvidia-settings

then the XNVCtrl library is placed in /usr/lib64.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.