Is FreeBSD a better choice for the desktop? (or dispelling myths)

30 August 2008

It’s strange I should come across this article in one of my favorite blogs just after I switched from my FreeBSD desktop to Kubuntu. I’m also surprised at the lack of knowledge and the propagation of some long-standing myths about Linux and FreeBSD for that matter.

There are some ways that FreeBSD (or better put, BSD) is better than Linux – but the comparisons must be valid and appropriate without myths and falsehoods.

Perhaps the primary myth is that FreeBSD is a complete operating system and Linux is a boat-load of different distributions in all different flavors with different setups and so on. However, FreeBSD also has a large number of alternatives, including OpenBSD, NetBSD, PCBSD, DesktopBSD, PicoBSD, and Dragonfly BSD to name just a few.

Another comparison is that FreeBSD is put together by the FreeBSD Core team and that this is better than Linux (which has a “benevolent dictator” model). There’s no discussion of OpenBSD, for instance, which also follows this “benevolent dictator” model. There’s also no comparison to Red Hat Enterprise Linux, for example, which has a large number of people working towards putting together a complete distribution, not just the kernel.

The documentation is definitely an argument in favor of BSD – virtually everything that is in the system anywhere is documented in the online documentation, and the FreeBSD Handbook is without equal. It can be proven programmatically that there are commands in Red Hat (or other distributions) that are not documented. I daresay that the FreeBSD documentation beats other BSD variants as well.

Another benefit of FreeBSD specifically is the vast number of ports available. There are more ports for FreeBSD than any other system but Debian GNU/Linux. The sheer amount of packages available in both environments has made them appealing to me – and perhaps to others. Where else are you going to get Steel Bank Common Lisp for example? Both Debian and FreeBSD have it.

The article specifically asked about FreeBSD for the desktop: FreeBSD is definitely not ready for the desktop at all. When I installed it for my desktop (twice now), the basics are there certainly – but there were numerous problems that I had to overcome. Among them, I had to set up my own system bootsplash, and had to configure and set up my own login screen (kdm). USB devices plugged in weren’t properly recognized. Hibernation and sleep didn’t work. Flash doesn’t work. Unlike what has been said before, the drivers are much less available than they are for Linux: hardware manufacturers don’t see a need to support BSD, and many new UNIX users (and developers) don’t see a need to use anything but Linux. Wireless support is perhaps an exception, but that development is centered in OpenBSD, not FreeBSD.

There is also, in my mind, a benefit to BSD that goes often unmentioned: it has the smallest kernel of the open source UNIX and Linux kernels out there today. FreeBSD and OpenBSD will run in smaller environments that Linux won’t: on my 512M laptop, a Compaq Armada E500, Fedora 5 would crash during the install (not enough memory) – whereas the much more current FreeBSD 6.2 installed just fine.

Now, when I installed Kubuntu onto a Compaq nc4010 with 1G of memory, it went will – and it recognized everything – wireless, hibernate, bluetooth, USB devices, PCMCIA, video display, power capabilities, etc. – all without special configuration. (I might note that, here too, on this machine Fedora crashed – this time the Live USB Fedora 9 crashed during exit – sigh…) Preconfigured and tested support for Flash, Java, and MP3s was a click away.

When it comes to the desktop, FreeBSD has a long way to go (perhaps PCBSD is a lot better?). However, on the server end, I would propose that FreeBSD is a better way to go than Linux in many cases (except for OpenBSD might, in my opinion, be even better). It is unfortunate that none of the BSD variants are often considered for enterprise server use – especially considering FreeBSD is commonly found in NetCraft’s list of top uptime.

Entry Filed under: BSD, Fedora, FreeBSD, Linux, NetBSD, OpenBSD, Red Hat, Ubuntu. Tags: .

16 Comments Add your own

  • 1. Justin  |  31 August 2008 at 1:41 am

    Hi. I see you’ve taken note of my article. I thought I might take the chance to make a reply to your article as well: http://linsux.org/index.php?topic=433.0

    Reply
  • 2. Is FreeBSD a better choic&hellip  |  4 September 2008 at 6:30 am

    [...] from UNIX Administratosphere wrote a reply to that article and there’s also a thread on the Linsux forum. « FreeBSD security [...]

    Reply
  • 3. kace  |  4 September 2008 at 9:07 am

    Good, fair article. It is some work to run FreeBSD as a desktop. However, if you’re a computer enthusiast, that “work” is a lot of fun and educational as well.

    >”there were numerous problems that I had to overcome. … ”

    You must try PC-BSD as soon as possible. I haven’t played with it much (I already have everything running FreeBSD). But, I installed it on an old laptop with a friend (an Ubuntu fan) recently and he was “impressed”. I can’t speak to all of the issues you listed, but we saw no problems. Just having X and desktop configured is a big, big help for desktop users. And Flash 9 ran without a hitch (albeit, under wine).

    Reply
  • 4. Roberto  |  4 September 2008 at 9:21 am

    [quote]Where else are you going to get Steel Bank Common Lisp for example? Both Debian and FreeBSD have it.[/quote]

    And also Archlinux.

    Reply
  • 5. Comparando FreeBSD e GNU/&hellip  |  4 September 2008 at 4:39 pm

    [...] FreeBSD e GNU/Linux, sem mitos e inverdades! Publicado em Setembro 4, 2008 por ovigia Is FreeBSD a better choice for the desktop? (or dispelling myths) « UNIX Administratosphere There are some ways that FreeBSD (or better put, BSD) is better than Linux – but the comparisons [...]

    Reply
  • 6. Basepam  |  5 September 2008 at 1:58 am

    For me , the only reason, I don’t use any BSD for the desktop is the mess for flash. I think many of Linux users would switch with a correct flash support. I know it’s closed source but it is really a “must have feature” for a desktop. I tried the opensource project without sucess.

    I did not know PC-BSD has flash support. I will have a look at it.

    Reply
  • 7. ddouthitt  |  5 September 2008 at 8:48 am

    I wouldn’t give up on BSD for the desktop; from what I’ve seen, PC-BSD and DesktopBSD are both excellent choices. Personally, I’d try PC-BSD first.

    However, it may be a while before I get to install another desktop; I need a new server (and NAS) first…

    Reply
  • 8. Martyn Hare  |  6 September 2008 at 5:16 pm

    GNU/Linux user that is trying FreeBSD 7 here. I think FreeBSD is superior in many ways, however it does lack ease-of-setup when you first install it. The installer (sysinstall) didn’t set up networking properly, leaving me to manually set up networking for my Internet .

    Prior to trying FreeBSD I was using ArchLinux, which is a truly great distro.

    Right now i’m using KDE 4 with nvidia drivers and KVIRC compiling in the background, sound is working and the compile is not interfering with my desktop experience. I have not tested all my hardware but my needs are somewhat conservative in that regard.

    What I can note is that is features on FreeBSD 7 feel more “complete”! than on GNU/Linux 2.6.26, for example low-level details like cpufreq:

    On Linux the cpufreq support offers me 5 speeds: 2.1ghz, 2.0ghz, 1.8ghz, 1.1ghz, 1.0ghz

    On FreeBSD 7 I get these options: 2178mhz, 1980mhz, 1782mhz, 1559mhz, 1336mhz, 1113mhz, 990mhz, 866mhz, 742mhz, 618mhz, 495mhz, 371mhz, 247mhz, 123mhz

    Okay so i’m not getting “dynamic ticks” and such, but the features that are implemented are a lot more solid.

    Here is my views on how FreeBSD stacks up in general areas:

    Sound support: OSS may seem like garbage compared to ALSA on Linux, but FreeBSD has made it work and work well, OSS support for my sound card (ATI IXP 400) works wonderfully and handles multiple applications accessing it at once beautifully.

    Graphics: Okay graphics support currently has a big problem on AMD64 (no NVIDIA drivers yet) but on i386 NVIDIA drivers are equally as solid as with Linux – I am not quite sure about the state of ATI drivers.

    Desktop interactivity: FreeBSD 7.x seemed less responsive than GNU/Linux while compiling, until I discovered idprio – a tool to put the compiler in it’s place. Using idprio has resulted in the desktop feeling equally as responsive as GNU/Linux while compiling.

    Ease of Install: [expletives go here] – the install was painful, don’t even try it if you’re not comfortable with Gentoo, ArchLinux or Slackware GNU/Linux! Otherwise, keep a LiveCD to hand if things go bad (I wish I had one at the time!)

    FOSS Software availability: More than most distributions, I am confident it is more than everything except ArchLinux and Debian.

    Proprietary software availability: Almost everything that runs entirely in userland works under Linuxulator (Linux compatibility layer) with near-zero performance hit, in the case of virtualization avoid FreeBSD for now – unless you don’t need top performance or solid USB support, then there is QEMU with KQEMU.

    Multimedia Support: No native flash support however it runs under Linuxulator and Wine. FreeBSD otherwise supports every other format ArchLinux can to my knowledge.

    Performance: It “feels” better, I don’t have raw numbers and don’t intend to benchmark anything.

    Security: Less proactive security than Linux offers in terms of VDSO randomization and such, however it offers many different models of Mandatory Access Controls, more than vanilla Linux kernel offers, also for ports a tool called portaudit can be used to provide security info on all installed software regarding CVEs and such.

    Information availability: I have typed man [name random thing here] assuming there is no manpage, and to my delight there has been. Information via the ‘net in the form of howtos is sparse in comparison to other systems I have tried however.

    Hardware support: Supports all my hardware (PC: HP Pavillion Prod #: t3245.uk; HP Deskjet 940C Series Printer; HP w22 Monitor ) except my wireless mouse fails, the keyboard that uses the same receiver works fine however and it’s a minor loss.

    Misc: Seems easier for me to learn than GNU/Linux but once you’re used to that GNU userland, BSD stuff feels a tad alien!

    Reply
  • 9. Martyn Hare  |  6 September 2008 at 5:19 pm

    Clarification: “Supports” by definition does not mean thoroughly tested, for those who believe I am contradicting myself.

    I will update as I go along.

    Reply
  • 10. Steven Rosenberg  |  18 September 2008 at 1:44 pm

    I’ve been using OpenBSD as a desktop OS on one of my laptops, and it’s been fun using something different.

    The OpenBSD FAQ, at 290 pages, isn’t as detailed as the FreeBSD Handbook, but just about everything I’ve needed is somewhere in that FAQ.

    Only Gentoo has comparable documentation in the Linux world.

    On the laptop in question, a Compaq Armada 7770dmt, OpenBSD recognizes the hardware better than Linux, which is one of the reasons I’ve stuck with it for quite awhile.

    One difference between OpenBSD and FreeBSD is that in OpenBSD, the default install with X features the Fvwm window manager in addition to Twm, the latter of which I believe is the default WM in FreeBSD.

    Reply
  • 11. Jake  |  4 October 2008 at 1:08 pm

    512MB of RAM a problem? Really? My 6 month budget laptop came with 512MB of RAM and I installed Kubuntu and Mandriva on it with no problem. I have since updated it though.

    Reply
  • 12. ddouthitt  |  7 October 2008 at 9:27 am

    I didn’t try either of those actually – but Fedora crashed, as I said. I’ve since put Kubuntu onto a Pentium M, and fell in love with it….

    Reply
  • 13. ddouthitt  |  7 October 2008 at 9:37 am

    I should mention here that I’ve been installing onto a Pentium M laptop with 512M memory without problems; it was the Pentium laptop that caused the problems. Perhaps there is a link?

    I don’t know. I do know it seems like Python applications have problems with not enough memory – running yum in a 48M text environment was *very* slow, and slowed down the entire machine and generated lots of swapping.

    Reply
  • 14. Slim Joe  |  19 October 2008 at 10:43 pm

    Martyn Hare said: “On FreeBSD 7 I get these options: 2178mhz, 1980mhz, 1782mhz, 1559mhz, 1336mhz, 1113mhz, 990mhz, 866mhz, 742mhz, 618mhz, 495mhz, 371mhz, 247mhz, 123mhz”
    123 mhz. Wow, really? That’s the sort of underclocking I want! What processor are you using? On my AMD X2, I get only two options for 1000 and 2500 mhz.

    Reply
  • 15. Prudhvi  |  26 November 2008 at 6:33 am

    There is nothing to say… FreeBSD Just r0cKs

    Reply
  • 16. immy  |  26 November 2008 at 6:17 pm

    FreeBSD forever. desktopbsd rules the world.

    Reply

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed


David Douthitt

David is an experienced UNIX and Linux system administrator, a former Linux distribution maintainer, and author of two books ("Advanced Topics in System Administration" and "GNU Screen: A Comprehensive Manual"). View David Douthitt's profile on LinkedIn Support freedom The Internet Traffic Report monitors the flow of data around the world. It then displays a value between zero and 100. Higher values indicate faster and more reliable connections.

Recent Posts

Top Posts

RSS Sharky’s Column!

Calendar

August 2008
M T W T F S S
« Jul   Sep »
 123
45678910
11121314151617
18192021222324
25262728293031

Recent Comments

Anthony on About
MikeT on Stress Relief: Laugh Out Loud…
yungchin on Sparse files – what, why…
Randal L. Schwartz on Perl Tidbits: Annoyances and…
Court on Perl Tidbits: Annoyances and…

Category Cloud

BSD Career Conferences Debian Debugging Disaster recovery Fedora FreeBSD HP-UX Legal Linux MacOS X Mobile Computing Networking OpenBSD OpenSolaris OpenVMS Personal Notes Portable Code Presentations Productivity Programming Red Hat Scripting Security Solaris Storage Tips Ubuntu UNIX

Archives

Feeds

Blogroll

Pages

Meta