NVIDIA eGPU with Fedora 42 on a Framework 13 AMD Laptop
I recently purchased my first eGPU to try with my Framework 13 laptop. After some trial and error this now works reliably for me. This is the hardware I used with my setup:

-
EXP GDC TH3P4G2/TH3P4G3 Thunderbolt GPU Dock
- I’m using the USB-C Thunderbolt 4 cable that comes with the eGPU
-
GeForce GTX 1060 6GB GPU
- HDMI cable to connect to my monitor
-
Standard PC PSU. Must be compatible with:
- 24-Pin ATX power connector for the GPU dock
- 8-Pin ATX CPU power connector for the GPU dock
- Appropriate PCI/GPU/accessory power cable for the GPU
- Framework 13 AMD Laptop
Hardware Model
Framework Laptop 13 _AMD Ryzen 7040Series_
Processor
AMD Ryzen™ 5 7640U w/ Radeon™ 760M Graphics × 12
$ lspci | grep -i nvidia
64:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
64:00.1 Audio device: NVIDIA Corporation GP106 High Definition Audio Controller (rev a1)
I used a fresh install of
Fedora Linux 42 for this
process. I installed Fedora 42
(Fedora-Workstation-Live-42-1.1.x86_64
) onto an
external M2 drive via USB-C so that I could leave my internal
drive intact while tinkering with the setup. I did nothing unique
or special during the installation except that I enabled
third-party repositories, which allowed me to later download
NVIDIA drivers from the fusion nonfree repos without any
additional work.
Operating System
Fedora Linux 42 (Workstation Edition)
$ uname -a
Linux fedora-egpu 6.16.10-200.fc42.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Oct 2 19:23:55 UTC 2025 x86_64 GNU/Linux
The system is using the more modern Wayland
, rather
than the classic X11
, as the display server.
$ echo $XDG_SESSION_TYPE
wayland
An HDMI cable is connected from my GPU to my monitor. The thunderbolt cable that shipped with the GPU dock is connected to the Framework laptop using the combo power + thunderbolt port (🔋⚡) on the dock. This port is how video is sent from the laptop to the GPU and it also charges the laptop.

At this point, I see a solid green light on the GPU dock when it is powered on. Before booting the laptop the fans on the dock will continually spin, then stop, in a sort of erratic and stuttering way. I assume this is because the GPU is powered at this point, but not in a state where the fans can be controlled reliably. After I eventually boot into the OS the fans run properly and smoothly as needed.
At this point, with no additional effort, my eGPU works
(kinda)! I have video output through both my external
monitor from the NVIDIA GPU and also the internal Framework laptop
display. However, this video output is misleading.
The process is not complete. By looking at the
output from glxinfo
it’s clear that the system
is using the internal AMD GPU on the laptop and not the external
eGPU with the NVIDIA card.
$ glxinfo | egrep 'OpenGL vendor|OpenGL renderer'
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon 760M Graphics (radeonsi, phoenix, LLVM 20.1.8, DRM 3.64, 6.16.10-200.fc42.x86_64)
Additionally, if I start Kdenlive (I use this for occasional amateur video editing), I see that the options to enable NVIDIA hardware acceleration are not usable. Although I can check the box for NVIDIA hardware acceleration, it is not respected and unchecks itself if I check my hardware requirements or close and re-open the config wizard in Kdenlive.

Although the eGPU “works” in the sense that it provides any video output it is not being used by the laptop as the primary GPU. It seems like the eGPU is only being used as a dumb video-passthrough of some sort at this point.
An existing project called all-ways-egpu can handle switching from the internal to external eGPU like I need.
Configures eGPU as primary under Linux Wayland desktops.
After installing all-ways-egpu
it must be configured.
It’s possible to use their configuration wizard, but I found
it was simpler to manually retrieve the PCI BUS IDs for my NVIDIA
GPU using lspci
. See my relevant (edited) output
here.
$ lspci -D -k | grep -i nvidia
0000:64:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
0000:64:00.1 Audio device: NVIDIA Corporation GP106 High Definition Audio Controller (rev a1)
I then created a configuration file for
all-ways-egpu
at
/usr/share/all-ways-egpu/egpu-bus-ids
with the
following content.
0000:64:00.0 nvidia
After that I could use all-ways-egpu
to designate the
eGPU as the primary compositor device for Wayland.
$ sudo all-ways-egpu set-compositor-primary egpu
Compositor variables set. Restart Display Manager for changes to take effect.
The display manager must be restarted for changes to take effect. To restart the display manager there are a couple mechanisms that could be used. Beware, restarting the display manager will immediately log out the current user.
The all-ways-egpu
menu can be used to restart the
display manager by choosing option 0
.
$ sudo all-ways-egpu
-------------------------
All-Ways-eGPU Main Menu
-------------------------
1. Guided Setup
2. Manual Setup
3. Disable a GPU (Method 1)
4. Set boot-vga Flag (Method 2)
5. Set Compositor Specific Variables (Method 3)
6. Help
7. Version
8. Uninstall all-ways-eGPU
9. Status
0. Restart Display Manager
q. Exit
Enter Choice [0-9]:
0
Alternatively, on my system, I can run
sudo systemctl restart display-manager.service
, which
is what I see the all-ways-egpu
does on my particular
system
when I examine their scripts.
After restarting the display manager I can see we’re getting
a bit closer now! Again, the eGPU still “works” and is
displaying video. I can also see that Mesa, not NVIDIA, libraries
are used when I check against glxinfo
.
$ glxinfo | egrep 'OpenGL vendor|OpenGL renderer'
OpenGL vendor string: Mesa
OpenGL renderer string: NV136
It seems OpenGL is using the eGPU as the primary GPU now, but it
is not using the NVIDIA libraries and driver.
lspci
shows similar information. I’m using the
nouveau
driver here and not the official NVIDIA
drivers.
$ sudo lspci -knn | grep -EA3 'VGA|3D|Display'
pcilib: Error reading /sys/bus/pci/devices/0000:00:08.3/label: Operation not permitted
64:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] [10de:1c03] (rev a1)
Subsystem: eVga.com. Corp. Device [3842:6163]
Kernel driver in use: nouveau
Kernel modules: nouveau
--
c1:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 [1002:15bf] (rev cb)
Subsystem: Framework Computer Inc. Device [f111:0006]
Kernel driver in use: amdgpu
Kernel modules: amdgpu
Also, as with my earlier debugging, Kdenlive reflects a similar
situation. Kdenlive now detects a change in the video card, but
I’m still unable to use NVIDIA hardware acceleration in
Settings
-> Run Config Wizard...
.

Anecdotally, I also see that the video output for my Framework is
choppy and slow, which suggests the video driver may not be ideal
for this device. I then installed the proprietary
Current GeForce/Quadro/Tesla
drivers based on
the RPM Fusion documentation.
This driver is suitable for any GPU found in 2014 and later.
I followed the documentation instructions to install the proprietary NVIDIA drivers.
$ sudo dnf update -y
$ sudo dnf install akmod-nvidia
$ sudo dnf install xorg-x11-drv-nvidia-cuda
After rebooting I can then see the official NVIDIA libraries are
used by glxinfo
.
$ glxinfo | egrep 'OpenGL vendor|OpenGL renderer'
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2
lspci
also agrees that the nvidia
driver
is being used rather than nouveau
for my eGPU.
$ sudo lspci -knn | grep -EA3 'VGA|3D|Display'
[sudo] password for will:
pcilib: Error reading /sys/bus/pci/devices/0000:00:08.3/label: Operation not permitted
64:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] [10de:1c03] (rev a1)
Subsystem: eVga.com. Corp. Device [3842:6163]
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidia
--
c1:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 [1002:15bf] (rev cb)
Subsystem: Framework Computer Inc. Device [f111:0006]
Kernel driver in use: amdgpu
Kernel modules: amdgpu
Finally, Kdenlive agrees as well that NVIDIA hardware acceleration can be utilized.

This seems like true success to me. The eGPU is working and sending video to my external monitor using the eGPU as the primary GPU.
If I reboot with the eGPU unplugged my laptop reverts back to the internal AMD GPU like I’d want.
$ glxinfo | egrep 'OpenGL vendor|OpenGL renderer'
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon 760M Graphics (radeonsi, phoenix, LLVM 20.1.8, DRM 3.64, 6.16.10-200.fc42.x86_64)
$ sudo lspci -knn | grep -EA3 'VGA|3D|Display'
[sudo] password for will:
pcilib: Error reading /sys/bus/pci/devices/0000:00:08.3/label: Operation not permitted
c1:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 [1002:15bf] (rev cb)
Subsystem: Framework Computer Inc. Device [f111:0006]
Kernel driver in use: amdgpu
Kernel modules: amdgpu
If I repeat again and I boot back up with the eGPU on and connected the laptop goes back to using it as the primary GPU with NVIDIA drivers by default.

Troubleshooting
- In the past I saw a blue flashing light on the eGPU Dock. I needed all power cables connected. The 24-Pin ATX PSU cable, the 8-Pin CPU cable, and the power cable from the PSU straight to the GPU.
- On my non-new/non-pristine Framework installation I couldn’t get things working initially. I saw no video output through the eGPU. My machine was using outdated NVIDIA drivers. I had to uninstall and re-install the NVIDIA drivers to get the latest and then things worked.
Notes
- https://community.frame.work/t/ucsi-acpi-usbc000-ucsi-get-pdos-failed-5/69163/7
- https://community.frame.work/t/solved-th3p4g3-egpu-not-working-standby-light-and-both-thunderbolt-ports-not-working/48159
- https://community.frame.work/t/egpu-with-amd-processor/36535/9
- https://community.frame.work/t/th3p4g3-egpu-not-working/62318
- https://www.reddit.com/r/eGPU/comments/944o65/laptop_wont_detect_my_gpu_and_my_exp_gdc_beast/
- https://community.frame.work/t/thunderbolt-nvidia-egpu-on-gnome-wayland-on-debian-12-on-framework-13-amd-ryzen-7-7840u/50976/7
- https://github.com/ewagner12/all-ways-egpu
- https://github.com/hertg/egpu-switcher
- https://egpu.io/exp-gdc-th3p4g2-thunderbolt-gpu-dock-review/
- https://www.reddit.com/r/framework/comments/1htg0ix/framework_13_amd_egpu/
- https://discussion.fedoraproject.org/t/f40-kernel-module-load-error-when-installing-nvidia-drivers-no-such-device/128727/37
- https://download.nvidia.com/XFree86/Linux-x86_64/560.35.03/README/supportedchips.html