Installing drivers with a read-only file system

I'm trying to install a driver for my wifi dongle, but when using the method I saw online I'm getting a read-only file system error. I understand why the system is read-only, but is there a way I could modify this command to get the driver working within the limitation of a read-only file system? The command is question is: sudo make dkms_install and here's where I'm getting the tips on how to install the driver (I'm obviously swapping all instances of apt with rpm-ostree) https://community.tp-link.com/en/home/forum/topic/184118
Archer T2U Plus driver for Linux Ubuntu/Rasbian - Home Network Comm...
Hi,   I just got a TpLink Archer T2U Plus, the one with the big antenna. Works well on windows without any installataion, however I couldn't get it working on my Linux Ubuntu 19.10. with Kernel 5.3.0-24-generic system. Is there any official
21 Replies
dnkmmr
dnkmmr14mo ago
try just use-broadcom-wl
llakala
llakalaOP14mo ago
resulted in a gray screen on boot
EyeCantCU
EyeCantCU14mo ago
Please don't enable Broadcom WL as this isn't even a Broadcom device whatsoever. You have a Realtek 8812au. To get it working someone would have to put together a kmod for it
llakala
llakalaOP14mo ago
I found a kmod on GitHub, what's the proper commands to compile it into an rpm file? when I tried I got some vague error messages
dnkmmr
dnkmmr14mo ago
thank ostree for giving us rollbacks
EyeCantCU
EyeCantCU14mo ago
Can you link me to the repo? I wasn't able to find anything packaged for Fedora specifically yesterday
llakala
llakalaOP14mo ago
GitHub
GitHub - RussianFedora/rtl8812au-kmod: Realtek 8812AU/8821AU USB Wi...
Realtek 8812AU/8821AU USB WiFi driver kmod/akmod package - GitHub - RussianFedora/rtl8812au-kmod: Realtek 8812AU/8821AU USB WiFi driver kmod/akmod package
llakala
llakalaOP14mo ago
readme was in Russian and a few years old but seems to say fedora
EyeCantCU
EyeCantCU14mo ago
Oh wow. From over 6 years ago. Almost guarantee its incompatible with the current kernel
llakala
llakalaOP14mo ago
damn gotcha
llakala
llakalaOP14mo ago
https://github.com/aircrack-ng/rtl8812au there's this one, but it's not as a kmod
GitHub
GitHub - aircrack-ng/rtl8812au: RTL8812AU/21AU and RTL8814AU driver...
RTL8812AU/21AU and RTL8814AU driver with monitor mode and frame injection - GitHub - aircrack-ng/rtl8812au: RTL8812AU/21AU and RTL8814AU driver with monitor mode and frame injection
llakala
llakalaOP14mo ago
OpenWrt Wiki
package: kmod-rtl8812au-ct
package: kmod-rtl8812au-ct
llakala
llakalaOP14mo ago
but might not be for Fedora
zerochill
zerochill12mo ago
Is it ok to continue this conversation? I am having the same issue. I built an RPM and installed it with rpm-ostree successfully, but It didn't autoload for the device. I'm guessing I'm missing a udev rule or installing it to the wrong location. Manually inserting the kernel module (from the rpm installed location) does get the wifi adapter going. I am using an rtl8814au, but there is a similar repo for the rtl8812au that I think could be packaged in the same way. It isn't the cleanest rpm spec file, I've got some hard-coded versions in the %files for example that would need updated if it were to become part of a build process.
Name: rtl8814au-morrownr-git
Version: 5.8.5.1
Release: 1
Epoch: 1
Summary: Realtek RTL8814AU Driver
License: GPLv2
BuildArch: x86_64
URL: https://github.com/morrownr/8814au.git
BuildRequires: git kernel-modules-core kernel-devel make
Provides: kmod(8814au.ko) = %{epoch}:%{version}-%{release}

%description
Realtek RTL8814AU Driver

%define srcdir %{name}-%{version}

%prep
rm -rf %{srcdir}
git clone https://github.com/morrownr/8814au.git %{srcdir}

%build
cd %{srcdir}
make clean
make

%install
cd %{srcdir}
mkdir -p "%{buildroot}/lib/modules/$(uname -r)/kernel/drivers/net/wireless/"
install -D -p -m644 8814au.ko "%{buildroot}/lib/modules/$(uname -r)/kernel/drivers/net/wireless/"

%files
/lib/modules/6.6.9-200.fc39.x86_64/kernel/drivers/net/wireless/8814au.ko

%changelog
* Sun Jan 14 2024 Sean <[email protected]>
- initial build
Name: rtl8814au-morrownr-git
Version: 5.8.5.1
Release: 1
Epoch: 1
Summary: Realtek RTL8814AU Driver
License: GPLv2
BuildArch: x86_64
URL: https://github.com/morrownr/8814au.git
BuildRequires: git kernel-modules-core kernel-devel make
Provides: kmod(8814au.ko) = %{epoch}:%{version}-%{release}

%description
Realtek RTL8814AU Driver

%define srcdir %{name}-%{version}

%prep
rm -rf %{srcdir}
git clone https://github.com/morrownr/8814au.git %{srcdir}

%build
cd %{srcdir}
make clean
make

%install
cd %{srcdir}
mkdir -p "%{buildroot}/lib/modules/$(uname -r)/kernel/drivers/net/wireless/"
install -D -p -m644 8814au.ko "%{buildroot}/lib/modules/$(uname -r)/kernel/drivers/net/wireless/"

%files
/lib/modules/6.6.9-200.fc39.x86_64/kernel/drivers/net/wireless/8814au.ko

%changelog
* Sun Jan 14 2024 Sean <[email protected]>
- initial build
Kyle Gospo
Kyle Gospo12mo ago
If you can PR it to ublue-os/akmods it can easily be included
tulip
tulip12mo ago
That would be pretty awesome! Please consider doing that @zerochill
zerochill
zerochill12mo ago
I'm up for this. I took a look at the akmods repo in github, but couldn't follow how the source code for each repo is actually getting pulled down. I know the way I was doing it by cloning during the prep step isn't used frequently. I followed the ublue-os/akmods repo over to the copr repo and looked for the assets for build-kmod-wl.sh, but didn't see where those rpms would be coming from, so I looked at the gasket kmod in the copr build and found that is is built from https://github.com/KyleGospo/gasket-dkms.git, but I still don't understand what pulls that in? I'm not that familiar with copr or packaging for fedora, so sorry about my ignorance here.
Kyle Gospo
Kyle Gospo12mo ago
That one is built in my repo, in your case maybe PR your spec to ublue-os/packages I'll build it in our akmods copr repo and then you can use it in a PR to ublue-os/akmods
zerochill
zerochill12mo ago
Ok great, I'll do that and put in a PR on both of those repos. Thanks! I finally got some time to work on this again. I got an akmods packages building in a personal copr and was able to install it into a container using the akmods command. I have to step away again, but I'll figure out installing it to my host system and make sure it works and then get a PR up for the repos. I'll package up the RTL8812 drivers after I make sure the RTL8814au is working, since I can't test the RTL8812 myself.
zerochill
zerochill12mo ago
Ok, I'm pretty sure that this is working so I made a PR, but I'm pretty new to akmods, so definitely give me a shout if something looks off. https://github.com/ublue-os/packages/pull/9
GitHub
feat: add rtl8814au wifi driver by sradigan · Pull Request #9 · ubl...
This PR adds two spec files to build akmods packages for the rtl8814au driver. I've been testing it with a 0846:9054 NetGear, Inc. Nighthawk A7000 802.11ac Wireless Adapter AC1900 [Realtek 8814...
Arthur
Arthur3mo ago
It’s ok to bring this back? How can I make this work on my machine?
Want results from more Discord servers?
Add your server