I looked this up before buying the GPU, and I read that it should “just work” on Debian stable (Bookworm, 12). Well, it doesn’t “just work” for me. :(
clinfo
returns two fatal errors:
fatal error: cannot open file '/usr/lib/clc/gfx1100-amdgcn-mesa-mesa3d.bc': No such file or directory
fatal error: cannot open file '/usr/lib/clc/gfx1030-amdgcn-mesa-mesa3d.bc': No such file or directory
I get similar errors when trying to run OpenCL-based programs.
I’m running a backported kernel, 6.6.13, and the latest Bookworm-supported mesa-opencl-icd, 22.3.6. From what I’ve found online, this should work, though Mesa 23.x is recommended. Is it safe/sane to install Mesa from Debian Trixie (testing)?
I’ve also seen references to AMD’s official proprietary drivers. They do not officially support Debian, but can/should I run the Ubuntu installer anyway?
I’m hoping to get this up and running without any drastic measures like distro hopping. That said, if “upgrade to Testing or Unstable” is the simplest approach, I am willing to entertain the idea.
Thanks in advance for any help you can offer.
Why even use debian at that point?
Half of all of my packages are from nix unstable, but the system itself is still debian stable. That means I’ve got the bleeding edge user packages, but my system always boots. Casuals can use flatpak instead.
The only downside is for bleeding edge hardware, but again, why use debian at that point.
Because I’ve been using an apt-get based distro since the late 90’s, Because I work in IT, Because I don’t like rice/hours of config/features. Yawning chasm of difference between always boots and always boots and dive right into work/game/browsing/whatev’s
Can you explain more about your workflow? Do the Nix packages have their own isolated dependency resolution? How does it work when Debian packages depend on a library you get from Nix, or vice-versa?
Here’s an example. The main difference to my current setup is that I’m installing nixGL through nix-channels because then I don’t have to use --impure that way, although I still haven’t gotten around to automating its usage so that might still change.
Basically I just have list of packages that I want installed (home.nix), and I run updates a couple of times a week. If something breaks (it hasn’t yet), I could just roll back to a previous generation.
Each package has specified dependencies, nix downloads them separately and then symlinks them in order for the package to access it. If two packages require the same version of the dependency, based on the hash of the output, they’ll each get a symlink of the same dependency. If they require different versions, it will download the correct ones for each of the packages.
That way you’re theoretically never get mismatched dependencies, but it uses a bit more space.