’ve recently upgraded to TrueNAS 25.04, which now includes Incus integration. Previously, I was using the jailmaker script to create containers and successfully pass the Intel iGPU (via /dev/dri) into them for hardware-accelerated tasks like video transcoding.
Now I’m trying to migrate my workflow to use Incus-managed containers, but I’ve run into an issue: /dev/dri is not present inside the new containers, so the iGPU isn’t accessible.
On the host, /dev/dri exists and shows the expected devices (card0, renderD128). But inside the container created via Incus, /dev/dri is missing.
What’s the correct/best way to pass the Intel GPU into an Incus container on TrueNAS 25.04?
I’m curious if those containers became incompatible with newer releases of TrueNAS since they were modified in the CLI. At least the warning advises against doing that
No it does not break the GUI. It will show “GPU: Unknown” under Devices.
I can add that any invalid entry in the instance config MAY break the GUI. Eg I did not have gputype specified previously and that created problems all the way to even the Datasets page in the GUI.
I’m running into the same issue described in this thread: after upgrading to TrueNAS SCALE 25.04, I’m trying to pass my Intel iGPU into an Incus container, but /dev/dri is missing inside the container — even though it’s visible on the host (card0, renderD128).
I’ve seen the solution involving incus config edit with the gpu device block, but I haven’t tested it yet. Before I try it, I’d like to know:
Has anyone here successfully implemented that workaround in 25.04?
Does it persist across reboots or GUI reloads?
Is there any official plan to fix this in an upcoming release?
For context, I also tried installing a Radeon Pro WX 2100 in my HP ProLiant MicroServer Gen10, but that ended up crashing the TrueNAS GUI and causing system instability. I had to remove the card entirely to get the system working again.
Any input from users who got a stable GPU passthrough working — especially for hardware acceleration (transcoding, etc.) inside Incus containers — would be greatly appreciated.
I recently installed 24.04 and have a container with pass-through working using this method. I did have to stuff around with the gid and uid to make it work.