I know this flies in the face of the whole point of these read only systems, but unfortunately my wifi card (Qualcomm WCN7850 Wi-Fi 7 soldered into a Gigabyte Aero D TRX50 MB) is not supported by the shipped firmware for beta-40 Kinoite (or earlier, of course).
I swapped over to a mutable workstation install and was pretty easily able to get it working by pulling down a testing branch from one of the kernel maintainers. To get it working though I need to delete /lib/firmware/ath12k and replace it with some files from that repo, broadly following the directions laid out here. These files are write-protected in the atomic versions of Fedora though.
How could I most sustainably go about overlaying these changes? Brand-new to this immutable world so some hand holding would be appreciated. Sadly losing wifi is not a valid option so if the answer is just “You shouldn’t be doing that” then I guess I just have to fallback to workstation…
Thanks!
Edit: I posed my full solution below, but wanted to mark the source of the solution appropriately–just scroll down a bit for the solution steps.
On Fedora Atomic Desktops (the new and very needed name for all rpm-ostree variants) every file you add to such directories needs to be installed with a RPM.
So if you dont get RPM packages, you can build an RPM placing exactly the needed files in the right directories.
This is not that hard I think, but never did it myself yet.
But there are multiple things like boot targets or SDDM themes that need to be converted to RPM packages, which can then be layered with rpm-ostree install package.rpm
I was able to get it working following these steps:
Set up a copy of the ath12k directory in my home space with the updated firmware. Here I included both uncompressed (as per the guide posted above) and compressed (.xz) versions to ensure they would supersede the baked versions.
Used FPM to create an RPM: fpm -s dir -t rpm -n wifi7_patch ath12k=/lib/firmware/
Installed it with rpm-ostree with a forced overwrite of existing files: rpm-ostree install --force-replacefiles ./wifi7_patch-1.0-1.x86_64.rpm
Rebooted
And I’ve now got wireless! I’m not sure what I would have done if it were the case that I, for some reason, needed to delete a file as opposed to simply replace it, but this got me over the line in any case.