Skip to content

mesa: relies on executable names in driconfΒ #476721

@flokli

Description

@flokli

Nixpkgs version

  • Unstable (26.05)

Describe the bug

Mesa ships (for what we care about here) a set of gl_renderer overrides to fix compatibility with some web security frameworks. See https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38845 / https://gitlab.freedesktop.org/mesa/mesa/-/commit/f912db3f8dc0c0cb8cb2358e6ec79dd03b7a875d.

In some cases, these overrides do not trigger, as our binaries are called differently, due to the use of wrappers.

We should check for which browsers this fails to apply, and then see if --inherit-argv0 in the wrapper is sufficient, and if not, see if the unwrapped binary can be moved somewhere else so it still works.

We should go through this browser list and verify the workaround does successfully trigger.

On webkit-based browsers, chrome://gpu should show a "AGX G13/G14" substring in the GL_RENDERER variable
Firefox should, at about:support show the same string in the WebGL {1,2} Driver renderer variable.
The same can also be tested by visiting https://browserleaks.com/webgl.

Executables

(see https://gitlab.freedesktop.org/mesa/mesa/-/commit/f912db3f8dc0c0cb8cb2358e6ec79dd03b7a875d#9489c9ba7c9c6e53fb67125374e5c3ff3d141270_1375_1375 for the list of overrides)

Steps to reproduce

Run the specified browser on a Asahi Linux machine with NixOS.
Check chrome://gpu or about:support, and check what the vendor string says

Expected behaviour

It should contain "AGX G13/G14", and not "Apple M1" or "Apple M2".

Screenshots

No response

Relevant log output

Additional context

No response

System metadata

  • system: "aarch64-linux"
  • host os: Linux 6.18.2, NixOS, 26.05 (Yarara), 26.05pre-git
  • multi-user?: yes
  • sandbox: yes
  • version: nix-env (Lix, like Nix) 2.93.3 System type: aarch64-linux Additional system types: x86_64-linux Features: gc, signed-caches System configuration file: /etc/nix/nix.conf User configuration files: /home/flokli/.config/nix/nix.conf:/etc/xdg/nix/nix.conf:/home/flokli/.nix-profile/etc/xdg/nix/nix.conf:/nix/profile/etc/xdg/nix/nix.conf:/home/flokli/.local/state/nix/profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/flokli/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf Store directory: /nix/store State directory: /nix/var/nix Data directory: /nix/store/2fi9912qkvr0s55kviaqq9lxl44ch33r-lix-2.93.3/share
  • channels(root): "nixos"
  • nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Notify maintainers


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