Studied languages at a university in Sweden, using only libre programs, except for one group assignment where we used Google docs. Nothing terribly interesting (computer-wise). Everything worked. Professors wanted .docx files, which LibreOffice happily exported. If I was so inclined, nothing would've stopped me from using something like OpenBSD, or hell, even Haiku would probably work.
boo_
SDDM is still X11 based, no matter which desktop you run with it. I have tried enabling Wayland on it, but it's been... Unstable to say the least.
Spotify is CEF, I think, and it works pretty well.
No OS is perfect, as you likely do have to use a proprietary modem and some proprietary apps, but CalyxOS works well for me on my Fairphone 4. I like the base install being as free as realistically possible on a modern Android phone, especially replacing Google apps with microG. Just don't enable SafetyNet if you don't want it to run (sandboxed) Google blobs. That API is deprecated anyways.
The experience is smooth, free and I get a repairable phone without having generative """AI""" shoved down my throat. A win on all fronts in my opinion.
Also, SafetyNet is deprecated, and Google has said that app developers shouldn't use it for a long time before that, so I've never had to use it. My experience of a blob-free microG has been really good, and I trust FOSS code a hell of a lot more than sandboxed proprietary code, because I can't be sure what it does with the data I inevitably do provide it.
MicroG has also been very clear IMO about SafetyNet not being a reimplementation, but rather a sandbox when it was relevant.
I like Sway, it obviously needs a bit of configuration to be useful, but that's partly what I like about it, and using a distro like Guix (Nix configured with Lisp) makes it easy to have the same settings on multiple PCs. Otherwise I like GNOME; it's well supported and has many good apps. Touch/touchpad support is really good as well.
I agree with the other commenter recommending to migrate as soon as possible while the kernel still does support, but that does seem like a workable strategy if you can't for the foreseeable future.
Use an old kernel version (if yours doesn't still support it) and something like btrfs-convert to get a maintained filesystem instead. Works pretty well in my experience with converting other filesystems to btrfs.
OpenGamepadUI works well as a FOSS alternative to Steam if you'd like that as well.
I second rusticl, but I'd like to note that it uses Gallium internally, and not Vulkan. There is a vulkan-gallium translation layer called Zink, though, which can be used to run rusticl on any Vulkan-capable GPU AFAIK. Zink is initially made to run OpenGL on Vulkan, but it's also just a general-purpose Gallium driver.
SMB is weird, do you have the option to run NFS on the share instead? Since NFS is made for Unix systems, it's what I've always gone for.