Tutorial - Install proprietary Nvidia driver in EasyOS

Moderator: BarryK

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Federico wrote: Wed Nov 22, 2023 1:55 am

@ BarryK

sorry but I don't seem to find any script named just 'init' on the system. Do you mean /root/.xinitrc or /etc/X11/xinit/xinitrc or something inside /etc/init.d? Where should I add that line?
Would you be more specific?

Thanks in advance

The init script in the initrd file.

I will do it for Easy 5.6.4.

My nvidia sfs can be installed via SFSget.

/etc/modprobe.d/nvidia.conf is in the sfs file, which will blacklist i915 and nouveau kernel drivers. If I put that check whether nvidia gpu exists, then at bootup if it doesn't exist, then the sfs won't load, hence /etc/modrobe.d/nvidia.conf won't be there either, and i915 driver will load.

You will not have to explicitly blacklist the nouveau driver if you use my nvidia sfs.

Clarity
Posts: 3837
Joined: Fri Jul 24, 2020 10:59 pm
Has thanked: 1632 times
Been thanked: 525 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Clarity »

Question in 2 parts

  • Does this mean that in the future, assuming nVidia presence, will be auto-detected and loaded?

  • Or will an option exist in Menu for loading once initially booted?

.
Curious

P.S. Thanks Barry for your attention, understanding and help.

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

BarryK wrote: Wed Nov 22, 2023 2:21 pm
Federico wrote: Wed Nov 22, 2023 1:55 am

@ BarryK

sorry but I don't seem to find any script named just 'init' on the system. Do you mean /root/.xinitrc or /etc/X11/xinit/xinitrc or something inside /etc/init.d? Where should I add that line?
Would you be more specific?

Thanks in advance

The init script in the initrd file.

I will do it for Easy 5.6.4.

My nvidia sfs can be installed via SFSget.

/etc/modprobe.d/nvidia.conf is in the sfs file, which will blacklist i915 and nouveau kernel drivers. If I put that check whether nvidia gpu exists, then at bootup if it doesn't exist, then the sfs won't load, hence /etc/modrobe.d/nvidia.conf won't be there either, and i915 driver will load.

You will not have to explicitly blacklist the nouveau driver if you use my nvidia sfs.

Yes Barry, I had already figured it out. Thank you so much also for this further simplification! I hope that you (or me or anyone else) will also able to fix the opengl 3d acceleration issue.
That shouldn't be too difficult. I have tried to provide as much information as possible.
As far as I'm concerned, there's no hurry: that isn't so important for me but it would be nice to have also 3d acceleration on every machine Easy is started with.

Cheers

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Fix when boot usb-stick on computer without nvidia gpu:

https://bkhome.org/news/202311/abort-lo ... ssing.html

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

BarryK wrote: Fri Nov 24, 2023 3:03 am

Fix when boot usb-stick on computer without nvidia gpu:

https://bkhome.org/news/202311/abort-lo ... ssing.html

Dear Barry, I confirm that the issue is now solved, thanks to the new sfs file you published.

Sorry for not having understood beforehand, that this new sfs was supposed to be the solution of the problem, and not to just a way to free up the user from the need of manually blacklisting the nouveau driver.

What I did:

- removed the nouveau driver from the list of the blacklisted modules on System --> BootManager configure boot
- installed the SFS package nvidia_5.15.138-525.147.05_amd64.sfs from Configuration --> SFSget

at the end of the installation, I also activated the new nvidia sfs package, but the system totally lost the ability to boot from my laptop: the X server couldn't start up any more, counting seconds for the driver to load. So I booted the system from my desktop, and it booted up without problems from there.
From there I went again on System --> BootManager configure boot --> load extra sfs files and I deselected the nvidia_5.15.138-525.147.05_amd64.sfs and clicked the commit button (or how it is called in english).
From that moment, everything started working perfectly: the laptop boots, with hardware acceleration, and the desktop also boots with hardware acceleration:

Code: Select all

# glxinfo
name of display: :0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context, 
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile, 
    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile, 
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_get_drawable_type, GLX_EXT_libglvnd, GLX_EXT_no_config_context, 
    GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating, 
    GLX_MESA_copy_sub_buffer, GLX_OML_swap_method, GLX_SGIS_multisample, 
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, 
    GLX_SGI_make_current_read
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context, 
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile, 
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, 
    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample, 
    GLX_ATI_pixel_format_float, GLX_EXT_buffer_age, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile, 
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_no_config_context, GLX_EXT_swap_control, 
    GLX_EXT_swap_control_tear, GLX_EXT_texture_from_pixmap, 
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_INTEL_swap_event, 
    GLX_MESA_copy_sub_buffer, GLX_MESA_multithread_makecurrent, 
    GLX_MESA_query_renderer, GLX_MESA_swap_control, GLX_NV_float_buffer, 
    GLX_OML_swap_method, GLX_OML_sync_control, GLX_SGIS_multisample, 
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, 
    GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context, 
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile, 
    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, 
    GLX_ARB_get_proc_address, GLX_ARB_multisample, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile, 
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_no_config_context, GLX_EXT_texture_from_pixmap, 
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, 
    GLX_MESA_query_renderer, GLX_OML_swap_method, GLX_SGIS_multisample, 
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, 
    GLX_SGI_make_current_read
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Mesa/X.org (0xffffffff)
    Device: llvmpipe (LLVM 14.0.6, 256 bits) (0xffffffff)
    Version: 21.3.7
    Accelerated: no
    Video memory: 15715MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 4.5
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
OpenGL vendor string: Mesa/X.org
OpenGL renderer string: llvmpipe (LLVM 14.0.6, 256 bits)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 21.3.7
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_draw_buffers_blend, GL_AMD_gpu_shader_int64, 
    GL_AMD_multi_draw_indirect, GL_AMD_pinned_memory, 
    GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture, 
    GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, 
    GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer, 
    GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, 
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, 
    GL_ARB_derivative_control, GL_ARB_direct_state_access, 
    GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, 
    GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments, 
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, 
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, 
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, 
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, 
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, 
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, 
    GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, 
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, 
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, 
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, 
    GL_ARB_shader_bit_encoding, GL_ARB_shader_draw_parameters, 
    GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, 
    GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, 
    GL_ARB_shading_language_packing, GL_ARB_spirv_extensions, 
    GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, 
    GL_ARB_texture_barrier, GL_ARB_texture_buffer_object, 
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, 
    GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, 
    GL_ARB_texture_cube_map_array, GL_ARB_texture_filter_anisotropic, 
    GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_multisample, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, 
    GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, 
    GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, 
    GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, 
    GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, 
    GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, 
    GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object, 
    GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, 
    GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ATI_blend_equation_separate, 
    GL_ATI_texture_float, GL_ATI_texture_mirror_once, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, 
    GL_EXT_blend_equation_separate, GL_EXT_draw_buffers2, 
    GL_EXT_draw_instanced, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, 
    GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp, 
    GL_EXT_provoking_vertex, GL_EXT_shader_framebuffer_fetch_non_coherent, 
    GL_EXT_shader_integer_mix, GL_EXT_texture_array, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, 
    GL_EXT_texture_mirror_clamp, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, 
    GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, 
    GL_IBM_multimode_draw_arrays, GL_KHR_blend_equation_advanced, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_signed_rgba, GL_MESA_ycbcr_texture, 
    GL_NV_conditional_render, GL_NV_copy_image, GL_NV_depth_clamp, 
    GL_NV_packed_depth_stencil, GL_NV_texture_barrier, GL_OES_EGL_image, 
    GL_S3_s3tc

OpenGL version string: 4.5 (Compatibility Profile) Mesa 21.3.7
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_draw_buffers_blend, GL_AMD_multi_draw_indirect, 
    GL_AMD_pinned_memory, GL_AMD_query_buffer_object, 
    GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_stencil_export, 
    GL_AMD_shader_trinary_minmax, GL_AMD_texture_texture4, 
    GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_color_buffer_float, GL_ARB_compatibility, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, 
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, 
    GL_ARB_depth_texture, GL_ARB_derivative_control, 
    GL_ARB_direct_state_access, GL_ARB_draw_buffers, 
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, 
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments, 
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, 
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, 
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, 
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, 
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
    GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, 
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, 
    GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, 
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, 
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, 
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, 
    GL_ARB_shader_bit_encoding, GL_ARB_shader_draw_parameters, 
    GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, 
    GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, 
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing, 
    GL_ARB_shadow, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, 
    GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, 
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, 
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, 
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, 
    GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, 
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, 
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object, 
    GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_blend_equation_separate, 
    GL_ATI_draw_buffers, GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_ATI_texture_float, GL_ATI_texture_mirror_once, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, 
    GL_EXT_blend_color, GL_EXT_blend_equation_separate, 
    GL_EXT_blend_func_separate, GL_EXT_blend_minmax, GL_EXT_blend_subtract, 
    GL_EXT_compiled_vertex_array, GL_EXT_copy_texture, 
    GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, 
    GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, 
    GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_polygon_offset_clamp, GL_EXT_provoking_vertex, 
    GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_integer_mix, 
    GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, 
    GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, 
    GL_EXT_texture_array, GL_EXT_texture_buffer_object, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_latc, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, 
    GL_EXT_texture_env_add, GL_EXT_texture_env_combine, 
    GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, 
    GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_decode, 
    GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, 
    GL_EXT_texture_snorm, GL_EXT_texture_swizzle, GL_EXT_timer_query, 
    GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, 
    GL_EXT_vertex_attrib_64bit, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_KHR_blend_equation_advanced, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_signed_rgba, GL_MESA_window_pos, GL_MESA_ycbcr_texture, 
    GL_NV_blend_square, GL_NV_conditional_render, GL_NV_copy_depth_to_color, 
    GL_NV_copy_image, GL_NV_depth_clamp, GL_NV_fog_distance, 
    GL_NV_half_float, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, GL_NV_texture_barrier, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 21.3.7
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    GL_ANDROID_extension_pack_es31a, GL_ANGLE_pack_reverse_row_order, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_texture_max_level, GL_EXT_EGL_image_storage, 
    GL_EXT_base_instance, GL_EXT_blend_func_extended, GL_EXT_blend_minmax, 
    GL_EXT_buffer_storage, GL_EXT_clear_texture, GL_EXT_clip_control, 
    GL_EXT_clip_cull_distance, GL_EXT_color_buffer_float, 
    GL_EXT_color_buffer_half_float, GL_EXT_compressed_ETC1_RGB8_sub_texture, 
    GL_EXT_copy_image, GL_EXT_depth_clamp, GL_EXT_discard_framebuffer, 
    GL_EXT_disjoint_timer_query, GL_EXT_draw_buffers, 
    GL_EXT_draw_buffers_indexed, GL_EXT_draw_elements_base_vertex, 
    GL_EXT_draw_instanced, GL_EXT_float_blend, GL_EXT_frag_depth, 
    GL_EXT_geometry_point_size, GL_EXT_geometry_shader, GL_EXT_gpu_shader5, 
    GL_EXT_map_buffer_range, GL_EXT_memory_object, GL_EXT_memory_object_fd, 
    GL_EXT_multi_draw_arrays, GL_EXT_occlusion_query_boolean, 
    GL_EXT_polygon_offset_clamp, GL_EXT_primitive_bounding_box, 
    GL_EXT_read_format_bgra, GL_EXT_render_snorm, GL_EXT_robustness, 
    GL_EXT_sRGB_write_control, GL_EXT_separate_shader_objects, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_group_vote, 
    GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_io_blocks, GL_EXT_tessellation_point_size, 
    GL_EXT_tessellation_shader, GL_EXT_texture_border_clamp, 
    GL_EXT_texture_buffer, GL_EXT_texture_compression_bptc, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_s3tc_srgb, 
    GL_EXT_texture_cube_map_array, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_filter_minmax, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_mirror_clamp_to_edge, GL_EXT_texture_norm16, 
    GL_EXT_texture_query_lod, GL_EXT_texture_rg, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, 
    GL_EXT_texture_shadow_lod, GL_EXT_texture_type_2_10_10_10_REV, 
    GL_EXT_texture_view, GL_EXT_unpack_subimage, 
    GL_KHR_blend_equation_advanced, GL_KHR_context_flush_control, 
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, 
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, 
    GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_bgra, 
    GL_MESA_framebuffer_flip_y, GL_MESA_shader_integer_functions, 
    GL_NV_conditional_render, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_image_formats, GL_NV_pixel_buffer_object, GL_NV_read_buffer, 
    GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, 
    GL_OES_EGL_image_external_essl3, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24, 
    GL_OES_depth_texture, GL_OES_depth_texture_cube_map, 
    GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex, 
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
    GL_OES_geometry_point_size, GL_OES_geometry_shader, 
    GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box, 
    GL_OES_required_internalformat, GL_OES_rgb8_rgba8, GL_OES_sample_shading, 
    GL_OES_sample_variables, GL_OES_shader_image_atomic, 
    GL_OES_shader_io_blocks, GL_OES_shader_multisample_interpolation, 
    GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_tessellation_point_size, GL_OES_tessellation_shader, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_buffer, 
    GL_OES_texture_cube_map_array, GL_OES_texture_float, 
    GL_OES_texture_float_linear, GL_OES_texture_half_float, 
    GL_OES_texture_half_float_linear, GL_OES_texture_npot, 
    GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array, 
    GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float, 
    GL_OES_viewport_array

360 GLX Visuals
    visual  x   bf lv rg d st  colorbuffer  sr ax dp st accumbuffer  ms  cav
  id dep cl sp  sz l  ci b ro  r  g  b  a F gb bf th cl  r  g  b  a ns b eat
----------------------------------------------------------------------------
0x021 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
...

Now I have a couple of points which are still in need of clarification I think:

1) Is this the right way to use the new nvidia sfs? Should it be installed, but not activated at all? Is it ok so? Did I do anything wrong?

2) Maybe the X server couldn't start on my laptop after activating the nvidia sfs just because I'm using kernel 5.15.135 on Easy 5.5.5, and the sfs is for kernel 5.15.138? Should I maybe update the system?

3) Does the nvidia sfs include the nvidia driver itself, or is it just a small correction for the problem I discovered?

Thank you so much, once again!!!

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Federico wrote: Fri Nov 24, 2023 6:21 am

at the end of the installation, I also activated the new nvidia sfs package, but the system totally lost the ability to boot from my laptop: the X server couldn't start up any more, counting seconds for the driver to load. So I booted the system from my desktop, and it booted up without problems from there.

That's because it requires the modified 'init' script in the initrd, as I posted in the blog.

You could either edit the 'init' script, by opening up the initrd file, and insert the code that I showed in the blog post, or wait until Easy 5.6.4 is released.

The nvidia sfs has everything in it, and it is compiled for the 5.15.138 kernel.

Yes, to keep up with all the improvements, you should always update to the latest version of Easy.

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

BarryK wrote: Fri Nov 24, 2023 2:01 pm
Federico wrote: Fri Nov 24, 2023 6:21 am

at the end of the installation, I also activated the new nvidia sfs package, but the system totally lost the ability to boot from my laptop: the X server couldn't start up any more, counting seconds for the driver to load. So I booted the system from my desktop, and it booted up without problems from there.

That's because it requires the modified 'init' script in the initrd, as I posted in the blog.

You could either edit the 'init' script, by opening up the initrd file, and insert the code that I showed in the blog post, or wait until Easy 5.6.4 is released.

The nvidia sfs has everything in it, and it is compiled for the 5.15.138 kernel.

Yes, to keep up with all the improvements, you should always update to the latest version of Easy.

So, first of all, I'm very happy that the issue is solved. This is what matters, for me and everyone else. And I don't know how to thank you.

Now I have updated to the latest version 5.6.3

Code: Select all

# uname -r
5.15.138
# 

and the version of the kernel matches the version of the sfs. Strangely enough, the behaviour did not change: everything is fine but if and only if I activate the nvidia sfs, the laptop does not boot because the X server does not start. The only change is that now there is no countdown when the X server tries to start: it just does not and drops me to the command prompt.
Everything is always fine for the desktop instead. So I have to boot Easy from the desktop and untick the nvidia sfs from there.
So, if I just let the sfs installed, but not activated, everything works fine on both computers.

Screenshot(17).png
Screenshot(17).png (45.68 KiB) Viewed 1231 times

May it be that even if the nvidia sfs isn't actually active, it has carried out permanent changes to the system the only time it tried to boot with it being activated (sorry for non-perfect english, I hope you can understand what I mean)?

Last edited by Federico on Sun Nov 26, 2023 10:49 am, edited 1 time in total.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Federico wrote: Fri Nov 24, 2023 3:16 pm

and the version of the kernel matches the version of the sfs. Strangely enough, the behaviour did not change: everything is fine but if and only if I activate the nvidia sfs, the laptop does not boot because the X server does not start. The only change is that now there is no countdown when the X server tries to start: it just does not and drops me to the command prompt.
Everything is always fine for the desktop instead. So I have to boot Easy from the desktop and untick the nvidia sfs from there.
So, if I just let the sfs installed, but not activated, everything works fine on both computers.

That is as expected.

You have to wait for Easy 5.6.4, with changes to the 'init' script in the initrd, then the nvidia sfs will automatically not load when you boot the usb-stick on the laptop.

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

That's not a problem. Thank you very much for everything.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Easy 5.6.4 is out. Hopefully the automatic detection of nvidia gpu in the initrd works.

I couldn't test with an actual computer with nvidia gpu, so hope there is no code typo or anything.

What should happen, you activate loading the nvidia sfs on your computer that has an nvidia gpu, and it will load at bootup and work as expected.

Then you bootup the usb flash-drive on another computer that does not have an nvidia gpu; the initrd detects there is no nvidia gpu and refuses to load the nvidia sfs. You will see a red message. So at bootup you have the situation without nvidia sfs and you should get the desktop as normal.

Go back to bootup on the computer that does have an nvidia gpu, and the nvidia sfs will load at bootup.

So, all automatic.

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Another thing that is supposed to happen when update from 5.6.3 to 5.6.4, if you have the nvidia sfs loaded in 5.6.3, it should carry-over and also load in 5.6.4.

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Beautiful,
I'm going to test everything out. Will do it most probably within today (it's 7:00 o'clock now here).

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

So Barry I did the test and everything looks to be working fine.
I did the following:

- booted my desktop with the EasyOS USB stick
- deleted the file nvidia_5.15.138-525.147.05_amd64.sfs from /mnt/sda2/easyos/sfs/easyos/oe/kirkstone/ (for the avoidance of doubt)
- updated the system to ver 5.6.4
- re-downloaded and activated on the main level the sfs file nvidia_5.15.138-525.147.05_amd64.sfs
- downloaded and activated the new devx sfs package for Kirchstone 5.6.4
- restarted the system and saved the session
- powered off the system
- disconnected the USB stick from my desktop and connected it to my laptop

now it boots perfectly with no problems, the opengl acceleration is working and the nvidia sfs file is also activated:

Screenshot(19).png
Screenshot(19).png (45.67 KiB) Viewed 1098 times
Screenshot(20).png
Screenshot(20).png (15.49 KiB) Viewed 1098 times

One thing I noticed is that although the video driver works perfectly on the desktop, now I don't have any options on Nvidia X Server settings, it's like the program doesn't detect the video card any more:

Screenshot(18).png
Screenshot(18).png (93.75 KiB) Viewed 1098 times

Another strange thing I noticed is that the red message at boot does NOT change: both on the desktop and on the laptop it always says that no Nvidia GPU has been detected and therefore the Nvidia SFS is not going to be loaded (the german translation is quite good in this case). Is it just a transcription error or something isn't working as expected here?

So, as far as I understood, when an Nvidia card is detected, there's no need to load the contents of the Nvidia sfs file in memory; when no Nvidia card is installed instead, the Nvidia sfs should be loaded in order not to let the Nvidia driver interfere with other video drivers. Please correct me if I'm wrong,

The card is an Asus Tough RTX 3080 12 GB (OC variant), and I'm using it right now. The output of lspci from my desktop follows:

Code: Select all

# lspci
00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 0d)
00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 0d)
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
00:17.0 RAID bus controller: Intel Corporation SATA Controller [RAID mode] (rev 10)
00:1b.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #17 (rev f0)
00:1b.4 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #21 (rev f0)
00:1c.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #1 (rev f0)
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Z390 Chipset LPC/eSPI Controller (rev 10)
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
00:1f.5 Serial bus controller: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (7) I219-V (rev 10)
01:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3080 12GB] (rev a1)   <=========
01:00.1 Audio device: NVIDIA Corporation GA102 High Definition Audio Controller (rev a1)
03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM951/PM951 (rev 01)
Last edited by Federico on Tue Nov 28, 2023 8:31 am, edited 2 times in total.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Update: trying to figure out what was going on, I discovered several things:

1) The Nvidia driver installation does not survive a system update.

2) The reason why the desktop anyway booted, was that (unbelievable) it was running on nouveau.

3) It looks like the new version of the nouveau driver is also able to manage Nvidia RTX hardware, although it obviously does not provide good performance (it isn't very efficient).

4) I had to manually blacklist the nouveau driver again and repeat the installation of the Nvidia driver (525.147.05). Afterwards I got all the settings on the Nvidia X Server Settings app back.

5) I removed the blacklisting of the nouveau driver and activated the Nvidia sfs again.

6) The problem of no OpenGL on the laptop resurfaced:

Code: Select all

# glxinfo
name of display: :0
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  150 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  51
  Current serial number in output stream:  52

Sorry for the situation, I'm slowly loosing the overview on what is going on here and why. But I can't do anything else than reporting my actual experience.

Going to make other tests. Will report about further findings.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Now I'm back on the desktop again, using the nouveau driver. This happens because it is not blacklisted at the moment, although the Nvidia sfs is installed and activated.
Slowly the situation becomes crystal clear: the problem is just that the Nvidia sfs (nvidia_5.15.138-525.147.05_amd64.sfs) does not do what it is supposed to do: it neither blacklists the nouveau driver nor prevents the Nvidia driver from monopolizing the OpenGL acceleration. Probably because it fails for some reason to detect Nvidia hardware: it does not trigger.
At least we have a clear picture of the situation now.
Basically, on the desktop I can decide with which driver to boot by manually blacklisting the nouveau or not.
And the reason why previously the OpenGL acceleration did work on the laptop is unfortunately unknown / unclear to me.
Hope this helps. I'm waiting for further instructions.
I'm ready to provide any information.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Actually trying to solve the OpenGL issue on the laptop again:

Code: Select all

# glxinfo
name of display: :0
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  150 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  51
  Current serial number in output stream:  52

Code: Select all

# lspci -k | grep -EA3 'VGA|3D|Display'
0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics] (rev 01)
	DeviceName: Onboard - Video
	Subsystem: ASUSTeK Computer Inc. Device 1452
	Kernel driver in use: i915

Code: Select all

# ls /usr/lib/libGL* -lh
-rwxr-xr-x 1 root root 931K 27. Nov 12:13 /usr/lib/libGLdispatch.so.0
lrwxrwxrwx 1 root root   33 28. Nov 06:05 /usr/lib/libGLESv1_CM_nvidia.so.1 -> libGLESv1_CM_nvidia.so.525.147.05
-rwxr-xr-x 1 root root  67K 27. Nov 12:13 /usr/lib/libGLESv1_CM_nvidia.so.525.147.05
lrwxrwxrwx 1 root root   17 27. Nov 12:13 /usr/lib/libGLESv1_CM.so -> libGLESv1_CM.so.1
lrwxrwxrwx 1 root root   21 27. Nov 12:13 /usr/lib/libGLESv1_CM.so.1 -> libGLESv1_CM.so.1.2.0
-rwxr-xr-x 1 root root  43K 27. Nov 12:13 /usr/lib/libGLESv1_CM.so.1.2.0
lrwxrwxrwx 1 root root   30 28. Nov 06:05 /usr/lib/libGLESv2_nvidia.so.2 -> libGLESv2_nvidia.so.525.147.05
-rwxr-xr-x 1 root root 115K 27. Nov 12:13 /usr/lib/libGLESv2_nvidia.so.525.147.05
lrwxrwxrwx 1 root root   14 27. Nov 12:13 /usr/lib/libGLESv2.so -> libGLESv2.so.2
lrwxrwxrwx 1 root root   18 27. Nov 12:13 /usr/lib/libGLESv2.so.2 -> libGLESv2.so.2.1.0
-rwxr-xr-x 1 root root  79K 27. Nov 12:13 /usr/lib/libGLESv2.so.2.1.0
lrwxrwxrwx 1 root root   16  2. Nov 05:33 /usr/lib/libGLEW.so -> libGLEW.so.2.2.0
lrwxrwxrwx 1 root root   16 26. Nov 16:16 /usr/lib/libGLEW.so.2.2 -> libGLEW.so.2.2.0
-rw-r--r-- 1 root root 722K 26. Nov 16:19 /usr/lib/libGLEW.so.2.2.0
lrwxrwxrwx 1 root root   10 27. Nov 12:13 /usr/lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root   14 27. Nov 12:13 /usr/lib/libGL.so.1 -> libGL.so.1.7.0
-rwxr-xr-x 1 root root 635K 27. Nov 12:13 /usr/lib/libGL.so.1.7.0
lrwxrwxrwx 1 root root   15  2. Nov 04:30 /usr/lib/libGLU.so -> libGLU.so.1.3.1
lrwxrwxrwx 1 root root   15 26. Nov 16:16 /usr/lib/libGLU.so.1 -> libGLU.so.1.3.1
-rwxr-xr-x 1 root root 435K 26. Nov 16:19 /usr/lib/libGLU.so.1.3.1
lrwxrwxrwx 1 root root   27 28. Nov 06:05 /usr/lib/libGLX_indirect.so.0 -> libGLX_nvidia.so.525.147.05
lrwxrwxrwx 1 root root   27 28. Nov 06:05 /usr/lib/libGLX_nvidia.so.0 -> libGLX_nvidia.so.525.147.05
-rwxr-xr-x 1 root root 1,2M 27. Nov 12:13 /usr/lib/libGLX_nvidia.so.525.147.05
lrwxrwxrwx 1 root root   11 27. Nov 12:13 /usr/lib/libGLX.so -> libGLX.so.0
-rwxr-xr-x 1 root root 135K 27. Nov 12:13 /usr/lib/libGLX.so.0

nothing and absolutely nothing seems to help. I tried reinstalling the Nvidia driver with the --no-opengl-files option but it did also not help.
Tryed adding the file 20-nvidia.conf on /etc/X11/xorg.conf.d with the following text:

Code: Select all

Section "OutputClass"
    Identifier "Nvidia Prime"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration"
    Option "PrimaryGPU" "no"
    Option "SLI" "Auto"
    Option "BaseMosaic" "on"
EndSection 

that did also not help. Also tried reinstalling the package mesa-2_21.3.7-r5 and creating a new xorg.conf for the Intel video driver through video troubleshooting from Limine, to no avail.

Re-thinking about how things developed, there was just an occasion on which the issue on the Intel laptop disappeared: it was the first time I added the Nvidia SFS to the main level. But, when I activated it for the first time, I was using Easy 5.5.5 and it was also different, 'cause the laptop could not boot. It did not boot, throwing me to the command prompt, but it apparently solved the issue, 'cause after de-activating it from the desktop, the issue was gone for ever.
Now, on Easy 5.6.4 and with the new version of the SFS file (the one which writes the red text row during boot), the issue does not seem to go away, regardless of what I try.
Hope this helps. Hope to find a solution soon, so that it can be added to the tutorial.

Have a good day.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Federico wrote: Mon Nov 27, 2023 10:02 am

Another strange thing I noticed is that the red message at boot does NOT change: both on the desktop and on the laptop it always says that no Nvidia GPU has been detected and therefore the Nvidia SFS is not going to be loaded (the german translation is quite good in this case). Is it just a transcription error or something isn't working as expected here?

So, as far as I understood, when an Nvidia card is detected, there's no need to load the contents of the Nvidia sfs file in memory; when no Nvidia card is installed instead, the Nvidia sfs should be loaded in order not to let the Nvidia driver interfere with other video drivers. Please correct me if I'm wrong,

The card is an Asus Tough RTX 3080 12 GB (OC variant), and I'm using it right now. The output of lspci from my desktop follows:

Code: Select all

# lspci
00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 0d)
00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 0d)
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
00:17.0 RAID bus controller: Intel Corporation SATA Controller [RAID mode] (rev 10)
00:1b.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #17 (rev f0)
00:1b.4 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #21 (rev f0)
00:1c.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #1 (rev f0)
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Z390 Chipset LPC/eSPI Controller (rev 10)
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
00:1f.5 Serial bus controller: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (7) I219-V (rev 10)
01:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3080 12GB] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GA102 High Definition Audio Controller (rev a1)
03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM951/PM951 (rev 01)

You should only get the red message when booting on the laptop.

You are over-thinking everything. You should not be making any manual changes.

On the desktop system, please run the busybox lspci:

Code: Select all

# busybox lspci
User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Yes Barry, sorry for overthinking everything, I'm just trying to be as helpful as possible.
To speak is always better than not to speak, in my opinion.

Now I'm using the desktop with the Nvidia proprietary driver, since I manually blacklisted the nouveau driver. The Nvidia SFS is installed and activated.
During boot I get the following red message: Keine NVIDIA-GPU erkannt, daher wird die Nvidia SFS nicht geladen

The requested output follows:

Code: Select all

# busybox lspci
03:00.0 Class 0108: 144d:a802
00:17.0 Class 0104: 8086:2822
00:1c.0 Class 0604: 8086:a338
00:1f.0 Class 0601: 8086:a305
00:1b.4 Class 0604: 8086:a32c
00:01.0 Class 0604: 8086:1901
00:16.0 Class 0780: 8086:a360
01:00.0 Class 0300: 10de:220a    <=========
00:1b.0 Class 0604: 8086:a340
00:1f.5 Class 0c80: 8086:a324
00:1f.3 Class 0403: 8086:a348
00:00.0 Class 0600: 8086:3ec2
00:12.0 Class 1180: 8086:a379
00:1d.0 Class 0604: 8086:a330
01:00.1 Class 0403: 10de:1aef
00:14.2 Class 0500: 8086:a36f
00:1f.6 Class 0200: 8086:15bc
00:14.0 Class 0c03: 8086:a36d
00:1f.4 Class 0c05: 8086:a323

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Thanks.
Alright, one step at a time...

Would you be able to edit the /mnt/wkg/initrd file? It is pretty easy.

1.
Download the attached file 'init.gz', it has a false ".gz", rename to just 'init'

2.
Right-click on 'init' and choose Properties, then tick all the Exec checkboxes.

3.
Click on the '/mnt/wkg/initrd' file, and there will be an offer to open it up. You will then have ROX showing /root/initrd-expanded

4.
Copy the downloaded 'init', by dragging between two windows in ROX, replacing /root/initrd-expanded/init

5.
Click again on /mnt/wkg/initrd and there will be an offer to update it. Accept.

The result should be that you will not get that red message at bootup when booting on the desktop pc, you will get it when booting on the laptop.

That will be one problem solved, let me know if that works.

Then the next problem will be to get rid of all the changes that you have made, installed mesa package, manually edited xorg.conf, your own nvidia sfs. All of that will have to go. But, one step at a time.

Attachments
init.gz
(108.89 KiB) Downloaded 25 times
User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Going to try this all out immediately.
Will report.

I did not make any own SFS, the mesa package was already installed because of things I tried previously in the past for other purposes. It does not have any effects. All other attempts (nvidia-prime etc...) have also had no effects.

Thank you.

Last edited by Federico on Tue Nov 28, 2023 1:19 pm, edited 1 time in total.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Barry, I have both good and bad news:

I executed your instructions very closely, and it all worked very well on the desktop. No red messages more during boot, and the correct Nvidia proprietary driver was being loaded, even if I removed the nouveau driver from the manual blacklisting. Perfect, beautiful! It worded fine.
But then I went on the laptop and I saw that it did not boot: the X server did not start; no way to let it start. I tried several combinations of drivers and resolutions with xorgwizard, and nothing did the trick.
So I thought that maybe disabling the Nvidia SFS from the desktop, as I did before, would have let the laptop boot again. So I started the desktop with Easy once again and I disabled the Nvidia SFS from the boot manager. This was unfortunately a fatal mistake: now I can't get the system to boot on either PC, sorry. I'm using windows right now.
The desktop now does the same as the laptop: I have tried with xorgwizard the Nvidia proprietary driver, nouveau, Modesetting... nothing seems to work: it throws me alsways back to the command to the cmd (also tried several resolutions).
I would need a way to reactivate the Nvidia SFS from the command prompt, in order to regain the ability to use Easy on the desktop PC. I'm sure there is a way.
Regarding the laptop I don't know, we'll see.
Please let me know as soon as possible how to reactivate the Nvidia SFS from command line (if possible).
Sorry for the situation, I hope this is also useful and interesting for you.

Thank you.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

bump!
Will you let me down? The future of my precious EasyOS installation is in your hands now.
And we also have to finish this job.
I hope the situation is not too bad: I just need a way to reactivate the loading of the Nvidia SFS from the command prompt. It is also wrong when I say that the system doesn't boot: just the X server does not start.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
BarryK
Posts: 2692
Joined: Tue Dec 24, 2019 1:04 pm
Has thanked: 132 times
Been thanked: 738 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by BarryK »

Federico,
OK, try this:
At bootup, where it asks for a password, or there is a pause, press enter for the menu, and choose to roll back to the last snapshot.

Let me know if that gets you to a desktop.

And, whatever happens, do NOT make any manual changes. Just let me know success or fail, desktop pc and laptop.

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Ok, I'm going to try this.
Even if we don't manage to fix everything now, it would be nice to get it working again at least on one system, so that I can save an image file from Windows, and then we go on, no matter what happens.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

Now using my telephone.
Booted from the desktop, did what you told me.
Now it says (in wrongly translated german): "rolling back the session" and it has been saying so for the last 10 minutes I would say. The USB stick doesn't have a LED, so I cannot understand if the system is effectively doing anything or not.
How long should it take? What if the system got frozen?

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

so, it finished and booted, but all my settings, including apps settings, and links on the desktop are totally gone. It wants to execute quick setup like at the first boot. The nvidia sfs is DE-activated. Even the saved commands on Sakura disappeared from memory. It looks like it's using the nvidia proprietary driver now, but I'm not sure. This is quite catastrophic for me. For sure I have a backup.
Now we can go on and afterwards I will eventually restore my backup (and repeat the whole procedure).

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

I activated the Nvidia SFS. Desktop working fine, apart from the catastrophe. No red messages during boot, nouveau gets automatically blacklisted. I won't deactivate the SFS any more. Now moving to the laptop.

Last edited by Federico on Tue Nov 28, 2023 4:46 pm, edited 1 time in total.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

You won't believe it, but the laptop also booted immediately:

- the red message saying that no Nvidia GPU is present appeared

- OpenGL acceleration is also working

everything looks fine!

Code: Select all

# uname -r
5.15.138

# lspci -k | grep -EA3 'VGA|3D|Display'
0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics] (rev 01)
	DeviceName: Onboard - Video
	Subsystem: ASUSTeK Computer Inc. Device 1452
	Kernel driver in use: i915
	
# glxinfo | grep OpenGL
OpenGL vendor string: Mesa/X.org
OpenGL renderer string: llvmpipe (LLVM 14.0.6, 256 bits)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 21.3.7
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.5 (Compatibility Profile) Mesa 21.3.7
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 21.3.7
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
Screenshot(2).png
Screenshot(2).png (56.01 KiB) Viewed 916 times

Now I'm back on the desktop and everything looks fine. No red messages and:

Code: Select all

# lspci -k | grep -EA3 'VGA|3D|Display'
01:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3080 12GB] (rev a1)
	Subsystem: ASUSTeK Computer Inc. Device 886e
	Kernel driver in use: nvidia
	Kernel modules: nouveau, nvidia_drm, nvidia
	
# glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 3080/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 525.147.05
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6.0 NVIDIA 525.147.05
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 525.147.05
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:

I would say that everything works as expected. So the issue is solved - at least for my hardware -. I'm very glad that the efforts paid out at the end.
Now I'll have to restore my backup and redo everything from start, so please do not delete any relevant post.
I obviously also know at this point that if my laptop won't boot for any reason, it must depend on some particular setting I made on my system, and has nothing to do with how the file nvidia_5.15.138-525.147.05_amd64.sfs works. So the case is closed I would say. Have a nice day and thank you.

@ Barry and Don570 --> I don't know / I'm not sure if this procedure (download and activation of the Nvidia SFS, modification of the 'init' script) may be generalized or is just suitable for my particular hardware configuration. If anything can be generalized, that should be added to the tutorial at the beginning of this thread in my opinion.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

don570
Posts: 688
Joined: Sat Nov 21, 2020 4:43 pm
Has thanked: 5 times
Been thanked: 117 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by don570 »

Lenovo optiplex 990 with nvidia gt 1030

I downloaded nvidia SFS for this kernel --> 5.15.138
https://distro.ibiblio.org/easyos/amd64 ... _amd64.sfs
But unfortunately when I booted I got boot-time message that the SFS won't load because it didn't find GPU
Equivalent to Federico's message

During boot I get the following red message: Keine NVIDIA-GPU erkannt, daher wird die Nvidia SFS nicht geladen

I see the change of init by BarryK so I will try that and report back.
__________________________________________________________

User avatar
Federico
Posts: 288
Joined: Tue Jun 20, 2023 2:40 pm
Has thanked: 1 time
Been thanked: 36 times

Re: Tutorial - Install proprietary Nvidia driver in EasyOS

Post by Federico »

I wouldn't like to say anything wrong but I'm not sure that the SFS is currently able to detect any Nvidia GPU.
Surely you will also have to update the 'init' script like I did, otherwise the SFS won't work.

I think that it's more helpful if you provide the output of the lspci and busybox lspci commands.

Desktop PC
Case: Sharkoon S25-W MB: Asus Rog Strix B550-A PSU: XFX Pro 750W CPU: AMD Ryzen 5700X @ 4.6 GHz RAM: Corsair 32 GB DDR4 @ 3000 MHz Heatsink: Scythe Mugen 5 rev. B VGA: Asus Tuf RTX 3080 12 GB OC

Laptop PC: Asus Zenbook UX325E

Post Reply

Return to “EasyOS”