Why Isn't BSD a Desktop Operating System?
An Anonymous Coward in red leather asks: "I mostly use my machine for desktop-user type stuff: web browsing, word processing, game playing, listening to MP3s, and so forth. Out of curiosity and general geekiness, I've tried a fair sampling of Open Source and other alternate OSes just for kicks (SuSe, Red Hat and Slackware Linux, BeOs, FreeBSD). My favorite, so far, has been FreeBSD. It's stable, fast, supports all my hardware (including nifty OSS sound drivers) and the ports tree makes installing new software painless. Yet when I tell my other Open Source type friends (including BSD users and supporters) that FreeBSD is my favorite Desktop operating system, they look at me funny and say, 'FreeBSD is a server operating system, weirdo.' My question is: Why is FreeBSD not considered a valid desktop choice? What would FreeBSD need added to it to make a desktop friendly BSD distribution?" Now I feel that *BSD is as much of a 'desktop system' as Linux. It may not be widely known as such, but still: "Have Desktop. Will Travel", and BSD does have a desktop, right?
No.
on FreeBSD
I'd guess that your on FreePCP, myself.
Those are stupid distinctions to make
Have you ever noticed that the only people who will sell you targetted versions of the same Operating System do it in order to make money?
Windows NT Server is priced much higher than Workstation, and the only difference is that they were (probably) compiled with different flags. Server would be compiled with flags to allow more than 20 connections, for example.
One of my coworkers (salesman) was blown away when I ran Apache on a Windows 95 box to prove to him that the workstation/server barrier was bullshit. He couldn't believe he was retrieving files via http from a Windows 95 box.
Other than maybe a difference in prepackaged software, a good OS will be able to handle a wide variety of tasks thrown at it.
I think FreeBSD elitists just don't want to believe people use it for things other than mission critical enterprise champion edition servers. (A lot of my coworkers are FreeBSD elitists, I know this first hand. :)
True. I would like to elaborate on the publicity issue. My bias: I use Debian/Linux on my workstation, and OpenBSD on my servers.
There is a big perception issue. I have found that several Linux distros are designed to be more of a "desktop" OS. They install KDE or Gnome by default. There are fancy gui system admin tools and a million and one IRQ/AIM clients. When I last installed FreeBSD 4.1.1 (one my fileserver[1]) it came installed with fvwm2. I think the bigger Linux distros have the manpower to put more effort towards a desktop then FreeBSD can. It can be the little things that make the difference. For example, when I install a new app under Debian, a new menu item is automatically added to my X menus. I can also quickly install a new binary under Debian with few short apt-get commands.
*BSD is an Admin's Unix. (So is Slackware Linux [2].) The default install is pretty bare by Linux distro standards. It has a lot of nice features so that admins can have their *BSD running exactly as they want it. For servers this is an important feature. For workstations I don't care if I burn a few cpu cycles on a suboptimal configuration. At the end of the day I don't want to have to admin my desktop any more then I have too. I do however want to have the ability to configure a few things as I see fit hence the use of Debian/Linux.
From a technical point of view I found that as much "desktop" software is developed on Linux (such as large bits of Gnome and other flashy bits) it works better on Linux. This is less of an issue today as Gnome recently announced that FreeBSD was "officially supported".
There is nothing stopping you from using FreeBSD on your desktop. There are no signification techinical issues. Out of the box FreeBSD requires more effort to get a "modern" desktop, then many Linux distros which come with KDE or Gnome. However, the bottom line is FreeBSD has not publicised itself as a desktop Unix. Mandrake, Red Hat, and others have worked to publicise Linux as a desktop Unix.
[1] I had to switch my home fileserver over to OpenBSD to support my OpenBSD firewall. The firewall is too slow and dosen't have enough ram to compile anything important like a new kernel. Going with OpenBSD on both made more sense as I am more familiar with Open than with Free.
[2]I use Slackware in places where I need a generic Linux server. Usually it is due to a piece of hardware only having Linux support, or I need a VMWare machine. I might have used another distro, but I created a custom bootable cdrom that installs all the Slackware bits I want, adds some customization, and does this unattended. It was pretty straight forward to setup Slackware to do this.
More to the point: since my bosses evaluate the quality of something by its price tag, when will someone generously assemble the CostlyBSD package?
Learn to spell: nickel, missile, lose, solely, amendment, speech, kernel, probably, ridiculous, deity, hierarchy, versus
> I bet if you were really whacko you could set up a freebsd box that was indistinguishable (in terms of user experience... installed packages, file system layout, etc) from a run of the mill Linux box.
/compat/linux/bin/sh your shell. The overlay mounting it does will create some real weirdness, and of course you have a perfectly good userland on the BSD side... Come to think of it, no two Linuxes have the same filesystem either. BSD already looks pretty much like Slackware as it is.
It doesn't require a wacko, it merely requires making
Besides, "desktop operating system" is really too slippery a term. If you mean *home* desktop operating system, Linux isn't there yet either. As a business desktop, people are adaptable -- people who are barely computer literate can and do productively use Solaris with CDE for their desktop (e.g. Sun, not everyone there is an engineer after all).
As for home machines: graphic card support isn't quite as far as linux (since FreeBSD obviously can't use the closed binary-only nVidia drivers) but that's about it. Sound support is available natively and through OSS. Plug-n-play and USB support in FreeBSD has typically been *better*.
--
I've finally had it: until slashdot gets article moderation, I am not coming back.
BSD/OS is quite expensive - I guess it would look like a reasonable choice to your boss.
Oh, I feel pitty for you.
I think that it's all a matter of publicity. Two years ago, the same people would probably have said the same thing about Linux or any other unix flavor. FreeBSD isn't a term heard very much in the mainstream, and I think that's the only reason for this. I personally use FreeBSD on my main workstation as well, for the exact same reasons.
I'm sure that as soon as more people here about FreeBSD, it won't be as strange to be running it on the desktop. Right now, Linux is a major buzzword, and that's the only reason why it's more "acceptable" to have it on the desktop.
Mac OS X system is exactly a BSD OS on the PPC platform
Not to nitpick or anything, but...
I hear this all the time. OS X is NOT "just BSD with some apple stuff slapped on top." It's not even truly BSD. It's a Mach Microkernel with a BSD Compatibility layer on top. That means it replicates the BSD system calls but is not truly a BSD Kernel. It's kinda like saying WINE is windows. It's just an implementation of an API. Granted, the OS X implementation is a lot truer to correctly pretending to be BSD than wine is for windows, but it is NOT BSD. It just incorporates a lot of the BSD stuff that apple found useful
FreeBSD can be both a desktop and a server operating system, mostly since FreeBSD is the only BSD OS (available for free, as in beer and as in open source) that supports SMP. OpenBSD would be a great server operating system since it's security audits on the core code and it's ``secure by default'' legend. And because of that, OpenBSD could also be a network appliance OS since it would make a perfect firewall/router device for any network (okay, maybe not for an ISP or a conglomerate).
But I wouldn't just go silly and give only one label to each BSD OS.
Just because something is very good at one job (server) doesn't mean it's unsuitable for another (workstation).
BSD is a desktop OS and has been since there were desktop-sized machines that could run it. The same is true of any "server" OS that can drive a display/keyboard combination while living in a small box that is built in or nearby.
Think about it: A "server" is just a system with enough resources to handle MANY users, of the sort that once required a box too big to lug around without a fleet of trucks.
Now a [foo] server (file server, terminal server, etc.) is another matter. That's a system that has enough of one kind of resource to handle more than one user, but not necessarily all the kinds of resources you need to support a desktop. But BSD is not a [foo] server. It's a generic operating system that provides all the resources you need.
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
Desktop operating systems have to meet a few criterion before people can truly accept them as such.
First of all, when new software comes out, it has to be readily available on that operating system. Many people choose windows because most games come out on that platform. And if they come out on any alternatives they're mainly for Mac and Linux. If we're lucky enough (BSD people) somebody will port it from Linux to FreeBSD, but that rarely happens quickly. So Linux is a much more viable operating system as a go-between because even the most benevolent software designers who see the potential of open-source software rarely go deeper than Linux.
I think that is the main thing holding FreeBSD back. Aside from a few minor things as well, such as the not-so-laymen install procedure, I think it is a fairly good desktop system. I'm thinking about putting it on my laptop (which could truly benefit from the optimisation). But I don't know how to do a lot of things (such as set up ppp dial-up) and a lot of my friends use it for Word Processing when I let them borrow it.
FreeBSD is a fantastic operating system, but it hasn't been able to overcome the "Linux Craze" that people have gone through, some just choosing linux because it was the first thing they saw and never thought to investigate other systems, and others because of years of experience. But BSD will eventually get more exposure and may even overcome Linux. This might be a sad day though, many people love FreeBSD for what it is and always was: A server operating system. When or If it ever migrates to desktop systems, people will stray from focusing on optimizing the server components and concentrate on other facets, leaving admins to migrate to other, more server-oriented operating systems.
Moral of the story is, we should be careful in trying to push BSD to the desktop (open) market. Though I would love to see it happen, I don't want it to loose that "sparkle" in Daemon's eye.
- Are mostly posix
- Are mostly gnu
- Are mostly free (by some definition of free)
- Are mostly X based
which seems to be pretty compatible. For example, KDE and Gnome can run on FreeBSD with little problems... so WHY would Linux be a better 'desktop' than FreeBSD? It doesn't provide any OS level services that make it a more 'seamless' experience that FreeBSD...I bet if you were really whacko you could set up a freebsd box that was indistinguishable (in terms of user experience... installed packages, file system layout, etc) from a run of the mill Linux box.
So I guess the real question is: is linux a desktop OS yet?
-Chris
If you're looking for an OS that is great for desktop use, is incredibly fast, and is really easy to get used to, and has support for NVidia cards, then you want to use BeOS. I've been using BeOS for a while and although it's not as popular as Linux or BSD, its following is pretty devout. I rarely have any problems with BeOS crashing, and on my Pentium II 266 w/ 64 megs RAM it boots in about 10 seconds. BeOS is also almost completely POSIX compliant, so you can compile most linux apps under it with relative ease. And if you don't feel like doing that, BeBits has all the drivers and software you could ever need that's not included in the distribution. If you're looking for a satisfying desktop experience, then BeOS is the way to go.
Another relevant question: "Why isn't Windows a desktop operating system?"
Got Rhinos?
Ah, I found a Linux History page with a copy of Linus's "Historical posting":
(bold emphasis mine)As for Linus being a student of Tanenbaum, Tanenbaum, himself, wrote:
--
Free Software: Like love, it grows best when given away.
*sighs*
--Ryvar
As a one time RedHat user and now fully FreeBSD when not on my NT Workstation I suppose I can kinda see why the perception is the way it is. The RedHat installer walks you through from an empty system to a graphical logon straight into Gnome. At this point in time if a user isn't taken straight to a GUI, then it must be a server kinda machine.
Personally, I feel that RedHat's hand holding actually hurt me in the long run. I never felt comfortable going any where near the command line when using it. I couldn't figure out why the directories were structured the way they were. Oh boy, then there was the couple of times that X crashed and left me at a blinking command prompt. Reboot!
With FreeBSD I was forced to get at least somewhat comfortable with getting around without a GUI. Due to it's being a bit harder to get going it actually made things easier for me in the long run. The real problem with this is that you're never going to manage to convince someone who isn't willing to put in the time of this.
One issue that folks like bringing up is the lack of hardware support for FreeBSD. Not only has this not had any impact on me, but I've actually found FreeBSD to be a good bit smarter. For example, on my RH box I had 128meg of RAM installed, where only 64meg was being seen. A kind soul over on #LinuxHelp walked me through configuring the system to see the rest of the memory. If my life depended on it I couldn't recall all the steps that went into fixing this. FreeBSD just picked up whatever was in the box and ran with it! When I've needed to add support for something, doing up a custom kernel was surprisingly easy.
As it is now, I'm writing this using Konqueror under KDE 2.1 with FreeBSD 4-STABLE and doing just fine. Occasionally I use the Linux version of Netscape for the better plugin support, as well as a few other Linux only apps. StarOffice works just fine here. I also keep Apache, PHP, and MySQL going in the background for stuff I'm developing. I just can't see going back to any distro of Linux any time soon.
The line must be drawn here. This far. No further.
using *BSD on the desktop soon is not even their fault. But I gotta have my video drivers and damn Nvidia won't do it or let anybody else do it. Otherwise I would think about switching. Oh yea and if Debian/BSD got off the ground that would be very cool also. But that mailing list is *very* dead.
Cypherpunks: Civil Liberty Through Complex Mathematics. Those who live by the sword die by the arrow.
But that is the problem. You need to be technically savvy.
If you have someone that is clueless on this stuff, then the answer is "Start X? how the hell am I supposed to know that?"
The latest Redhat has a nice pretty gui type install. But if you have odd ball hardware setup, it is a problem.
I have one guy teaching himself how to do work with Unix by installing Redhat. He has a nice desktop with gnome fired up. By default it installs with Dialup (not Ethernet), even though he choose a server config. The computer doesn't have a modem, but it does lan card. He is going to figure this out on his own, but hasn't yet.
Redhat has the prettier program, and sets up the dial up for you. FreeBSD is "Uglier" (I think it is better) but you have to know more. But in both cases you still have to be fairly knowledgable.
The bottom line is that I still think that Unix is still not for beginners. This is a practical problem for widespread adoption. I happen to prefer FreeBSD.
Alot of impressions are highly dependant of the Distribution, which deals with items like installation, ease of changing components, changing setups, installing programs, etc. Not the underlying soundness of the system, the drivers, etc.
But that (your fav distro) is a different flamewar indeed. (I need a cup of coffee, my mind is too fuzzy for this, this early in the morning)
Check out the Vinny the Vampire comic strip
"It is a greater offense to steal men's labor, than their clothes"
So, you've built a desktop. Most other people set it up as a server - but your system is indeed a desktop. Go tell them to fork a daemon or something...
I can't be karma whoring - I've already hit 50!
SIG: HUP
How ironic that NVIDIA is pushing hard into the Mac market with their GeForce line of cards, when the Mac OS X system is exactly a BSD OS on the PPC platform =)
Geek dating!
GPL Deconstructed
Have you ever seen BSD mentioned in a trade magazine? In a programmer's journal? Is it offered by hardware vendors as a pre-installed Operating System? Let's face it. "BSD" isn't a buzzword, and the hype surrounding it pales in comparison to Linux. It doesn't even have the courageous Free software crusade or the GPL to back it. Other than its outstanding performance, there's nothing really noteworthy about it. No human interest, no millions to be made. And no glibc exploits to be fixed. I was the one saying "Eww, BSD, who would use that garbage?" a year ago, because I, like a lot of people, was a totally ignorant Linux zealot. Since then I have learned better, and in the last couple of months I've convinced nearly all of my coworkers to switch to FreeBSD, but it took a lot of hand-holding. Even the hardcore Solaris guys. The moral: BSD is a viable desktop OS, but you have to go door to door with it, and slap people around if you have to. And a pretty GUI install program wouldn't hurt (hint hint).