FreeBSD has a desktop, doesn't it?
What made FreeBSD harder in the end was just that fewer people use it, so tons of third-party software supports Linux better, and it's easier to find online answers.
I found ports works very well myself - everything kept up to date with upstream, and they take care to rebuild everything all the time so you rarely run into library ABI issues.