Hari's Corner

Humour, comics, tech, law, software, reviews, essays, articles and HOWTOs intermingled with random philosophy now and then

More thoughts on FreeBSD

Filed under: Software and Technology by Hari
Posted on Mon, May 10, 2010 at 12:07 IST (last updated: Mon, May 10, 2010 @ 12:11 IST)

In this series < Previous Next >
Continuing from my previous entry, it's been a week since I've been using FreeBSD now and I can say that in many aspects it feels a better OS than Linux, particularly the base system tools, the devfs system, the /etc/rc.conf interface to system initialization, the kernel module loading through /boot/loader.conf etc. are very convenient and easy to use.

Having said that I strongly suspect that Linux users will find a few gotchas in FreeBSD. Here I will document some of the problems that a "power" desktop user will face in FreeBSD as compared to Linux.

Gnome and KDE issues

Though the common desktop environments, Gnome and KDE work well, it is to be realized that they require some integration with the base hardware for some functionality. 90% of this will work on FreeBSD through HAL and DBus, but there will be quirks. Some Gnome tools do not work as expected or work with reduced functionality: in particular third-party Gnome components which assume a Linux installation.

Without getting too much into detail, if all you want is a desktop with the basic productivity tools, things will work reasonably as expected. However some system configuration GUI tools will not work properly or at all.

Bluetooth support might also be tricky in FreeBSD; at least it will not work through the Gnome bluetooth interface.

3D acceleration for display drivers

FreeBSD does have 3D drivers from NVIDIA (not sure about AMD) but until recently there was no support for x86-64 (commonly known as amd64). But in any case this is not so big an issue if all you play is low-intensive SDL games and don't rely on OpenGL applications.

The sound system - this is my biggest gotcha

Most likely your sound card will work and be supported by FreeBSD, but where the problem lies is in using some common sound and multimedia applications which absolutely rely on ALSA. Now it is well known that FreeBSD and other BSDs continue to use the Open Sound System, while modern Linux kernels prefer ALSA. This means that if you are used to certain multimedia applications that rely on ALSA you're on your own.

90% of sound-related apps work on both OSS and ALSA, but MIDI and music composition tools like Rosegarden and NoteEdit aren't available on FreeBSD as they use ALSA MIDI interface, not OSS. Having said that JACK is available in FreeBSD and applications that use JACK audio toolkit will work nicely.

Hardware and peripherals

This article, which seems to appear on google search results for "FreeBSD for Linux users" is a bit outdated and does not take into account the increasing number and variety of hardware and peripheral devices especially for mobile computing.

He says "most common hardware that is supported in Linux should be supported in FreeBSD" and you will be affected only if you *own* that piece of hardware which is not supported. Now for desktop systems this might hold true, but as many of us use laptops, I can confidently say that Linux support for laptop hardware would definitely be on a higher level because of the sheer number of people who use a variety of hardware on Linux and the fact that some of them have the technical capability to write device drivers. The FreeBSD community is simply not large enough to care about certain uncommonly used peripheral devices while Linux has a much better and wider support for uncommon peripherals like webcams and certain USB input devices like WizardPen-based pen tablets.

While input devices like pen tablets require an Xorg driver which might be available on Linux, not all of them are easily portable to FreeBSD as some of them rely on Linux kernel calls. Webcams are a different issue and you won't be able to use most internal or external webcams which Linux supports using the uvc (USB video class) drivers.

Again, some wireless cards might not be supported, but this is becoming less and less of an issue these days.

Conclusion

On the whole this is not a discussion on pros and cons of FreeBSD but merely issues which Linux desktop users have to be aware of before they think of using FreeBSD full time.

In this series

10 comment(s)

  1. I was under the impression that FreeBSD has a nicer feel overall but it really should stick to doing servers. FreeBSD as a desktop system is still ages away. Since I know you're probably not into servers, why have you switched to using it as your desktop system?

    Comment by Dion Moult (visitor) on Mon, May 10, 2010 @ 12:50 IST #
  2. I know. I shouldn't have but to be honest I was truly bored and didn't rightly know what I was doing.

    Honest guv! :-)

    On a serious note, yes, I think Linux is better suited for my needs and I've already decided to move back. I should actually have tried FreeBSD on a virtualbox, but since I am already quite familiar, I thought, why not dive full length into it and see what I can do with it...

    Comment by Hari (blog owner) on Mon, May 10, 2010 @ 13:12 IST #
  3. FreeBSD is definitely not the most ideal systems for desktops. Probably as bad as Solaris 10 if not worse for desktops. Also we have VirtualBox for FreeBSD hosts.

    Comment by Teknomancer (visitor) on Wed, May 12, 2010 @ 00:48 IST #
  4. Tekno, I've gone back to Debian at the moment.

    Also remember that program which I said wouldn't work in FreeBSD? It was actually not because of Python because the version of "dialog" installed in FreeBSD is different and the script just failed. I just installed the "cdialog" script instead and after that it worked fine.

    Comment by Hari (blog owner) on Wed, May 12, 2010 @ 07:20 IST #
  5. Am running FreeBSD on my laptop because Linux just doesn't have the same performance on the machine. However, I'd like to find a system for my desktop and am having issues with support and drivers for audio and printers. I did see alsa and rosegarden in the FreeBSD ports. Are these older versions or do they work? I've used Timidity and Milkytracker with FreeBSD on my laptop and no problems. Ran across this article on getting a midi device working with FreeBSD http://www.mailinglistarchive.com/freebsd-multimedia@freebsd.org/msg03682.html
    Can't help wondering if I put some effort into it, if I'll figure out some work-arounds for hardware or if I'm better off trying Slackware or Debian on my desktop. Any opinions?

    Comment by Laura (visitor) on Mon, Jul 26, 2010 @ 18:52 IST #
  6. Well, rosegarden is a VERY old version in FreeBSD ports and no longer maintained.

    ALSA doesn't work properly.

    As for the MIDI issue, you can use timidity but it doesn't emulate a MIDI device like in ALSA Sequencer client mode, which limits its functionality. You can play MIDI files on FreeBSD, but you cannot use composition tools which look for a MIDI device or ALSA MIDI ports. MilkyTracker is not a MIDI sequencer - it's an audio tracker with sound patches, so it works OK, but I prefer working with MIDI tools myself.

    I spent a lot of time investigating it until I gave up and returned to Linux. You won't find any solutions on *BSD because MIDI is almost abandoned by the FreeBSD developers as OSS sound applications almost never use MIDI and it's not high on their priority. I wouldn't hold my breath for any developments.

    I'd suggest Debian or Slackware. I use Debian myself, but Slackware would work just as well.

    Comment by Hari (blog owner) on Mon, Jul 26, 2010 @ 19:07 IST #
  7. Thanks for the clarification on the state of midi and FreeBSD. I usually don't input to programs from midi. I usually output from programs like Timidity to my midi organ. I create the midi files using abcmidi (since I don't play well enough to create them straight from the organ). If you read music better than you play it, abcmidi is really nice. Sorry to hear of the FreeBSD developers' lack of interest in midi. I like the licensing of FreeBSD over Linux, but if it can't handle hardware as well, I really need to go with an operating system that does attempt to support as much hardware as possible. I've tried both Alsa and OSS on one laptop and maybe it's just me, but Alsa seemed to do a better job on play back. Thanks again for the info.

    Comment by Laura (visitor) on Wed, Jul 28, 2010 @ 22:00 IST #
  8. Yes, if you ask about ALSA on the FreeBSD forums, you are not likely to get encouraging responses. The best is that it is supported under Linux emulation mode.

    Also the *BSD world detest ALSA and most users will start responding why arguments on why OSS is way better. It almost appears as though BSD users PREFER less functionality when it comes to tasks that they are not generally interested in. BSD community is filled with geekier folks than Linux users and to them music and sound applications are not really high on the priority list as a lot of them use FreeBSD on servers.

    So go with Linux, particularly something which uses low-latency kernel (a multimedia distribution) if MIDI is important to you. It works well enough on Debian's default kernel but for best results a multimedia optimized distro should do the job.

    Comment by Hari (blog owner) on Thu, Jul 29, 2010 @ 11:25 IST #
  9. Don't know if it's useful, but ran across some pages about support for midi with OpenBSD: http://www.openbsd.org/cgi-bin/man.cgi?query=midicat&sektion=1 Would be curious to know if the OpenBSD community were any friendlier about multimedia applications than the FreeBSD one seems to be. Am guessing it's still strictly OSS though. Also ran across this program for midi on Linux and OpenBSD http://www.caoua.org/midish/ that looked interesting. Going to do some more investigating on midi and other hardware support for various Open Source operating systems. Linux definitely looks like the best choice for drivers though. Thanks for the suggestion about a multimedia optimized distribution will look into that further.

    Comment by Laura (visitor) on Fri, Jul 30, 2010 @ 17:37 IST #
  10. It looks interesting, but you should check if they are actively being developed at the moment.

    A lot of OSS MIDI applications exist, but they're either too old or discontinued and orphaned projects. The ones you linked to appear promising though.

    Fact remains that without device driver support you are not likely to be able to use your MIDI output device.

    Comment by Hari (blog owner) on Fri, Jul 30, 2010 @ 18:04 IST #

Comments closed

The blog owner has closed further commenting on this entry.