Ethernet driver not working (Realtek r8125 2.5Gbit)

I am willing to send 50.00USD (approx 63.00 cad) via Interact E-transfer to the first person that is able to get my Ethernet driver working on my machine using only software or my existing hardware - no recommending I buy this card or that one. In order to receive the reward you must ensure that any solution provided does not seriously compromise the security of Qubes and that the core functionalities of Qubes as a whole is unaffected.

As 2.5Gbit drivers become more common - I foresee this becoming a larger issue, and I’d rather solve it sooner rather than later.

What is my machine: My machine uses a “MSI B550M Mortar motherboard” - there is no built in WiFi - only Ethernet. The board has a Realtek 2.5Gbit Driver.

I also have an old d-link wifi - dongle (Model: DWA-171A1) that may be used but only as a temporary solution to get the main 2.5Gbit Ethernet working. Additionally I have a “UBIT 2974Mbps AX200” wifi card that can also be used, but again - not as a permanent solution.

I am using the Qubes 4.1 Alpha iso, but am fine switching to the Qubes 4.0.4 iso. The Qubes 4.0.4 iso does install properly on my new machine and must be installed on the old laptop before the hard-drive can be moved over. The 4.1 iso installs fine on both machines.

I have been working on this for a few weeks and have a few suspected avenues that may yield a satisfactory solution.

  1. Install the driver without internet. The driver requires gcc and make to compile properly - gcc and make have a ton of dependencies that also must be installed manually. This would likes require the manual installation of dozens of independent packages via USB, this is not Ideal as it would take a ton of time and effort, but If it works - it works.

  2. Install Qubes os an a supported system, install the drivers and move the SSD over to the problematic machine. This is my current approach, the problem is my machine that does work with Qubes is a laptop and my new machine I’d like to use is a desktop. This causes the PCI devices assigned to Qubes on “first boot” to be mapped incorrectly on the new machine. If there is a way to “re-map” the pci devices to the new mobo - that would be an ideal solution.

  • This has proved to be a proposed solution with interesting results. If I try it install Qubes on the desktop and move it to the laptop - it doesn’t boot on the laptop. If I install Qubes on the laptop and move it to the desktop it does boot - however some Qubes reference PCI devices that do not exist on the desktop.
  1. If you have other solutions - let me know and we can see If we can get things working.

Thanks to everybody for your help.

Christian Potts

1 Like

Can’t you just detach all PCI devices before moving your Qubes installation and attach the new one afterwards?

1 Like

I am not to sure If I understand what you mean.

I have tried listing the PCI devices on the new machine and manually attaching the Ethernet driver to the sys-net VM, however this still resulted in no internet, and many of my VM’s simply would not boot. this leads me to believe that many of the PCI devices are wrongly “linked” to the machine. I have tried modifying them manually but this has led to many instances where my keyboard/mouse stop working - requiring me to do a re-install.

Thank you for your quick reply.

2 Likes

Could you extract your working driver from one machine to another? Just a driver, not whole installation.

If I can, I am not sure how.

This is something I’m looking into now.

If you have the Internet on another machine, you should also be able to install all those dependencies and compile the driver on that machine and move the compiled binary to the new one I guess…

I will do just that, I am currently installing Qubes on my laptop- I will compile the driver on that machine. Do you know where I could find the driver binary?

Typically, when you compile a binary yourself, it appears in the current folder. README file could have more details.

1 Like

Excellent, Qubes is currently being installed - the driver will be shortly after-words. I will keep you updated on the progress. I have installed the driver - there where a few soft errors but believe the driver was installed properly. I’ve “lsmod grep | r8125” and the driver appears to be loaded into modules, however I cannot find the bin.

1 Like

If you have installed 4.0.4, sys-net (based on fedora-32 template) should be able to detect RTL8125 by running the following in dom0

qvm-prefs sys-net kernel ""

I’ve tried this in the past and unfortunately It did not work - But I will try it again.

I have installed the driver - there where a few soft errors but believe the driver was installed properly. I’ve “lsmod grep | r8125” and the driver appears to be loaded into modules, however I cannot find the bin.

1 Like

I do not know Fedora well enough, but perhaps this could be helpful:

I prefer Debian anyway. I’ll read the article, thank you for your continued help.

I am so happy to report that I have found a solution to my problem. One solution was to install qubes with a kernel newer than 5.6. The solution outlined in this forum post does not require you to build a qubes ISO from scratch and can be accomplished in about half an hour.

https://www.asty.org/qubes-os-is-incredible-heres-some-tips-and-quick-hacks-for-it/

A few notes from me: The very last command that is needed to be exucuted is “rpm -ivh –nodeps *” - note that the second “-” is actually two “–” and not just one, it’s a subtle difference that cost me some time.

Also, the writter says that you can just reboot and things will work, this is not the case for me - In the boot menu before qubes boots up, choose the advanced boot option. By choosing advanced you can pick the Kernel of your choice.

This solution has been tested with 4.0 and 4.1 for kernels 5.6 and 5.8 - both work.

1 Like

That solution didn’t work for me. It looked solid enough but I had to deal with lots of error messages, managed to get over most issues, ignored a few error msgs when installing the new kernel with rpm and eventually gave up since I couldn’t get to the advanced boot menu.
On a related side note, I’m pretty disappointed that I couldn’t find any official documentation explaining how to inject a newer qubes kernel into qubes installation (usb)drive. Letting my new (super)workstation “mature” in the closet until 4.1 is stable enough to become my daily driver doesn’t make me happy.