Setting up a FreeBSD Multimedia Desktop

Of all the many and free operating systems out there, few can begin to meet or surpass the quality, stability, and structured operation of FreeBSD. But out of the box, FreeBSD is and always will be a server OS. That’s the reason why some groups have created desktop versions of FreeBSD (such as PC-BSD and DesktopBSD) to provide users with a viable FreeBSD desktop.

Despite both of these really good alternatives to the stock FreeBSD install, some people believe that nothing beats setting up their own FreeBSD desktop right from scratch, and in this tutorial you’re shown how to do just that. What you’ll end up with is a desktop environment that is top notch and tailored right to your liking that is pure and uncustomized by anyone else, except you. So it’s a system you can have exactly your way to your liking.

For those who are new or unfamiliar with FreeBSD, this will also be a great way for you to learn how to use and troubleshoot the OS, because by going this way, while it is not the easiest and you’ll likely run into at least one snag or problem not listed in this tutorial that you’ll have to troubleshoot and solve, you’ll learn so much about the OS that you’ll either come to love it or hate it.

Remember, this tutorial is not for the faint-hearted. There are easier ways to set up a FreeBSD (based) multimedia system than shown in this tutorial; mostly via the previously two named desktop oriented FreeBSD distributions.

BSDStats numbers (May 2007)

BSDStats.org is a website that records the numbers of PCs/servers running a particular BSD system. This is broken down per country, releases, drivers/HW stats, CPU stats, and port stats.

Though these figures are interesting enough, they cannot be used for any benchmarking or market analysis or so, since the software that anonymously updates (pings) the bsdstats server is not (yet) installed on a lot of/most servers (e.g. FreeBSD) or it’s not mandatory to use when pre-installed (e.g. PC-BSD). The numbers are likely to be much higher. The counters reset at the first day of each month (servers that are on 24/7/365) or when the computer is first switched on.

The numbers, that we’re interested in as far as this blog is concerned, for May 2007 are:

  • FreeBSD – 5,131 systems – 53.0 %
  • PC-BSD – 4,265 systems – 44.1 %
  • DesktopBSD – 28 systems – 0.3 %

Please note, that the number for DesktopBSD (28) is not correct this month. There are likely to be many more users but the update script contacted the BSDStats server on 1 May at half 5 in the morning only. All PCs that were off at that time aren’t included in this number. This problem will be fixed in the upcoming RC3.

What is FreeBSD?

This website deals with the FreeBSD Operating System, but what is FreeBSD?

FreeBSD (FBSD) is an advanced Unix-like operating system developed by the FreeBSD Project. FBSD is one of the most reliable, robust and secure operating systems in the world. It is free, open source and powers some of the internet’s largest web servers, including Yahoo’s and Sony’s (more companies). Rock-solid stability and the ability to perform extremely well under heavy workloads makes this operating system a popular choice among Internet Service Providers and Web hosting companies. A cohesive userland and kernel, the ports system and regular OS upgrades are the strengths of this OS.

FreeBSD is derived from the Berkeley Software Distribution (BSD), the version of UNIX developed at the University of California at Berkeley between 1975 and 1993. FreeBSD is not a UNIX clone. Historically and technically, it has greater rights than UNIX System V to be called UNIX. Legally, it may not be called UNIX, since UNIX is now a registered trade mark of The Open Group.

FreeBSD runs on Intel processors as well as on DEC Alpha, Sun UltraSPARC processors, Itanium (IA-64) and AMD64 processors and soon on Suns Niagara servers (FreeBSD 7).

FreeBSD is an operating system that is very flexible and can therefore be used for various purposes:

  • FreeBSD – (web)servers
  • FreeNAS – Network Attached Storage servers
  • DragonFly BSD – Powering cluster computing
  • PC-BSD and DesktopBSD – Desktop
  • M0n0wall and pfSense – Firewall
  • Frenzy – portable system administrator toolkit
  • FreeSBIE and RoFreeSBIE- Live CDs

Stability, flexibility and security are what is needed for a good operating system, and FreeBSD has them all, whether you use it on your desktop or as server. There’s an interesting article on IBM’s website “Why FreeBSD” dealing with the strong points of FreeBSD.

Flash/Youtube videos on FreeBSD

To be able to watch Adobe Flash animations and videos on BSD systems, has been not too easy so far. This is caused by Adobe not releasing a (Free)BSD version of Flash, but only a (closed source) version for Windows and Linux. In order to watch Flash content on BSD one has to install the Linux Flash version along with the Linux Compatibility layer and tweak the system (sym-links).

However, there’s a Flash PBI available for PC-BSD users that installs Flash with a few mouse-clicks. Installing this manually is not necessary anymore as version 1.4 will come with Flash pre-installed, thanks to a redistribution agreement between iXsystems, the company behind the PC-BSD project, and Adobe.

There are a few open-source Flash players in development currently, of which Gnash and swfdec are the most promising projects, but they’re not perfect yet. Gnash for example is quite good at playing Flash animations (though a bit “grainy”), but it can’t play YouTube videos, whereas swfdec is better at playing YouTube videos, but it’s not very good with animations.

Matteo from the FreeSBIE project has now found a way to watch YouTube videos with Gnash on FreeBSD, but without using the Linux compatibility layer. Please note, that the steps he’s taken are the same for PC-BSD and DesktopBSD. Matteo installed the following ports:

  • graphics/gnash
  • www/firefox (uncheck “GSTREAMER” on the ncurses window)
  • multimedia/mplayer [MAKE WITH_GUI]
  • www/mplayer-plugin

He then installed the Greasemonkey plugin for Firefox and this Greasemonkey script. Note: select the “mini” GUI for mplayer because it is needed for the plugin.

If you have followed these steps and installed the port successfully, surf now to YouTube.com and give it a whirl.

PC-BSD announces logo contest

PC-BSD has just announced a logo contest on the Announce Mailing List and on the Forums:

While the new web site is cooking, the PC-BSD team is pleased to announce the logomark contest!

If you have artwork skills and would like to take part in the PC-BSD project, you can set your imagination free to create a logomark for PC-BSD. Please keep in mind that PC-BSD will keep its current logo, and the logomark will be a complement to it. Think of it as what the apple it to Apple, or what the window is to Windows.

Our logomark will be used for for the K Menu (“Start” menu), as well as for hardware, cool gear, and plate logos. Therefore it MUST be as high as wide. The PC-BSD team reserves the right to keep the FreeBSD logo as its logomark if it finds it more suitable.

The PC-BSD project will acquire ownership of the winning logo by assignment of copyright, and the winning designer will disclaim any trademarks and without limitation all other rights related to the design (paperwork will be required). By submitting a logo for entry in the competition, the designer acknowledges that he/she is the person that made the logo and is its rightful owner. The designer also certifies that the logo does not infringe upon the rights of any third party and that it does not violate any copyright.

You can submit your artwork until June 15th to charles_AT_pcbsd_D0T_org. The logomark should be usable in monochrome and color media, including limited colors (say 2 or 3 colors). You can submit more than one entry, but no variant of a particular entry (choose the one you prefer). Each submission MUST include:

– High resolution print-ready scalable vector format such as portable EPS, SVG or Adobe Illustrator AI
– JPEG or PNG thumbnail with a resolution of 640 x 480
– Design concept / description
– Submitter’s full name, email address

If you have questions, please get in touch with Charles or ask on our forum

Linux too vanilla? Try this

Yesterday we wrote about a review of PC-BSD by LinuxHelp, but a week ago (15/07/2007) The Inquirer also reviewed this Desktop OS: “Linux too vanilla? Try this – PC-BSD 1.3: Basic, simple, does the job

It went on first time, no hesitation. Even booting from the install CD, it found the Cardbus slot, found my old Xircom RealPort Ethernet card, connected and went online – which is a **** sight more than Ubuntu could do until I’d apt-getted it into submission. It cheerfully ran the setup program in 1024×768, the native resolution of the LCD. Sound, PCMCIA, USB, networking – everything just works. It knows it’s on a laptop and displays a battery meter in the taskbar tray – but that’s about it. No processor-throttling or anything: it’s flat out, all the time. I had to manually tell it to blank the screen when idle.

I was straight online after a very easy, graphical install. One reboot and it was ready to go, with only 2GB of my 20GB disk used – and that’s with browser, email, chat, media players, some games and basic productivity apps all pre-installed. It updated itself with some half a dozen fixpacks until it’s now at v1.3.6 or so – only one of which required a reboot. It now sports KDE 3.5.5. I don’t like KDE much – I used to, but I think it’s horribly bloated these days: complex, slow, fiddly, ugly and a bit flaky. Bits of it keep on passing out – but that may be normal for KDE.

However, it does the job, and it’s instantly familiar if you’ve been around the Linux block once or twice.

Aside from KDE, everything is quite responsive and it was dead easy to add Firefox, Flash, Java, OpenOffice, Skype and suchlike from their online package-download site, a link to which is handily left on the desktop. No fiddling about with repositories or restricted components – you download what you want then double-click it.

There’s a basic but fairly complete suite of admin tools, all integrated into the KDE control centre.

With no additional mucking around, I was able to get online from in bed then watch a DivX movie off a USB key. The only thing it didn’t do is mount the USB key for me – I had to go to a terminal, SU to root, make my own mountpoint, inspect the kernel messages for the device name and then mount it myself by hand. That’s a bit 1997 for my tastes, but I can cope.

USB key mounting does work in PC-BSD, so I can’t explain why it wasn’t working for Liam Proven.

Other luxuries which it doesn’t offer but which one might expect in a modern Linux are suspend/resume, power management and maybe support for the onboard Winmodem – but I don’t actually /need/ any of them.

Unfortunately, laptop power management (suspend/resume) is not working in FBSD at the moment. As the word “Winmodem” suggests, these work (only) on Windows.

Read the full article or the discussion on the PC-BSD forums

PC-BSD 1.3.4 Review

LinuxHelp has just (22/05/2007) posted an interesting and balanced review of the latest version of PC-BSD. Some of the suggestions for improvement (3-5) will be included in the upcoming version 1.4 (June/July 2007). Though PC-BSD is not a Linux distriution, it’s good to see that a website dedicated to Linux also pays attention to a non-Linux OS.

This is the conclusion of the article:

PC-BSD is turning out to be an excellent alternative to other popular Desktop OSes. After testing and using PC-BSD for some time now, I can’t but admire the sheer amount of work that is put into creating, developing and molding an OS for the lay person albeit with a strong slant towards FreeBSD. The fact that PC-BSD is able to accomplish all the tasks expected by an end user – be it using the Internet for communication, listening to music, watching movies or using it for recreation purposes holds it in good stead as a viable Desktop OS.

Read the whole review here.

Update (23/05/2007): There’s in interesting discussion on OSNews.com regarding this reviews:
– Acquisition of PC-BSD by iXsystems (Oct 2006) hasn’t proved bad after all
– People seem to like the easy of use of PBI installation
– Quite a few happy users (incl. non-techy fathers, mothers, wifes – just the people PC-BSD is targeted at)

A list of FreeBSD based operating systems

FreeBSD is an advanced operating system for x86 compatible (including Pentium® and Athlon), amd64 compatible (including Opteron, Athlon 64, and EM64T), UltraSPARC, IA-64, PC-98 and ARM architectures. It is derived from BSD, the version of UNIX® developed at the University of California, Berkeley. It is developed and maintained by a large team of individuals. Additional platforms are in various stages of development.

PC-BSD has been designed with the “casual” computer user in mind. Installing the system is simply a matter of a few clicks and a few minutes for the installation process to finish. Hardware such as video, sound, network and other devices will be auto-detected and available at the first system startup. Home users will immediately feel comfortable with PC-BSD’s desktop interface, with KDE 3.5 running under the hood. Software installation has also been designed to be as painless as possible, simply double-click and software will be installed.

DesktopBSD aims at being a stable and powerful operating system for desktop users. DesktopBSD combines the stability of FreeBSD, the usability and functionality of KDE and the simplicity of specially developed software to provide a system that’s easy to use and install.

m0n0wall is a project aimed at creating a complete, embedded firewall software package that, when used together with an embedded PC, provides all the important features of commercial firewall boxes (including ease of use) at a fraction of the price (free software). m0n0wall is based on a bare-bones version of FreeBSD, along with a web server, PHP and a few other utilities. The entire system configuration is stored in one single XML text file to keep things transparent. m0n0wall is probably the first UNIX system that has its boot-time configuration done with PHP, rather than the usual shell scripts, and that has the entire system configuration stored in XML format.

pfSense is an open source firewall derived from the m0n0wall operating system platform with radically different goals such as using OpenBSD’s ported Packet Filter, FreeBSD 6.1 ALTQ (HFSC) for excellent packet queueing and finally an integrated package management system for extending the environment with new features.

FreeNAS is a free NAS (Network-Attached Storage) server, supporting: CIFS (samba), FTP, NFS, RSYNC protocols, local user authentication, Software RAID (0,1,5) with a Full WEB configuration interface. FreeNAS takes less than 32MB once installed on Compact Flash, hard drive or USB key. The minimal FreeBSD distribution, Web interface, PHP scripts and documentation are based on M0n0wall.

Freesbie is a LiveCD based on the FreeBSD Operating system, or even easier, a FreeBSD-based operating system that works directly from a CD, without touching your hard drive.

RoFreeSBIE is a Live DVD/CD installable on hark disk. Its goal is to promote FreeBSD and make it an educational tool and a mobile desktop too.

Frenzy is a “portable system administrator toolkit,” LiveCD based on FreeBSD. It generally contains software for hardware tests, file system check, security check and network setup and analysis.

More and more up-to-date information can be found on the FreeBSD systems page.