Well, you gave it a shot and in the end proved what I’ve been trying to tell people for a long time:
The OS doesn’t matter much, it’s about the applications you need to run.
What follows are my opinions are a not personal attack, nor are they meant to convince you about anything. Just observations.
Multibooting is a configuration that not too many folks actually need: it’s mostly people that are geeks of one sort or another and are trying to see what they can do. Multibooting brings it’s own problems to the table: what got installed first, followed by what. As for integrating upstream changes, they’ll get pulled in eventually. “phase out support for BIOS machines…” I don’t know that I’ve seen/heard that in a “direction of the project” statement, but if you look at the bulk of consumer machines being sold today, a very larger percentage of them are configured as UEFI (I’m guessing because of Windows). If you follow the FreeBSD svn-src-head mailing list you’d see a lot of working going into efi bootloader code, to get more features and better support for items in the UEFI spec. BIOS booting also has issues with the sizes of todays media; FreeBSD gets around some of that by using a “protective MBR” that allows gpart partitions to be usable.
Boot times: My desktop currently has over 90 days of uptime, so to me, 60 secs vs 6 secs is lost in the noise. I boot to “init 3” and manually do startx because I’m an old dog and graphical login screens are the devil spawn.
NetManager app: statically assigned and DHCP have been fine for me, I’ve long disliked the Windows way of having a GUI for everything.
Audio: I have a radio for music, the standard FreeBSD things for sound sysctls works fine so I can listen to BSDNow.
Lumina/MATE/KDE/whatever: I don’t like “desktop environments”. Never have. I like simple window managers. I’ve been using WindowMaker for just about forever, even to the point of compiling by hand on ol Solaris machines. Lumina, while still a work in progress is one of the better ones to my mind (LXDE is another) mostly because of lighter resource uses and standard ways of doing things (XDG).
No comment on the USB issues with your phones.
Joypad/joystick support: again, another one of those things I don’t care about simply because they are unneccessary to the applications I use.
JACK: I’m guessing that mucking around with groups and perhaps setuid binary would get that to work. Even under linux starting something like audio to use realtime priority for threads takes a bit of work.
JUCE: Ok, an application that doesn’t support an OS. If that application is critical to you, then use it on a supported OS. This feels a bit like complaining that MS Office doesn’t run on OS-XYZ.
Updates. I’ve been running FreeBSD as my sole desktop at home for a long time, so I know fully well the pain of make buildworld && make buildkernel && make installkernel && mergemaster -p && reboot && make installworld && mergemaster && portupgrade -af. That said, the BSDs have always had the concept of “kernel and userland should be in sync” (that takes us through the last mergemaster). Ports (User applications) often don’t have to be updated when you update the kernel, simply because the KABI doesn’t change. Building ports by hand because the prebuilt package doesn’t have the desired options for you is always going to cause conflicts, even on Linux systems (yes, been there done that at work). Could there be better integration with prebuilt packages? Sure, but since TrueOS is FreeBSD12-CURRENT + Desktop work, the KABI is allowed to change (not locked down as in 10.3 and 11.x). Very easy to wind up with something broken and then needing to be fixed.
Again, I’m not trying to convince you, but pointing out that everyones experiences are different and mostly driven by the applications deemed critical and the systems they need to run on.