To start, I haven't done that,I stick to the
-RELEASE
-tagged stuff.
In the FreeBSD camp, the unstable stuff is tagged
-CURRENT
. That stuff is really bleeding-edge, and you're really on your own for support. Meaning, on the Forums here, people will be rather reluctant to help if you're on
-CURRENT
. If you use
-CURRENT
, you're basically expected to be able to solve problems yourself. Reporting that something works for you on
-CURRENT
- that usually is supposed to happen AFTER everybody says that the
-RELEASE
- tagged stuff doesn't support that one interesting feature.
Having said that,
-CURRENT
is basically aimed at experimenting with code and stabilizing it. For example, I have a ROG Zephyrus laptop (AMD Advantage) with a weird N-key keyboard. That keyboard did not work right under FreeBSD until very recently - and it took trying to install 15-CURRENT (July 2025 snapshot) to get that keyboard going. I actually tried to get some troubleshooting help here on the Forums - not much success under 13 and 14, but 15-CURRENT seemed to work. And now I'm waiting for the December release of FreeBSD 15.
So basically - yeah, it's possible to run bleeding-edge FreeBSD, but you're kind of on your own - you'll need to know how to research bugs on FreeBSD's Bugzilla, for starters.
As for KDE - I am a big fan of it. Convenient UI, FreeBSD does have very up-to-date version in Ports, and there's Konsole that makes all the old-school UNIX quite available.
Thing is, if you do
freebsd-update(8), it will be a major pain to figure out the correct git snapshot of corresponding kernel sources to download into
/usr/src! What
freebsd-update(8) does, it
only downloads the pre-compiled, pre-patched kernel, and NOT the corresponding sources! It will be on you to correctly match the two by hand. I never did anything that complicated... I just download a bootable .iso file of the next release, and the download contains everything, even the correct
src
set.
For me, ZFS means I can completely forget the headaches of partitioning an SSD at all. But if I want to place some limits on a specific dataset, I can do it later at my convenience.