It’s interesting to read the opinions of the other responders. My guess is that none of them have been using a “desktop” as long as I have. I have been using X.Org for 28 years now, first with Interactive Unix, then with BSD/OS, and since about 1995 with FreeBSD. Since that time, I have tried other displays.
The first issue I have is this term "desktop". My keyboard and mouse are on the desktop. I put windows on my displays, not "desktops" that clutter top, bottom or sides of the display. I don't want something that requires me to click on the root window to get things done, requiring the windows to be smaller than the display so that you can find the root window easily. I don't want a window manager that can't handle simple tasks like raising or lowering a window. I don't want a system that wants me to click on a window before I can talk to it. I don't want a system that automatically raises the currently selected window. I don't want a system that changes its appearance on every release. I want a system that can display on multiple monitors, on multiple systems if necessary, like this old photo taken in 2002 (thus the CRT monitors), which shows 5 displays spread across two FreeBSD systems:
What does that leave? Microsoft can't do what I want. Apple can't do what I want. Linux could do what I want, but current distros try to emulate Microsoft and sell themselves short. And even if I did hack Linux to do what I want, I would be left with a system that looks like FreeBSD but which has some surprises where I need them least.
So: why does FreeBSD have no "desktop" market share? Because too many of us reject the concept of "desktop". If you want, say, KDE - KDE.org or GNOME, you can have it: just install from the FreeBSD Ports collection. But don't expect to be tied to what somebody else thinks is good for you, especially if that somebody else has never seen what you could have if you weren't tied to convention.
I have used FreeBSD for years, on desktop and on servers.
But I moved to GNU/Linux.
FreeBSD is a great operating system. It feels more coherent and more polished than the GNU + Linux system. It also used to be more stable and faster.
The problem I had with FreeBSD was that at them time an update took about a week of recompilation. All the apps where compiled from source. The process was automated but still took very long on the machines of the time. The other problem was running applications like Skype, Flash… Then there is the problem of finding the right drivers.
There is very good documentation on the FreeBSD site, but almost all commercial books on UNIX like systems are about GNU/Linux, may be Mac OS X, but not FreeBSD, or any other BSD.
Last but not least, most technicians at the hosting company refused to offer any support because they never used any BSD system. The later one doesn’t concern the desktop directly, but if I need to have GNU/Linux at the data center, why not have the same system at home, especially if it also has a better support for commercial applications?
I think that by now FreeBSD has a much better upgrading system. But in the mean time GNU/Linux has become more stable and about as fast as FreeBSD. The FreeBSD desktop experience is about the same as GNU/Linux; it really depends which desktop one installs. The only real difference is that BSD systems don’t use the Bash shell by default, but that shouldn’t bother too many desktop users.
FreeBSD has a huge port collection. Users can choose witch applications and which version of these application they want to use. This is great for developers and geeks, but end users don’t want to make these choices, they want to be offered a default set of applications and know that they are all certified to work on their system. End users also want to make sure that a security update won’t break their setup. Redhat based distribution offer than guarantee, FreeBSD certainly doesn’t.
At the end of the day, FreeBSD offers the same desktop experiences as GNU/Linux, doesn’t offer any real advantages to desktop user, but has a few drawbacks when it comes to commercial applications. So why use it?
The main advantage of FreeBSD is its license. Companies which want to create UNIX based systems without sharing their sources, can use FreeBSD but not GNU nor Linux. Apple’s OS X and Sony’s Orbis OS (PS4) are both based on FreeBSD.
Programmers and geeks also often prefer FreeBSD because it is one operating system, and a very polished and stable one, and not a combination of two unrelated (and to some degree antagonistic) projects like GNU + Linux. Kernel developers also say that the FreeBSD system calls are more consistent than on Linux.
The reason very few people use FreeBSD on their desktops, is that unless they are hardcore FreeBSD fans, there are no incentives to do so, only a few drawbacks.
All these answers are reasonable. I'm actually quite glad FreeBSD hasn't gotten popular as a desktop. Some things are best in their pure state.
When FreeBSD isn't running a GUI it's core processes fit on ONE screen. Add a server? There's its process right there in that gloriously short list.
I spent some time running FreeBSD as my desktop but every time I ran ps aux I got depressed seeing all those extra processes.
Yes, that IS completely absurd….
FreeBSD has my favorite default shell. I love being asked if I was trying to do xyz thing when I fat finger xyz. I love it so much I considered just living in it and assembling a suite of apps and scripts to allow enough access to images and web pages without running the whole GUI system when it wasn't needed.
Why, YES, that IS even more insane….
Now, to answer the question - the reason FreeBSD has nearly zero share of the desktop market is because there is little or no marketing support for driving desktop users to it. IF users started showing up in serious numbers it would make sense to focus resources on their needs.
Since I REALLY LIKE the benefits I can rely on from where the FreeBSD team DOES focus their efforts… here's hoping that desktop crowd never arrives.
FreeBSD is beautiful without a GUI. Get off my f—king lawn.
Because someone made a horrible design decision back in 1984.
In absolute fairness to those involved, it was an understandable decision, both from a research perspective, and from an economic perspective, although likely not, from a technology perspective.
Why and what.
The decision was taken because the X Window System was intended to run on cheap hardware, and, at the time, that meant reduced functionality in the end-point device with the physical display attached to it.
At the same time, another force was acting to also limit X displays to display services only, rather than rolling in both window management and specific widget instances for common operational paradigms.
Mostly, common operational paradigms didn’t really exist for windowing systems because they also simply didn’t exist at the time, and no one really knew how people were going to use the things, and so researchers didn’t want to commit future research to a set of hard constraints.
So a decision was made: separate the display services from the application at the lowest level of graphics primitives currently in use at the time.
The ramifications of this were pretty staggering.
First, it guaranteed that all higher level graphics would live on the host side of the X protocol, instead of on the display device side of the protocol.
Despite a good understanding of Moore’s law, and the fact that, since no X Terminals existed at the time as hardware, but were instead running as emulations on workstations that had sufficient capability, this put the higher level GUI object libraries — referred to as “widgets” — in host libraries linked into the applications.
Second, it guaranteed that display organization and management paradigms would also live on the host side of the protocol — assumed, in contradiction to the previous decision, to be running on the workstation.
But, presumably, at some point, as lightweight X Terminals became available, to migrate to a particular host computer managing compute resource login/access services.
Between these early decisions reigned chaos.
Specifically, the consequences of these decisions have been with us ever since:
Both of these ultimately render an X-based system unsuitable for desktops.
I can’t pay once for training. Training that I do pay for does not easily and naturally translate between applications. Each new version may radically alter the desktop management paradigm into unrecognizability.
Things are worse, from an application vendor perspective.
What toolkit do I pick to use in my application, so that I can be assured that I can continue to sell the same software, with minor updates and fixes, for the next 5–8 years, without expending money on a major redevelopment effort?
What do I put in my training materials, to show how the application is supposed to look when things are operating correctly, or guide users steps to resolve problems?
The fan-out on the decisions trees become massive, very quickly.
Consequences.
No sane vendor develops software specifically for these platforms.
Yes, that was plural. FreeBSD isn’t the only one with this problem: Linux has it, too.
You will occasionally get a vertical market vendor that doesn’t care.
For example, the OS on the Sony PlayStation is based on FreeBSD.
But mostly?
Venders care about “develop once, sell many, many times”.
The future.
Is there hope for the future?
Well, the Linux community has been working on something called Wayland, and it is very promising…
…In the same way X was “very promising” in 1984, because, unfortunately, they are making exactly the same mistakes X made in 1984, rather than correcting them, now that we have 20/20 hindsight, and know what a mature widget library should look like.
So Wayland is screwing up again.
But hey, it only took us, what, 25 years to get from X in 1987 to Wayland in in 2012.
Maybe if we try again in 2037, we can get to where Windows was in 1995.
FreeBSD developers would love people to use their system as a desktop, but to get FreeBSD up and running harkens back to the experience of early Linux users. You need to know what you are doing and you do need to compile everything and install everything from scratch.
I would say that the experience is about the same as what an Arch Linux or Gentoo Linux user would experience.
While FreeBSD is Unix and older than Linux, Linux has moved on to gain market share and become far more easier to install. This is all thanks to distributions like Red Hat, SUSE, etc.
There are distributions of BSD… Most notable one is PC-BSD, now called True OS… But this is pretty much not as well known as Linux like Ubuntu.
So there are people using FreeBSD as desktops. The true focus of the FreeBSD team though is not mainly just a Desktop, but to cover Mainframes, etc. So having a FreeBSD desktop is not a huge priority. Most of FreeBSD users are developers and pretty much know how to compile it into a working desktop. Also with the support and the coverage that Linux gets, tends to over shadow FreeBSD.
But if you think about it carefully, there is a FreeBSD based system that has a really good market share - Mac OS. OK… Its not completely FreeBSD, but their code is in there..
It just hasn’t been a focus of the BSD developers. BSD was designed as a multi-user operating system, and was not designed for the desktop.
Then again, Linux wasn’t either. However, Linux took the public sphere by storm, and companies rose up that would eventually provide desktops while making money, selling servers, and contributing to the kernel itself.
One of the first was Red Hat: they pushed themselves initially as an easy-to-install distribution, in contrast to Slackware’s console version with lots of techspeak.
It wasn’t until Canonical came along with Ubuntu that the idea of a Linux desktop really took off: that was the focus of Ubuntu, to create a desktop for everyone.
The Linux Mint project took Ubuntu one step further, again with their focus on the desktop.
BSD has had desktops available, and commercially, as the PC-BSD implementation. This has never really caught on, and lives on under a new name.
The desktop is pretty much 95% Microsoft Windows. That leaves 5% for BSD and Linux desktops, which is not much. Given how early BSD was hamstrung by copyrights in court (leading to the NET/2 distribution with no networking), Linux was free to take off.
After taking off, it was only a matter of time before Linux took over the UNIX desktop, of which there was almost no market at the time. Now virtually all UNIX desktops are Linux desktops.
To compete with Linux desktops at this point, BSD would have to have a player that takes mindshare from the established players, like Red Hat, Ubuntu, Linux Mint, and others like Fedora.
(An interesting side note that I almost forgot: the BSD desktop does exist and thrive in every Macintosh sold…)
Still have a question? Ask your own!
