Skip to content

mesa: wayland-client linked in executable is incompatible with Mesa driver in NixOS #451770

@axelkar

Description

@axelkar

Nixpkgs version

  • Stable (25.05)

Describe the bug

When the version/path of wayland-client is set explicitly for an executable built with an older version of Nixpkgs than the NixOS system, it may break Mesa, because it expects a specific version of wayland-client.

Steps to reproduce

  • nixos-25.05 flake (Wayland 1.23.1)
  • nixos-unstable NixOS (Mesa 25.2.3, Wayland 1.24.0)
  1. Run NixOS from nixos-unstable branch with hardware.graphics.enable = true;.

  2. Clone wgpu

  3. Set LD_LIBRARY_PATH=<wayland-client>/lib or set linker options (e.g. via NIX_LDFLAGS or RUSTFLAGS) to with -L<wayland-client>/lib -lwayland-client (Note: wayland-client from nixos-25.05 branch). This is recommended in lots of places to get winit working.

    For example, nix-shell shell.nix --arg pkgs 'import (builtins.getFlake "github:NixOS/nixpkgs/nixos-25.05") { }'.

  4. Try running cargo run --bin wgpu-examples boids

  5. Get errors like this:

    [2025-10-13T19:45:52Z ERROR wgpu_hal::vulkan::instance] GENERAL [Loader Message (0x0)]
            /nix/store/0imsfp6ixij9pqr25wrxizcs6m8hhj0w-mesa-25.2.3/lib/libvulkan_radeon.so: undefined symbol: wl_display_dispatch_queue_timeout
    [2025-10-13T19:45:52Z ERROR wgpu_hal::vulkan::instance]         objects: (type: INSTANCE, hndl: 0x555557ce3ed0, name: ?)
    [2025-10-13T19:45:52Z ERROR wgpu_hal::vulkan::instance] GENERAL [Loader Message (0x0)]
            loader_icd_scan: Failed loading library associated with ICD JSON /nix/store/0imsfp6ixij9pqr25wrxizcs6m8hhj0w-mesa-25.2.3/lib/libvulkan_radeon.so. Ignoring this JSON
    [...]
    [2025-10-13T19:45:52Z ERROR wgpu_hal::vulkan::instance]         objects: (type: INSTANCE, hndl: 0x555557ce3ed0, name: ?)
    [2025-10-13T19:45:52Z ERROR wgpu_hal::vulkan::instance] GENERAL [Loader Message (0x0)]
            vkCreateInstance: Found no drivers!
    [2025-10-13T19:45:52Z ERROR wgpu_hal::vulkan::instance]         objects: (type: INSTANCE, hndl: 0x555557ce3ed0, name: ?)
    

Expected behaviour

It should "just work". I think? See the response to a Debian bug report below.

Screenshots

No response

Relevant log output

Additional context

https://lists.debian.org/debian-x/2025/09/msg00083.html

System metadata

  • system: "x86_64-linux"
  • host os: Linux 6.16.9, NixOS, 25.11 (Xantusia), 25.11.20250928.e9f00bd
  • multi-user?: yes
  • sandbox: yes
  • version: nix-env (Nix) 2.31.2
  • channels(root): "home-manager, nixos"
  • channels(axel): ""
  • nixpkgs: /nix/store/npsan903n6s1f30nrip3fvqkmx8fxwgg-source

Notify maintainers

mesa package maintainers: @K900 @primeos @vcunat
wayland package maintainers: @primeos @codyopel @alyssais


Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)

I assert that this issue is relevant for Nixpkgs

Is this issue important to you?

Add a 👍 reaction to issues you find important.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions