Sample Header Ad - 728x90

Unix & Linux Stack Exchange

Q&A for users of Linux, FreeBSD and other Unix-like operating systems

Latest Questions

0 votes
0 answers
22 views
Rocky Linux 9 under WSL 2 cannot see Nvidia GPU
I am using a Dell Precision 3561, which has an Nvidia T1200 GPU. I would like to be able to use my GPU for hardware-accelerated graphics under WSL 2, with Rocky 9 as the OS. From what I understand this *should* be possible, but I have not ever gotten it to work. For example, trying to run `nvidia-sm...
I am using a Dell Precision 3561, which has an Nvidia T1200 GPU. I would like to be able to use my GPU for hardware-accelerated graphics under WSL 2, with Rocky 9 as the OS. From what I understand this *should* be possible, but I have not ever gotten it to work. For example, trying to run nvidia-smi just segfaults:
Mon Aug  4 11:00:09 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.138                Driver Version: 553.46         CUDA Version: 12.4     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
fish: Job 1, 'nvidia-smi' terminated by signal SIGSEGV (Address boundary error)
If I look at glxinfo, you can see that it doesn't even see the GPU, with the 'llvmpipe' software renderer being the only device:
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Mesa (0xffffffff)
    Device: llvmpipe (LLVM 18.1.8, 256 bits) (0xffffffff)
    Version: 24.1.2
    Accelerated: no
    Video memory: 15857MB
    Unified memory: yes
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 4.5
    Max GLES1 profile version: 1.1
    Max GLES profile version: 3.2
From what I can gather online Rocky Linux 9 uses Wayland rather than X11 - and maybe that is the problem? However, I'm not sure how to confirm this, as XDG_SESSION_TYPE isn't set at all. In case grub is the problem, here's my /etc/default/grub:
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rl-swap rd.lvm.lv=rl/root rd.lvm.lv=rl/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
I've also tried installing kernel headers, specifically kernel-devel, but no luck on that end. I'm using WSL2 along with its latest-and-greatest kernel, and am on Windows 11 - so the common resolutions to the problem don't seem to apply. For context, here are all my current versions: WSL:
WSL version: 2.5.9.0
Kernel version: 6.6.87.2-1
WSLg version: 1.0.66
MSRDC version: 1.2.6074
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.26100.1-240331-1435.ge-release
Windows version: 10.0.22631.5624
Windows:
Windows 11 Enterprise, 23H2
NVidia T1200 Laptop GPU:
NVIDIA-SMI version  : 550.138
NVML version        : 550.138
DRIVER version      : 553.46
CUDA Version        : 12.4
(I'm working on getting this updated to 5.80, but from what I can read about online I did not see reported issues in the 550 range) Full glxinfo here for context:
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_import_context, 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_gl_interop, GLX_MESA_query_renderer,
    GLX_MESA_swap_control, GLX_NV_float_buffer, 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_import_context, 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_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 (0xffffffff)
    Device: llvmpipe (LLVM 18.1.8, 256 bits) (0xffffffff)
    Version: 24.1.2
    Accelerated: no
    Video memory: 15857MB
    Unified memory: yes
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 4.5
    Max GLES1 profile version: 1.1
    Max GLES profile version: 3.2
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 24 MB, largest block: 24 MB
    VBO free aux. memory - total: 15328 MB, largest block: 15328 MB
    Texture free memory - total: 24 MB, largest block: 24 MB
    Texture free aux. memory - total: 15328 MB, largest block: 15328 MB
    Renderbuffer free memory - total: 24 MB, largest block: 24 MB
    Renderbuffer free aux. memory - total: 15328 MB, largest block: 15328 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 914986 MB
    Total available memory: 930843 MB
    Currently available dedicated video memory: 24 MB
OpenGL vendor string: Mesa
OpenGL renderer string: llvmpipe (LLVM 18.1.8, 256 bits)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 24.1.2
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_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
    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_border_clamp,
    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_ARM_shader_framebuffer_fetch_depth_stencil,
    GL_ATI_blend_equation_separate, GL_ATI_meminfo, 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_debug_label,
    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,
    GL_EXT_shader_framebuffer_fetch_non_coherent,
    GL_EXT_shader_image_load_formatted, 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_RG8,
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
    GL_EXT_texture_storage, 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_INTEL_shader_atomic_float_minmax, GL_KHR_blend_equation_advanced,
    GL_KHR_blend_equation_advanced_coherent, 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_NVX_gpu_memory_info, GL_NV_conditional_render, GL_NV_copy_image,
    GL_NV_depth_clamp, GL_NV_packed_depth_stencil, GL_NV_shader_atomic_float,
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_S3_s3tc

OpenGL version string: 4.5 (Compatibility Profile) Mesa 24.1.2
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_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
    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_ARM_shader_framebuffer_fetch_depth_stencil,
    GL_ATI_blend_equation_separate, GL_ATI_draw_buffers,
    GL_ATI_fragment_shader, GL_ATI_meminfo, 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_debug_label,
    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,
    GL_EXT_shader_framebuffer_fetch_non_coherent,
    GL_EXT_shader_image_load_formatted, 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_RG8,
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
    GL_EXT_texture_storage, 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_INTEL_shader_atomic_float_minmax,
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent,
    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_NVX_gpu_memory_info, GL_NV_ES1_1_compatibility, 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_shader_atomic_float,
    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 24.1.2
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_sync, GL_APPLE_texture_max_level,
    GL_ARM_shader_framebuffer_fetch_depth_stencil, 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_debug_label, 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_instanced_arrays,
    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,
    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_storage,
    GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_texture_view,
    GL_EXT_unpack_subimage, GL_KHR_blend_equation_advanced,
    GL_KHR_blend_equation_advanced_coherent, 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_sampler_objects,
    GL_MESA_shader_integer_functions, GL_NV_conditional_render,
    GL_NV_draw_buffers, GL_NV_fbo_color_attachments,
    GL_NV_generate_mipmap_sRGB, GL_NV_image_formats, GL_NV_pack_subimage,
    GL_NV_pixel_buffer_object, GL_NV_read_buffer, GL_NV_read_depth,
    GL_NV_read_depth_stencil, GL_NV_read_stencil,
    GL_NV_shader_noperspective_interpolation, GL_NV_texture_barrier,
    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
Tyler Shellberg (111 rep)
Aug 4, 2025, 05:11 PM
3 votes
1 answers
3569 views
How do I install custom fonts like xfonts on WSL/WSLg for use in GUI apps?
I try to use GUI Apps on Windows 11 via WSL and WSLg. Unfortunately my GUI app needs some custom fonts (specifically `xfonts-100dpi` and `xfonts-75dpi`). Since WSLg does not include those fonts, my GUI App crashes. How can I install those fonts and make them available for WSLg (the x11 server)? I've...
I try to use GUI Apps on Windows 11 via WSL and WSLg. Unfortunately my GUI app needs some custom fonts (specifically xfonts-100dpi and xfonts-75dpi). Since WSLg does not include those fonts, my GUI App crashes. How can I install those fonts and make them available for WSLg (the x11 server)? I've installed them for WSL itself, but it does not look like they get shared with WSLg. Even manually copying the font files from /usr/share/fonts to /mnt/wslg/fonts did not change anything.
CrownUpKid (73 rep)
Dec 8, 2022, 01:54 PM • Last activity: Jul 29, 2025, 09:06 PM
1 votes
1 answers
47 views
Unable to resolve host error when using sudo in Debian WSL
I was trying to update my packages `sudo apt update; sudo apt upgrade` on a newly created WSL Debian instance but all of the requests to get new repositories failed with this error. ```bash sudo: unable to resolve host Desktop-Dell: Temporary failure in name resolution ``` Afterwards, apt returned `...
I was trying to update my packages sudo apt update; sudo apt upgrade on a newly created WSL Debian instance but all of the requests to get new repositories failed with this error.
sudo: unable to resolve host Desktop-Dell: Temporary failure in name resolution
Afterwards, apt returned Failed to fetch I am using a Inspiron 16 Plus 7630 and installing Debian 12 Bookworm I installed Debian by running wsl --install -d Debian I tried modifying /etc/hosts and /etc/hostnames (I used nano to modify the files) to include my computer's hostname but instead it triggered the safe mode of WSL which disabled some features but I was still getting the same error as before. I also tried reinstalling WSL and Debian but nothing worked. /etc/hosts
127.0.1.1    Desktop-Dell
/etc/hostname
DESKTOP-DELL
I followed online guides to change these two files and reboot to resolve the host. [AskUbuntu](https://askubuntu.com/questions/59458/error-message-sudo-unable-to-resolve-host-none) **I can't update my apt repositories or access the internet. What steps could I take to resolve the host and fix the internet problem? Is this a problem with the naming of the hostname or is it a problem which requires a system reinstall or a problem with WSL and not with Debian?**
WilliamH25 (21 rep)
Jul 22, 2025, 08:46 AM • Last activity: Jul 23, 2025, 01:01 AM
2 votes
2 answers
5390 views
WSL 2 (Debian) main user is not a sudoer: how to reset it?
For some reason my main and only user in Debian (Windows Subsystem For Linux v2) **is not a sudoer any more**. sudo apt-get install myuser is not in the sudoers file I know I can add myself to sudoers via `usermod -aG sudo myuser` but how do that since I'm the only user? Also, If I try to run `su` t...
For some reason my main and only user in Debian (Windows Subsystem For Linux v2) **is not a sudoer any more**. sudo apt-get install myuser is not in the sudoers file I know I can add myself to sudoers via usermod -aG sudo myuser but how do that since I'm the only user? Also, If I try to run su to workaround this, my wsl password is not working.
dragonmnl (2419 rep)
Jun 9, 2020, 06:20 PM • Last activity: Jul 13, 2025, 11:32 AM
1 votes
1 answers
3197 views
Ubuntu on Windows Powershell "Can't open display"
I'm running Ubuntu 18.04 on Windows Powershell on Windows 10. I installed XMing and PuTTY and configured them so that X11 forwarding is turned on. After all this, and installing x11-apps and running xeyes, it tells me "Error: Can't open display: 0.0". I tried changing the DISPLAY to 0 and 'localhost...
I'm running Ubuntu 18.04 on Windows Powershell on Windows 10. I installed XMing and PuTTY and configured them so that X11 forwarding is turned on. After all this, and installing x11-apps and running xeyes, it tells me "Error: Can't open display: 0.0". I tried changing the DISPLAY to 0 and 'localhost:0.0, but nothing. I installed several packages, many of which will probably end of being unnecessary. I've tried just about everything in the responses both of these questions: https://unix.stackexchange.com/questions/67111/x-cant-open-display-0-while-display-variable-is-correct?newreg=2fece9554c164efd90a2726a9c526fb5 https://unix.stackexchange.com/questions/1596/can-i-launch-a-graphical-program-on-another-users-desktop-as-root , but who | awk -v user="$target_user" '$1 == user && $2 ~ "^:" {print $2}' returns nothing and xhost + gives me the same display error. I tried various configuration files such as xauth, /etc/X11/Xwrapper.config. It might be important to note that xinit returns the fatal error no screens found and /var/log/Xorg.0.log shows many errors dbus-core: error connecting to system bus: org.freedesktop.DBus.Error.FileNotFound (Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory) open /dev/dri/card0: No such file or directory open /dev/fb0: No such file or directory No devices detected. I need to be able to use image tools like ds9 for my research and have been unable to do so, so any help would be very much appreciated.
messick (11 rep)
Dec 6, 2020, 12:16 AM • Last activity: Jul 7, 2025, 12:08 AM
5 votes
1 answers
4765 views
Windows Subsystem Kali Linux 13: Permission denied
I have installed Kali linux version `Linux DESKTOP-0667P5P 4.4.0-18362-Microsoft #476-Microsoft Fri Nov 01 16:53:00 PST 2019 x86_64 GNU/Linux` as a subsystem on my machine that is running Windows 10, I't seems that I have installed the very basic version of Kali and I was trying to install the full...
I have installed Kali linux version Linux DESKTOP-0667P5P 4.4.0-18362-Microsoft #476-Microsoft Fri Nov 01 16:53:00 PST 2019 x86_64 GNU/Linux as a subsystem on my machine that is running Windows 10, I't seems that I have installed the very basic version of Kali and I was trying to install the full version using this command sudo apt-get install kali-Linux-full, but I ran into the same error in this post . I have tried the one and only answer posted there which is running the command `sudo mv /var/cache/apt/archives/jsql-injection_0.81-0kali2_all.deb \ /var/cache/apt/archives/jsql-injection_0.81-0kali2_all.deb.old` but it gives me the error of Permission Denied. I've also tried running sudo apt-get clean but produces the error below: Problem unlinking the file jsql-injection_0.81-0kali2_all.deb - pkgAcquire::Clean (13: Permission denied) I am able to Log in to root using sudo su but it still gives me permission denied.
Carlos Franco (51 rep)
Jan 7, 2020, 03:12 PM • Last activity: Jun 23, 2025, 05:04 AM
0 votes
0 answers
31 views
Error When Running an AppImage on Arch WSL
I have **Arch WSL2** set up on my **Windows 11** machine and try to run an application named [Avogadro](https://two.avogadro.cc/index.html "Avogadro") by using *AppImage* method without [FUSE](https://github.com/AppImage/AppImageKit/wiki/FUSE "FUSE") package, in which you extract your *AppImage* fil...
I have **Arch WSL2** set up on my **Windows 11** machine and try to run an application named [Avogadro](https://two.avogadro.cc/index.html "Avogadro") by using *AppImage* method without [FUSE](https://github.com/AppImage/AppImageKit/wiki/FUSE "FUSE") package, in which you extract your *AppImage* file with --appimage-extract option and run it by ./AppRun. At first I had this output:
/home/bbk/squashfs-root/usr/bin/avogadro2: error while loading shared libraries: libOpenGL.so.0: cannot open shared object file: No such file or directory
Given the output, I found out there is a missing file *libOpenGL.so.0* and installed the package *libglvnd* that contains the file, then ran ./AppRun again. This time I had something like:
...error while loading shared libraries: libfontconfig.so.1: cannot open shared object file: No such file or directory
Similar to what I had previously, so I installed *fontconfig* package and proceeded with running the application again. However, a small notification window popped up on my screen with empty tiny squares all over in place of supposed text areas with a title that says *"Install Python (archlinux)"* and output in the console: Python error
Avogadroapp version:  1.100.0
Avogadrolibs version:  1.100.0
Qt version:  6.8.1
qt.core.qobject.connect: QObject::connect(QObject, Unknown): invalid nullptr parameter
qt.tlsbackend.ossl: Failed to load libssl/libcrypto.
SSL version:  ""
qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
Using locale:  "en_US"
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslSocket
qt.network.ssl: The backend named "cert-only" does not support TLS
qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
After installing *python* package and re-running the application, I get the following output with the application's GUI with the same empty boxes: GUI error
Avogadroapp version:  1.100.0
Avogadrolibs version:  1.100.0
Qt version:  6.8.1
qt.core.qobject.connect: QObject::connect(QObject, Unknown): invalid nullptr parameter
qt.tlsbackend.ossl: Failed to load libssl/libcrypto.
SSL version:  ""
qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
Using locale:  "en_US"
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
 registering GPL plugins
qt.network.ssl: The backend "cert-only" does not support QSslSocket
qt.network.ssl: The backend named "cert-only" does not support TLS
qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
OBEnergy: method:  MMFF94
OBEnergy: method:  UFF
OBEnergy: method:  GAFF
"/home/bbk/squashfs-root/usr/bin/obabel"  found:  "/home/bbk/squashfs-root/usr/bin/obabel: Open Babel 3.1.1 -- Jan 21 2025 -- 17:50:29"
Python interpreter "/opt/hostedtoolcache/Python/3.11.11/x64/bin/python3" does not exist trying "python" in your path. Please set a path to the python interpreter.
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslSocket
qt.network.ssl: The backend named "cert-only" does not support TLS
qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
Python interpreter "/opt/hostedtoolcache/Python/3.11.11/x64/bin/python3" does not exist trying "python" in your path. Please set a path to the python interpreter.
OBEnergy: method:  MMFF94
Open Babel formats ready:  145
Setting default format to cjson.
How can I move on from here as I have no idea how to interpret those output messages. **NOTE:** I solved the empty box issue by installing font packages *ttf-dejavu* and *ttf-liberation*. The application GUI seems to be working fine for now, and I will try to update this post as soon as I can sort out, if possible, warnings seen in the output.
bbk (1 rep)
Jun 21, 2025, 12:27 PM • Last activity: Jun 21, 2025, 09:30 PM
1 votes
1 answers
19277 views
WSL2: Why am I unable to sudo?
``` [username@MACHINE bin]$ sudo sudo: Files/Microsoft: command not found ``` I can `sudo` just fine as root. I thought this might be due to spaces introduced into `PATH` by WSL, but for both the root and non-root accounts, neither enclosing all paths in quotes nor escaping the spaces fixes this pro...
[username@MACHINE bin]$ sudo
sudo: Files/Microsoft: command not found
I can sudo just fine as root. I thought this might be due to spaces introduced into PATH by WSL, but for both the root and non-root accounts, neither enclosing all paths in quotes nor escaping the spaces fixes this problem. **EDIT:** This is apparently due to devtoolset-7 prepending my PATH with /opt/rh/devtoolset-7/root/usr/bin, which includes a sudo executable. I would rather not have to type /bin/sudo every time I wish to invoke superuser access; by what means may I make /opt/rh/devtoolset-7/root/usr/bin/sudo usable?
MiloDC (111 rep)
Nov 28, 2021, 11:21 PM • Last activity: Jun 20, 2025, 08:06 PM
0 votes
1 answers
3625 views
Chromium not opening in WSL2
I am a Linux noob using the Ubuntu 20.04 distro. I use Linux via WSL2 and my OS is Windows 10. I managed to install chromium but the app simply fails to open without a warning when I try to open it using GUI. I tried using the terminal to open it and then this came up: > `[0103/222716.865545:ERROR:e...
I am a Linux noob using the Ubuntu 20.04 distro. I use Linux via WSL2 and my OS is Windows 10. I managed to install chromium but the app simply fails to open without a warning when I try to open it using GUI. I tried using the terminal to open it and then this came up: > [0103/222716.865545:ERROR:exception_handler_server.cc(361)] getsockopt: Invalid argument I referred to [this video](https://youtu.be/FJ-ymbDIths) to install Chromium: . But I couldn't do one step in it, the one around 3:30 minutes as I couldn't find the *Softwares and Updates* window. I don't know whether that caused the issue. How to fix this? I haven't found any possible duplicates for this yet. EDIT: As mentioned in the comments, I checked the version and found it to be version 1! I don't know why it happened though!
Ubuntu-20.04 | Running | 1
Niranjan K Sabu (9 rep)
Jan 4, 2022, 05:42 AM • Last activity: Jun 15, 2025, 12:09 PM
1 votes
2 answers
2123 views
Using X11 on OpenSUSE with WSL2
I installed WSL2 on my computer, and with it I grabbed OpenSUSE so I could get some experience with a distro besides Ubuntu. I sideloaded OpenSUSE 15.1, and it installed fine and loads into the terminal fine. Now, in order to use things that have a GUI [I'm trying to get KDE], I need some sort of X1...
I installed WSL2 on my computer, and with it I grabbed OpenSUSE so I could get some experience with a distro besides Ubuntu. I sideloaded OpenSUSE 15.1, and it installed fine and loads into the terminal fine. Now, in order to use things that have a GUI [I'm trying to get KDE], I need some sort of X11 window manager. I'm using Xming, which is probably the most popular one. When I set the $DISPLAY variable with
DISPLAY=0.0
, it runs fine, and using
$DISPLAY
returns the same thing that I inputted. However, when I run
, I get the following:
$DISPLAY is not set or cannot connect to the X server.
. What might be causing this issue, and how might I get around it?
Sameer Iyengar (11 rep)
Jul 28, 2020, 06:46 PM • Last activity: Jun 10, 2025, 04:05 AM
1 votes
4 answers
4603 views
How to install and run docker with nix
I'm using Debian on WSL. Nix is already install. I install docker with this command: nix-env -iA nixpkgs.docker I want to start the daemon : systemctl start docker > Failed to connect to bus: No such file or directory **update** FYI $XDG_RUNTIME_DIR= /mnt/wslg/runtime-dir $UID=1000 $DBUS_SESSION_BUS...
I'm using Debian on WSL. Nix is already install. I install docker with this command: nix-env -iA nixpkgs.docker I want to start the daemon : systemctl start docker > Failed to connect to bus: No such file or directory **update** FYI $XDG_RUNTIME_DIR= /mnt/wslg/runtime-dir $UID=1000 $DBUS_SESSION_BUS_ADDRESS has no value ls -l /mnt/wslg/runtime-dir >drwx------ 4 pierre pierre 120 Dec 26 00:41 runtime-dir I can access the bus. But I need to use sudo sudo systemctl start docker Now I have this problem > Failed to start docker.service: Unit docker.service not found. I think docker.service is this file: /etc/systemd/system/docker.service But it doesn't exist on my OS. I'Ve tried to uninstall and reinstall docker with nix. To no avails I think that it is linked: https://discourse.nixos.org/t/docker-packages-systemd-unit-files-dont-work-on-ubuntu/12160 sudo cp ~/.nix-profile/etc/systemd/system/docker.service /etc/systemd/system/docker.service sudo cp ~/.nix-profile/etc/systemd/system/docker.sock /var/run/docker.sock sudo systemctl enable docker Failed to start docker.service: Unit docker.socket not found. >Failed to start docker.service: Unit docker.socket not found. After reading this link , I use this command in order to the know where I should replace docker.socket file. : systemctl list-sockets --all But no docker.socket is listed **update I have made all the commands from scratch. Now I have this problem A dependency job for docker.service failed. See 'journalctl -xe' for details.
Pierre-olivier Gendraud (109 rep)
Dec 26, 2022, 08:05 AM • Last activity: Jun 3, 2025, 10:10 PM
1 votes
1 answers
2948 views
WSL2: Issue installing new kernel
I will preface this by saying: I don't have a lot of experience in a Linux environment. I am trying to install ROCm on WSL2 running Ubuntu. I will be using PyTorch for a class and I want to use my GPU for compute. ROCm installed fine, however, I kept getting the error `ROCk module is NOT loaded, pos...
I will preface this by saying: I don't have a lot of experience in a Linux environment. I am trying to install ROCm on WSL2 running Ubuntu. I will be using PyTorch for a class and I want to use my GPU for compute. ROCm installed fine, however, I kept getting the error ROCk module is NOT loaded, possibly no GPU devices. I found this post which indicated that the problem could be that WSL doesn't allow you to install modules. That linked to a comment found here which showed how to install a new kernel. I followed the instructions, but I have run across an error when running make. The error is: No rule to make target '/home//lkm_example.o', needed by '/home//lkm_example.mod'. Stop. (`` is my username, I just didn't want it out here) Through Google, I found several posts saying that I need to install linux-headers. I tried running sudo apt-get install kernel-headers, but that resulted in an error: E: Unable to locate package kernel-headers How do I proceed?
Excelsior (11 rep)
Sep 2, 2022, 06:00 AM • Last activity: May 29, 2025, 02:01 PM
1 votes
1 answers
70 views
Issue with `BASH_LINENO` in bash function which get debugging information
In Visual Code, on Windows 10, I'm trying to create a function for my `.sh` project (*which I run with Git Bash*), which will report errors to the console in case user, let's say, provides fewer or more parameters for a function. For this reason, I created the file `error_report.sh` with the functio...
In Visual Code, on Windows 10, I'm trying to create a function for my .sh project (*which I run with Git Bash*), which will report errors to the console in case user, let's say, provides fewer or more parameters for a function. For this reason, I created the file error_report.sh with the function ErrorReport.
#!/usr/bin/env bash

function ErrorReport()
{
    local caller_func="${FUNCNAME}"
    local caller_file="$(basename "${BASH_SOURCE}")"
    local caller_line="${BASH_LINENO}"
    local caller_code="$(sed -n "${caller_line}p" "${BASH_SOURCE}" | sed 's/^[[:space:]]*//;s/[[:space:]]*$//')"
    printf "\nCaller: ${caller_func}()"
    printf "\nFile  : ${caller_file}"
    printf "\nLine  : ${caller_line}"
    printf "\nCode  : ${caller_code}"
}
As main file of my project, I have temporarily created the tester_copy.sh where I have the following:
#!/usr/bin/env bash

declare -g script_dir="$(cd "$(dirname "${BASH_SOURCE}")" && pwd)"

source "${script_dir}/lib/ui/window_manager.sh"
source "${script_dir}/error_report.sh"

function TestFunction()
{
    if [[ "$#" -ne 3 ]]; then
        ErrorReport
        return 1
    fi

    local arg1="$1"
    local arg2="$2"
    local arg3="$3"

    echo "arguments: $arg1, $arg2, $arg3"
}

function Main()
{
    ConsoleWindowSetup "${MMS_WINDOW_TITLE}" 40 120

    clear

    TestFunction "11111" "22222"

    read -re -p ""
}

Main "$@"
The problem is that in my console, displays Caller and File correctly, but Line and Code incorrectly. Instead of displaying Line: 28 and Code: TestFunction "11111" "22222", it displays:
Caller: Main()
File  : tester_copy.sh
Line  : 6
Code  : source "${script_dir}/error_report.sh"
But if I change my main script to:
#!/usr/bin/env bash

declare -g script_dir="$(cd "$(dirname "${BASH_SOURCE}")" && pwd)"

source "${script_dir}/lib/ui/window_manager.sh"
source "${script_dir}/error_report.sh"

function TestFunction()
{
    if [[ "$#" -ne 3 ]]; then
        ErrorReport
        return 1
    fi

    local arg1="$1"
    local arg2="$2"
    local arg3="$3"

    echo "Λήφθηκαν τα arguments: $arg1, $arg2, $arg3"
}

ConsoleWindowSetup "${MMS_WINDOW_TITLE}" 40 120
clear

TestFunction "11111" "22222"

read -re -p ""
If I take the main code outside the function Main(), then it displays correctly in the console...
Caller: main()
File  : tester_copy.sh
Line  : 28
Code  : TestFunction "11111" "22222"
Which I don't want though because ErrorReport is intended for errors inside functions. Why is this happening and how can I make it work when the error is inside a function? ##### Debugging (17/05/2025) * If I copy the whole .sh project into my Ubuntu Server it works even if the error is inside a function. * It also works using WSL. * I am almost sure that the problem happens only if I run the .sh file from Windows, by just double clicking on it. In any other case, works fine. ##### Debugging (18/05/2025) The default application on this Windows computer to open .sh files is "C:\Program Files\Git\git-bash.exe". When I open my .sh file by double-clicking, the problem I mentioned occurs. However, if I try running it by dragging the file to "C:\Program Files\Git\bin\bash.exe", "C:\Program Files\Git\bin\sh.exe" or "C:\Program Files\Git\git-bash.exe", it works fine in all three! I tried creating a shortcut with the target "C:\Program Files\Git\git-bash.exe" --cd="C:\Users\***\Desktop\PROGRAMMING\SH\sigma_sh_lib" -c "./tester_copy.sh" and it also works fine! Then I created a function to get debug shell info...
DebugShellInfo() {
    echo "================= DEBUG INFO ================="
    printf "🔹 Shell Script Name     : %s\n" "$0"
    printf "🔹 Declared Interpreter  : %s\n" "${SHELL:-}"
    printf "🔹 Bash Version          : %s\n" "${BASH_VERSION:-}"

    # FUNCNAME stack
    printf "🔹 FUNCNAME Stack        :"
    if [[ ${#FUNCNAME[@]} -eq 0 ]]; then
        echo " "
    else
        echo " ${FUNCNAME}"
        for ((i = 1; i "
    else
        echo " ${BASH_SOURCE}"
        for ((i = 1; i "
    else
        echo " ${BASH_LINENO}"
        for ((i = 1; i < ${#BASH_LINENO[@]}; i++)); do
            printf "                           %s\n" "${BASH_LINENO[i]}"
        done
    fi

    echo "=============================================="
}
Now, when I called it, I noticed the following. When it is called while the file is running by double-clicking it outputs...
================= DEBUG INFO =================
🔹 Shell Script Name     : C:\Users\***\Desktop\PROGRAMMING\SH STUFF\sigma_sh_lib\tester_copy.sh
🔹 Declared Interpreter  : /usr/bin/bash
🔹 Bash Version          : 5.2.37(1)-release
🔹 FUNCNAME Stack        : DebugShellInfo
                           MSG
                           MSG
                           Main
                           main
🔹 BASH_SOURCE Stack     : /c/Users/***/Desktop/PROGRAMMING/SH STUFF/sigma_sh_lib/lib/utils/debug_shell_info.sh
                           /c/Users/***/Desktop/PROGRAMMING/SH STUFF/sigma_sh_lib/lib/ui/msg.sh
                           /c/Users/***/Desktop/PROGRAMMING/SH STUFF/sigma_sh_lib/lib/ui/msg.sh
                           C:\Users\***\Desktop\PROGRAMMING\SH STUFF\sigma_sh_lib\tester_copy.sh
                           C:\Users\***\Desktop\PROGRAMMING\SH STUFF\sigma_sh_lib\tester_copy.sh
🔹 BASH_LINENO Stack     : 130
                           1
                           14
                           70
                           0
==============================================
But when it is called with the other ways I mentioned above, it outputs...
================= DEBUG INFO =================
🔹 Shell Script Name     : ./tester_copy.sh
🔹 Declared Interpreter  : /usr/bin/bash
🔹 Bash Version          : 5.2.37(1)-release
🔹 FUNCNAME Stack        : DebugShellInfo
                           MSG
                           MSG
                           Main
                           main
🔹 BASH_SOURCE Stack     : /c/Users/***/Desktop/PROGRAMMING/SH STUFF/sigma_sh_lib/lib/utils/debug_shell_info.sh
                           /c/Users/***/Desktop/PROGRAMMING/SH STUFF/sigma_sh_lib/lib/ui/msg.sh
                           /c/Users/***/Desktop/PROGRAMMING/SH STUFF/sigma_sh_lib/lib/ui/msg.sh
                           ./tester_copy.sh
                           ./tester_copy.sh
🔹 BASH_LINENO Stack     : 194
                           95
                           60
                           70
                           0
==============================================
Notice the differences in the "Shell Script Name" paths and in "BASH_SOURCE Stack" and "BASH_LINENO Stack" paths!!! **Note**: I moved the code of ErrorReport function into a function called MSG.
Simos Sigma (111 rep)
May 17, 2025, 09:04 AM • Last activity: May 19, 2025, 07:43 AM
1 votes
1 answers
1235 views
In WSL console, how do you read and write to the clipboard?
How do you access the (windows) clipboard in WSL so that you can pipe it into commands, use it as stdin, etc.? There's more than enough answers about how to *write* to the clipboard. But I couldn't find any specifically about *reading* from it. For what it's worth: I'm answering my own question. Hop...
How do you access the (windows) clipboard in WSL so that you can pipe it into commands, use it as stdin, etc.? There's more than enough answers about how to *write* to the clipboard. But I couldn't find any specifically about *reading* from it. For what it's worth: I'm answering my own question. Hopefully this saves others time in the future.
Daniel Kaplan (1070 rep)
Mar 10, 2022, 09:14 AM • Last activity: May 6, 2025, 05:14 PM
1 votes
1 answers
2766 views
Mounting a VHDX ext4 partition in linux
I'm wondering how terrible an idea the following is or is not... I want to share an ext4 fs between WSL2 and linux using a fixed-size .vhdx image created in windows (residing on NTFS partition). Mounting this in WSL is straightforward, but the issue I am trying to avoid is a bunch of FUSE or NBD ove...
I'm wondering how terrible an idea the following is or is not... I want to share an ext4 fs between WSL2 and linux using a fixed-size .vhdx image created in windows (residing on NTFS partition). Mounting this in WSL is straightforward, but the issue I am trying to avoid is a bunch of FUSE or NBD overhead accessing the drive in native linux. No problems mounting the ntfs (mounted as ntfs3) partition, but to get to my question: is there any reason it is a bad idea to directly mount the ext4 partition that lives in the .vhdx file? I.E: mount -o offset=5MiB /mnt//ext4.vhdx It seems to work fine... for now.
valenumr (11 rep)
Sep 2, 2023, 12:59 AM • Last activity: May 5, 2025, 06:02 AM
3 votes
2 answers
526 views
Is there a way to alias "redirect stdout and stderr to a file"?
# [Relevant Context][1]: ### Redirect standard out ```bash command > file ``` ```bash command 1> file ``` ### Redirect standard error ```bash command 2> file ``` ### Redirect standard out and standard error to separate files ```bash command 2> error.txt 1> output.txt ``` ### Redirect standard out an...
# Relevant Context : ### Redirect standard out
command > file
command 1> file
### Redirect standard error
command 2> file
### Redirect standard out and standard error to separate files
command 2> error.txt 1> output.txt
### Redirect standard out and standard error to the same file
command > file 2>&1
command &> file # bash only? 
# For all I know, all the examples are bash-only, but the article called it out explicitly on this line
Warning: the following example redirects *only* stdout to file. This happens because the stderr is redirected to stdout before the stdout was redirected to file
command 2>&1 > file # incorrect!
# Question: In my mind, these symbols are completely arbitrary, and therefore, difficult to memorize. I know how to alias *commands*, but is there some way to alias these symbols to make them easier to remember? Something like this: ### Redirect standard out and standard error to the same file
command redirectStandardOutputAndError file
or even better:
command >outerr file
Bonus points if this works on zsh and bash, but I'm bash is the only requirement.
Daniel Kaplan (1070 rep)
Sep 24, 2023, 09:03 PM • Last activity: Apr 23, 2025, 01:56 PM
7 votes
2 answers
1237 views
My Ubuntu Linux home directory is /home/ls. Why is it "ls" and not my user name?
I have installed Ubuntu Linux under WSL on my Windows 11 PC. I established a username during the installation, `perdiem`. When everything was up and running, I `cd`'ed to `~`, and the directory I ended up in was `/home/ls`. I'm not sure why this is; I would have thought it would be my username. It i...
I have installed Ubuntu Linux under WSL on my Windows 11 PC. I established a username during the installation, perdiem. When everything was up and running, I cd'ed to ~, and the directory I ended up in was /home/ls. I'm not sure why this is; I would have thought it would be my username. It is also odd that it is actually a Linux command—sort of confusing. This isn't a problem, but does anyone know why ls is established as the home directory rather than my username? --- Output of id:
uid=1000(ls) gid=1000(ls) groups=1000(ls),4(adm),20(dialout),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),100(users),107(netdev)
Output of grep /home/ls /etc/passwd:
ls:x:1000:1000:,,,:/home/ls:/bin/bash
Anne Eve (73 rep)
Apr 20, 2025, 03:03 AM • Last activity: Apr 21, 2025, 04:44 PM
3 votes
1 answers
13599 views
WSL2 Ubuntu: How to start ssh-agent and add ssh key automatically on each terminal start up
I'm using WSL2, on Terminal, with Ubuntu installed. I have added the following to my `.bashrc`: ``` # Start ssh-agent # check if ssh-agent is already running if [ -z "$SSH_AUTH_SOCK" ]; then #start ssh-agent eval "$(ssh-agent -s)" fi # Ask for ssh-add read -p "Do you want to add your SSH public key?...
I'm using WSL2, on Terminal, with Ubuntu installed. I have added the following to my .bashrc:
# Start ssh-agent
# check if ssh-agent is already running
if [ -z "$SSH_AUTH_SOCK" ]; then
     #start ssh-agent
    eval "$(ssh-agent -s)"
fi


# Ask for ssh-add
read -p "Do you want to add your SSH public key? (y/n) " response

if [ "$response" = "y" ]; then
  ssh-add ~/id_rsa
  ssh-add -l
elif [ "$response" = "n" ]; then
  echo "No identity on terminal session"
else
  echo "Invalid response"
fi
With the idea that every time I open a new terminal, it will ask for a prompt if an identity is needed and proceed to start ssh-agent and add the key if yes. At first, it appears as if the script work and it'll show the agent's PID, along with a prompt for my ssh password and I'm able to see the ssh-agent when i do top. However, it did not actually initialize ssh-agent nor add the key, despite seeing the output of these commands. I even did ssh-add -l and it'll output: The agent has no identities. How do I go about making this work? This has to be a WSL issue..
Nik Shafiq Sirhan (31 rep)
Mar 22, 2023, 05:51 AM • Last activity: Apr 16, 2025, 11:10 AM
0 votes
2 answers
642 views
Windows PATH sometimes not loaded into wsl PATH
I'm using Arch linux in WSL ([yuk7/archWSL](https://github.com/yuk7/archWSL)). Info pasted at the bottom of this question. Most of the time, I can run Windows programs from a WSL shell with no problems. Take, for example, `explorer.exe .`, which will open up Windows Explorer to the current working d...
I'm using Arch linux in WSL ([yuk7/archWSL](https://github.com/yuk7/archWSL)) . Info pasted at the bottom of this question. Most of the time, I can run Windows programs from a WSL shell with no problems. Take, for example, explorer.exe ., which will open up Windows Explorer to the current working directory. Sometimes, however, Windows' binaries' folders aren't loaded into my PATH. I've concluded this as when working as expected, which explorer.exe outputs the path to explorer, and echo $PATH contains /mnt/c/Windows; however, when calling explorer.exe shows -bash: explorer.exe: command not found, my PATH is much shorter and does not contain any of the Windows directories I would expect it to. To fix this, I can either add the location of the executable I want into PATH manually when I encounter the issue (which requires me to memorise the location of each one), or terminate my WSL instance and start it anew, which usually fixes the issue. Starting a new shell or sourcing ~/.bashrc and similar have proven ineffective solutions. I'm looking for the reason that my Windows PATH is sometimes not included in my WSL PATH, and a way to ensure that it is included. WSL info pasted below.
WSL version: 2.3.26.0
Kernel version: 5.15.167.4-1
WSLg version: 1.0.65
MSRDC version: 1.2.5620
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.26100.1-240331-1435.ge-release
Windows version: 10.0.22631.4460
Josh Brunton (146 rep)
Nov 18, 2024, 04:29 PM • Last activity: Apr 11, 2025, 02:21 PM
1 votes
0 answers
2438 views
SSH error kex_exchange_identification: read: Connection reset by peer
I'm having a problem when I SSH into WSL2 from a Raspberry Pi. I've created rules on my Windows machine to forward port 2222 to WSL2 and set up an inbound firewall rule to allow traffic on port 2222. This is the SSH debug output when I run this command: ssh riccardoob@[windows ip] -p 2222 -vvv OpenS...
I'm having a problem when I SSH into WSL2 from a Raspberry Pi. I've created rules on my Windows machine to forward port 2222 to WSL2 and set up an inbound firewall rule to allow traffic on port 2222. This is the SSH debug output when I run this command: ssh riccardoob@[windows ip] -p 2222 -vvv OpenSSH_8.4p1 Ubuntu-5ubuntu1.1, OpenSSL 1.1.1j 16 Feb 2021 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files debug1: /etc/ssh/ssh_config line 21: Applying options for * debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/ubuntu/.ssh/known_hosts' debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/ubuntu/.ssh/known_hosts2' debug2: resolving "[domain name]" port 2222 debug2: ssh_connect_direct debug1: Connecting to [domain name] [ip] port 2222. debug1: Connection established. debug1: identity file /home/ubuntu/.ssh/id_rsa type -1 debug1: identity file /home/ubuntu/.ssh/id_rsa-cert type -1 debug1: identity file /home/ubuntu/.ssh/id_dsa type -1 debug1: identity file /home/ubuntu/.ssh/id_dsa-cert type -1 debug1: identity file /home/ubuntu/.ssh/id_ecdsa type -1 debug1: identity file /home/ubuntu/.ssh/id_ecdsa-cert type -1 debug1: identity file /home/ubuntu/.ssh/id_ecdsa_sk type -1 debug1: identity file /home/ubuntu/.ssh/id_ecdsa_sk-cert type -1 debug1: identity file /home/ubuntu/.ssh/id_ed25519 type -1 debug1: identity file /home/ubuntu/.ssh/id_ed25519-cert type -1 debug1: identity file /home/ubuntu/.ssh/id_ed25519_sk type -1 debug1: identity file /home/ubuntu/.ssh/id_ed25519_sk-cert type -1 debug1: identity file /home/ubuntu/.ssh/id_xmss type -1 debug1: identity file /home/ubuntu/.ssh/id_xmss-cert type -1 debug1: Local version string SSH-2.0-OpenSSH_8.4p1 Ubuntu-5ubuntu1.1 kex_exchange_identification: read: Connection reset by peer Connection reset by [ip] port 2222 What is throwing me off is the fact that the connection is correctly established and the server is correctly set up. I have to specify that I was able to ssh into wsl from the same raspberry but all of a sudden this error starts to show up, unfortunately I can't say for certain what I did since the last successfull connection. Please ask if more informations are necessary to best debug this issue. EDIT: I tried from outside the network wsl is connected to, as suggested by a thread that I found here but I get a similar error: ssh_exchange_error: connection closed by peer
Riccardo Barbieri (23 rep)
Oct 6, 2021, 06:39 PM • Last activity: Apr 3, 2025, 10:01 AM
Showing page 1 of 20 total questions