In the course of this month there were various issues that couldn’t be solved immediately. In the comments there were quite a few suggestions on how to solve them and it is only fair to explore the solutions and fix the problems.

The bleeding edge in packages

In one the early articles I noticed the difference in being up to date between the ports and the packages. The program I tested -Bibletime- was available as 1.4.x in the packages and 1.6.x in the ports. Manolis then suggested to change the PACKAGESITE environment variable so that it would use the latest available packages.

I have been using Konsole with a root shell this month and it was enough to enter the following line:

After running a # echo $PACKAGESITE I was sure the new settings were accepted. The next step was to install Bibletime on this new box with # pkg_add -r bibletime, which led to a nice 1.6.4 version on my system. One thing I did notice. Before changing the PACKAGESITE environment variable there were already quite a few second and third digit dependency warnings which led to some programs that wouldn’t launch. Moving to the bleeding edge of packages only widened the gap between what was required and what was installed. This would lead to the conclusion that PC-BSD is a little behind on FreeBSD. I can imagine this is caused by a freeze some months ago on the part of the PC-BSD team after which they focused on ironing out the PC-BSD specific issues. For instance -as will be shown by the next sub heading- GNOME has a series of xorg 7.3 dependencies, while PC-BSD is shipped with xorg 7.2.2. In most cases the issue is limited to warning messages, in others it did result in non-functional programs.

GNOME issues

Installing GNOME on PC-BSD was easy enough (# pkg_add -r gnome2), but that left me a desktop with a window manager that wouldn’t accept any keyboard inputs. This problem was a familiar one to DrJ. When running as root the window manager -metacity- was running, but as a regular user it wasn’t. The issue should be solved by executing # metacity in a terminal window. However, I don’t have the ability to enter commands while under GNOME.

With the new PACKAGESITE settings on a fresh PC-BSD install I decided to install GNOME again. This process ended with a broken pipe error message. Nevertheless I could select GNOME in KDM and launch it. As expected it wouldn’t accept keyboard inputs. I thought it could be related to the KVM switch I am using and plugged in a PS/2 keyboard directly (after closing down the system of course😉 ). Unfortunately it made no difference, which left this experiment without a good result I will try it again when running FreeBSD later this year.

Virtualization

In of his comments DrJ refers to using virtual machines under FreeBSD. I was interested because the FreeBSD handbook gave the impression that using FreeBSD as host OS wasn’t really supported, apart from having vmware3 in the ports collection. DrJ gave a reference to the BSDNexus website. In the forums I found some very interesting guides on how to install, setup and use QEMU and VMware 3 on a FreeBSD box.

Both articles are well-written and describe each step in sufficient detail. I will give both solutions a try later this year when I start working with FreeBSD proper. However, I don’t think QEMU and VMware 3 are good solutions for the desktop user that I have in mind. When discussing W2L migration (or W2BSD in this case) there is always a small set of programs that some users need and which are not supported (i.e. the functionality is not available or insufficient in open source programs) thus requiring either emulation (wine) or virtualization. To get QEMU and VMware 3 up and running requires a lot more background knowledge and command line intervention than most W2l/W2BSD migrators would have.

Another option is the PBI for Win4BSD. Strange enough the link to that package has disappeared from the PC-BSD PBI referral page. The new Win4BSD website also doesn’t make it easy to download a trial or demo version, but in the FreeBSD mailing list there is still a link to the testing FTP server (ftp://ftp.win4bsd.com/pub/testing/pro/).

After doing a search on the website I found this notification by Kris Moore and the ‘ official’ download link: ftp://ftp.win4bsd.com/pub/releases/1.1/

I downloaded the content of the whole directory (just in case). By the way, it turned out the direct link was ‘hidden’ in the section Support. Anyway, launching a PBI isn’t much of a challenge anymore. After that it is a matter of clicking the Win4BSD icon and the One-Click-2-Windows window pops up.

What is One-Click-2-Windowsâ„¢?
Win4BSD Pro’s One-Click-2-Windowsâ„¢ is the world’s easiest way to install MicrosoftÂ® WindowsÂ® on your FreeBSD desktop. Once you have completed the Preparing for Installation step above, you can use One-Click-2-Windowsâ„¢ to install a Windows desktop as easily as just clicking the Install… button.
One-Click-2-Windowsâ„¢ installs Windows directly from a supported Windows CDROM, so you don’t have to load the media first as with the traditional installation method. This is particularly useful if you only intend to install one version of Windows, or one guest configuration. One-Click-2-Windowsâ„¢ installs the session under the default configuration winpro.

At this moment I wanted to grab the Windows CD, only to find out that it is no longer on the shelves in my study. Actually, there isn’t much of anything on my shelves anymore since everything is packed for our moving house next week. I did have a Windows 2003 test version lying around, but Win4BSD wouldn’t accept that. Ah well, nothing to be done about that.

As the end of the 30 days draws near it is time to do some crash tests. The more experienced Linux or *BSD user knows that you need to shutdown your computer decently. Even if the graphical user interface freezes up on you, you know there is a way out via on of the other virtual consoles. I still remember the days that a hard reboot on Linux would leave me with an unusable machine after a few times.

Ubuntu Linux -and maybe the other distributions as well- has become more crash dummy proof. But how would PC-BSD manage under the crash test?

Why necessary?

PC-BSD targets desktop users and non-technical users among them. Hence, we may not expect them to be able to change from a frozen graphical desktop to a virtual terminal, log in as root and reboot the system. If something goes wrong -and it will go wrong sooner or later- the reset button is just an arm’s length away.

The results

As I noticed before, PC-BSD isn’t going easy on the harddrive. If the harddrive isn’t good enough it won’t even install on it. Well, it doesn’t like you resetting the system without a proper reboot either. At the first new boot it recognizes the fact that there was no proper shutdown and starts to check the disk. This is time-consuming (good, that will teach you for the next time) and you see a list of error messages flashing by.

I immediately reset the system once this boot up was finished. And again. And again. PC-BSD then gave up and wouldn’t boot anymore. The fourth reset was one too many. Of course, you might not expect a desktop user to reset the system four times in a row, but it does show the system is more frail than current Linux systems.

In another instance the reset left me without a working boot loader after the first try. Restoring a boot loader will not pose a big problem for the more experienced user, but it is Mount Helena (seconds before the explosion) for the average desktop user.

I know it’s a bit of a short article today, but hey, after crashing the system I need to reinstall it again😉

One might almost think that gaming under PC-BSD is predominantly for those who like shooters. Well, not completely. There are other games, but I have found the FPS games to be among those who are well-developed and interesting. Other games pale in comparison to most of their commercial proprietary counterparts. Like the first two of today.

T.O.R.C.S.

When it comes to racing you can call me a fan of the xBox. I have various Colin McRae games, Project Gotham 1 and 2, Need for Speed and a couple more. Racing games should look slick and feel fast. When you race with a speed of 252 km/hours you should experience that.

TORCS is a highly portable multi platform car racing simulation. It is used as ordinary car racing game, as AI racing game and as research platform. It runs on Linux (x86, AMD64 and PPC), FreeBSD, MacOSX and Windows. The source code of TORCS is licensed under the GPL (“Open Source”). You find more information about the project in the menu bar on the left. If you need help have a look at the FAQ first. You can contact us on the torcs-users mailing list (you need to subscribe to use it because of spam).

There are various sites on the Internet dedicated to TORCS with additional content (cars, tracks, documentation, patches, etc.), you can find them in the “Related Sites” section in the menu on the left. If you are interested in racing visit the sites listed in the Racing section.

Well, you can race with these cars but it is far removed from the game experience I look for when racing. The graphics and speed experience are reminiscent of the mid 1990s.

VDrift is a cross-platform, open source driving simulation made with drift racing in mind. It’s powered by the excellent Vamos physics engine. It is released under the GNU General Public License (GPL) v2. It is currently available for Linux, FreeBSD, Mac OS X and Windows (Cygwin).

Right. I must say I might the impressed purely from the technological viewpoint that it isn’t easy to create a cross-platform game. I was far less impressed with the game description on the PBI site that failed to mention that keyboard support was not yet available and that you neede a joystick, gamepad or steering wheel to play the game. And it would be nice if the game would actually launch with visuals and audio. Barring that it becomes a bit tedious to play. If you get my drift.

Sauerbraten

If there was one game in the last year that convinced me that gaming had come to the Linux platform it was Sauerbraten. Maybe there were games before (and I still like my Neverwinter Nights hours), but Sauerbraten was simply great. It could have something to do with the fact that it was one of the few online FPS where I wasn’t fragged in seconds.

Sauerbraten (a.k.a. Cube 2) is a free multiplayer/singleplayer first person shooter, built as a major redesign of the Cube FPS.

Much like the original Cube, the aim of this game is not necessarily to produce the most features & eyecandy possible, but rather to allow map/geometry editing to be done dynamically in-game, to create fun gameplay and an elegant engine.

Unfortunately this turned into another PBI disappointment for me. The game would install, it would launch and then crash. Again and again.

America’s Army

Should we call this a game or a piece of propaganda? It’s both but that doesn’t mean it isn’t interesting to test it out. Downloading the PBI does take some time. It 800 Mb plus which means you don’t get America’s Army on your desktop quickly.

The America’s Army game provides civilians with an inside perspective and a virtual role in today’s premier land force: the U.S. Army. The game is designed to provide an accurate portrayal of Soldier experiences across a number of occupations.

When a PBI is so huge it takes ages for it to launch. Please, take this literally. It takes ages, in my case almost an hour. When it finally launched it looked like the install was stuck at 92%. It isn’t, it is busy unpacking the linux-americasarmy.2.5.0 package. After almost two hours I was ready to get my first taste of America’s Army, only to be met by a crash report explaining the system couldn’t find the /bin/armyops file.

Wolfenstein: Enemy Territory (W:ET) is an online first person shooter. Some lingo:

Wolfenstein: Enemy Territory is a full free multiplayer first person shooter game. The game was originally going to be a retail expansion pack for Return To Castle Wolfenstein but the project was cancelled and the good folks at Activision decided to give it to us for free!
It’s a team game; you will win or fall along with your comrades. The only way to complete the objectives that lead to victory is by cooperation, with each player covering their teammates and using their class special abilities in concert with the others.

And I was impressed. The graphics in the game are crystal clear and it runs fast. I had a framerate of 90 and that is not bad on the mediocre hardware I am using. When you connect to a server you the program will download multiple pak-files (.pk3). The screen to select your server has various filters and there is plenty of choice. When you hop from server to server you notice the variety of gaming environments, which is a tribute to the map developers.

True Combat: Elite is a complete mod of W:ET, changing the theme from World War II to a more modern Special Ops versus Terrorists.

Now, the most important question: “What can you expect from TC:E?” TCE is a tactical-team shooter, set up in a modern-world environment. TC:E puts you into the role of elite mercenary soldier in the conflicts of two internationally operating forces.
SpecOps vs. Terrors SpecOps vs. Terrors
The Global Intervention Force (GIF626) is a special force formed of the top of the world experts joining from US Delta force, UK SAS, German KSK and GSG9, to mention a few. An international mercenary organization known as “The Unit” is their opponent. It is reported that some of these dudes are were once with the above forces, but the lure of money is strong. You say “Yet another terror counter-terrorism shooter. Why the hell should I go for it?”. We say “Cause you don’t have to spend a cent and it features:”

The more modern settings demand different environments and I was stunned by the level of detail I found. The list of available servers is significantly smaller than W:ET and when I went online nobody was playing.

Playing some time with W:ET (and browsing throught the TC:E servers) left me with a very positive feeling that open source gaming can be very, very mature and of competitive quality. It was fast, responsive and stable. It was as close to perfect as I can imagine. If only there was sound to accompany the gameplay. There was sound with most of the other games, so it couldn’t be a hardware problem.

Conclusions

This isn’t a review of the quality of the various games themselves, but about how easy it is to use them under PC-BSD. The PBI system is a the heart of the PC-BSD marketing and then -in all honesty- a better performance was expected. Some games (Sauerbraten, America’s Army) simply wouldn’t run and that is unacceptable. Maybe the PBIs were made for the previous release, hence I can only suggest to update the information on the PBI website and add information about which release is supported. That alone would save some disappointments. Other games did run but with a glitch here and there. Again, this really needs improvement.

The games that did run fine (and I wish to include both W:ET and TC:E among these) deliver a good performance. TORCS has a dated look and feel, but it performs as promised. For W:ET and TC:E I look forward to playing these games with sound.

Yesterday I was left with a system without a graphical interface. No doubt I could have fixed it by going into the xorg.conf file, but I took the easy route: a clean install. The next two days I will focus a bit more on the gaming experience under PC-BSD. I kept away from ports and packages and used only the available PBIs on the website. This means I also didn’t use the PBIs that yet have to be approved. My main focus is: (1) Will the PBIs run under this latest release of PC-BSD? and (2) Are the games running with a decent speed? My box is an AMD XP 2400+ with a nVidia N6200 256 Mb card (aperture set to 128 Mb) and 1 Gb RAM. Not exactly the latest model, but it should suffice for all of the tested games. I have tested most of the games before on a Sabayon Linux and an Ubuntu Linux box. For each game I will add some commercial lingo information. The screenshots are taken from the original websites.

Nexuiz is a 3d deathmatch game project, created online by a team of developers called Alientrap.

Once you launch the game you can set up your own player character. There are a few settings to please the tinkerers. When you press Join you get a list of available servers. Interestingly there is even a server for more novice players, which gives you a chance to develop your online skills. The PBI delivers Nexuiz 2.1 and most of the servers I tested returned the message that they were on version 2.3.

The local gameplay was good. It was fast and responsive. The online gameplay was a major disappointment. I only had a completely dark screen with some flashes here and there, mostly followed by a message that I had been fragged.

Action Cube

Action Cube is no longer called by that name but continues it’s life as Assault Cube. Some commercial lingo:

AssaultCube, formerly ActionCube, is a free first-person-shooter based on the game Cube. Set in a realistic looking environment, as far as thatï¿½s possible with this engine, while gameplay stays fast and arcade. This game is all about team oriented multiplayer fun.

AssaultCube runs on old hardware, with the correct settings you can run it on a P3 800Mhz gf2.

Thanks to the efficient networking code, AssaultCube requires very little bandwith, you can play it with a 56k modem internet connection.

You can go online with Action Cube as well, but don’t expect too much of it. Most of the servers reported that they used a different Cube protocol. When I was playing only one server allowed me access. The game wasn’t overly interesting and shooting with a bunch of cloned hooded guys with rifles becomes boring quickly. The online screenshots of Assault Cube are more promising, so maybe it’s a matter of waiting for the PBI update.

Warzone 2100

After playing with two first person shooters it was time for a change of pace. Warzone 2100 is a realtime strategy game in the tradition of Command & Conquer. Now that’s a challenge for any game developer. I spend many hours on the Tiberium games and the Dune Emperor game that uses the same engine. Warzone tries to take on another major title as well:

Warzone 2100 is a real-time strategy game, developed by Pumpkin Studios (Archived website) and published by Eidos-Interactive?.

Although comparable to Earth2150? in many significant aspects, it does contain some that are unique. These include various radar technologies, a greater focus on artillery and counter-battery technologies, more frequent in-game cinematic updates as gameplay progress, as well as a different vehicle design method. It was released in 1999 for both PC and Playstation.

3D realtime strategy on a future Earth.

Upon entering the game you land from your transport and establish your base. Here you conduct research, design and manufacture vehicles, build new structures and prepare your plans of global conquest. If the game goes badly you’ll end up fighting last ditch battles here to defend your base from enemy attacks.

Combat is frenetic, with extensive graphical effects and buildings giving rise to flying shrapnel and boulders. Within the game are many different structures and vehicles. From an initial Command Center, you then go on to build Resource Extractors to provide fuel for Power Generators, which in turn supply energy to Factories, Research Facilities and weapons emplacements to protect your base.

Now, the commercial lingo is impressive isn’t it? The game itself is less appealing when it comes to graphics. The gameplay is familiar and the sounds are environmental. Don’t try to play the tutorial, because it might crash on you. On PC-BSD the game isn’t stabile. It crashed on me and then it wouldn’t close the window.

Apart from the commercial lingo Warzone is actually a nice RTS to play with. It takes some figuring out what you can do and how the tech tree works, but it’s a solid game.

Quake 3

I can be brief about the Quake 3 PBI. Either improve the description or remove it from the website. Once you launch the PBI you are notified that you need pak0.pk3 from the original disks. This should have been mentioned in the description. Now it was just a waste of my time.

Alien Arena

I gradually moved up to the larger downloads on the PBI website. As the size of the PBI grows I noticed it takes substantially longer for the install wizard to appear. In the mean time you don’t see, hear or notice anything. At first I thought the PBI was flawed or that I didn’t double-click enough. Then, after a long, long time I was asked for the root password. Twice. But the game is worth it.

Alien Arena is a first person shooter. Again the online gameplay is the most important feature.

Do you like fast paced deathmatch? How about rich, colorful, arcadelike atmospheres? How about…retro Sci Fi? Then you’re going to love what Alien Arena 2007 has in store for you! This game combines some of the very best aspects of such games as Quake III and Unreal Tournament and wraps them up with a retro alien theme, while adding tons of original ideas to make the game quite unique.

AA2K7 is the latest version of a freeware online deathmatch game that was first introduced to the public in October, 2004. Since that initial release, nearly every aspect of the game has been revamped, in fact, all of the content and code from the November 2005 release of Alien Arena 2006 has been redone as well. It’s like an entirely new game, and it may shock people just how much it has improved in less than a year’s time. With over 30 levels, seven modes of play, loads of mutators, built-in bots, 11 player characters, 9 weapons(with alt-fire modes), the game has an endless supply of replayability. With so many new features, AA2K7 is nearly an entirely new game when held in comparison to it’s predecessor. With the trials and tribulations of software development, endless hours of playing, gathering feedback, COR Entertainment has been able to not only fine tune and perfect it’s flagship game, but add completely new dimensions to it.

Using the CRX engine, which is based on the Id GPL source code, AA2K7 now includes modern effects such as real time vertex lighting and shadows, lensflares, light blooms, reflective water, textured particles, stainmaps, 32 bit color, shaders, fog, and much more. Built into the game is a easy to use server browser which allows the user to query information about each server. CRX features rewards systems, as well as colored player names, winner podiums, and weapons stats. The best thing about the CRX engine however, is it’s netcode and speed. Even on a modest system, you will get excellent framerates, and movement is still extremely smooth and fast, even on high ping servers.

Okay, I agree, that was a bit long for the commercial lingo, but in this case it’s straight on the ball. Alien Arena is a fascinating game with a great look and feel. I found it highly responsive and kept me busy for some time. It had some quirks when I moved from the local gameplay to the online gameplay (would report that I was already playing on another server). And I need some more practice as I was fragged a bit too quickly. The array of weapons is pretty interesting as well.

I was getting annoyed by the long string of error messages pointing to second or third digit dependencies that weren’t met. For a freshly installed PC-BSD system I expected it to be a bit more up to date. One could argue â€“ as is done in the PC-BSD forums- that this version of *BSD is meant for desktop users who should restrict themselves to using the PBIs and leave updating the system to the Online Update Manager (Settings -> Software & Updates). At the same time the Quick Guide does explain the packages and ports systems to install new software. But how do you keep PC-BSD in sync with the developments in those two systems, when -as I experienced- installing packages is accompanied by error messages and broken installs and the Online Update Manager tells me the system is up to date?

Checking the PC-BSD forums

How would the current group of users deal with this issue? For that I went to the PC-BSD forums and searched to any clues on how to update and/or upgrade the PC-BSD system. I must say that the overall picture isn’t heart warming nor encouraging. Upgrading from 1.3.4 to 1.4 is not recommended. Upgrading from a 1.4 beta release to the final release is not recommended.

What does the FreeBSD handbook say?

Chapter 4.5.4 explains how to upgrade the ports with various tools. The portupgrade utility is a command line tool with which you can upgrade the entire system or just an application. It is recommended first to run the #pkgdb -F instruction to fix any problems in the package database. The portupgrade instructions can look like this:

# portupgrade -a which will update all outdated ports on the system
# portupgrade -aP which will update all outdated ports on the system and use a package instead of a port if one is available (saving a ton of compile time)
# portupgrade -R firefox which will update Firefox but first will update all the ports required by it.

Another tool that can be used is portmanager. With # portmanager -u the whole system will be updated.

And what about the GUI tools?

I have the DesktopBSD-tools installed on my system. One very annoying problem I encounter is the message that there are conflicts in the package database, but no real information on how to fix this. Fortunately, I found this thread in the PC-BSD forum. Anyway, I opted to update all the outdated ports and DesktopBSD-tools started to handle them. It took somewhat more than an hour and -sad to say- this again showed a long list of errors and unsolved dependencies.

The unavoidable comparison

For most of the time I want to test PC-BSD on it’s own merit and not compare it to -for instance- Ubuntu Linux, but today I couldn’t really avoid it. I am spoiled by Ubuntu and the update utility. It tells me when new updates are available and then it is simply a matter of clicking the update icon and entering the root password. Dependencies are taken care of. I can do the same via the commandline, refresh the resources and update the whole thing. The graphical interface to update an Ubuntu box are simple enough for most desktop users. It’s that simplicity I miss on PC-BSD. Only when a desktop user stays away from the ports and packages he/she won’t notice the dependency errors, but then he/she is completely dependent on the PBI collection. At that point the benefits of the packages and ports are gone and would it be wiser not even to mention it in the quick guide anymore.

And at the end of the day…

I didn’t have a graphical desktop anymore. My LCD tells me that the input is not supported and running the wizard (option 6 from the bootloader) didn’t solve the problem. My my. I guess something went seriously wrong.

It’s that time of the month again. My employer is so kind to send the monthly reward for my hard work and I am so kind to send most of it to the ones that want a part of that money. It’s that brief albeit virtual moment that you actually feel you own something. This brief moment needs to be captured into some decent software, which is why I took a look at the various programs available for handling your finances.

KMyMoney

PC-BSD uses the KDE desktop as a default, so it makes sense to have a look at the K program for personal bookkeeping: KMyMoney. And -to be honest from the start- I would also use it on any other desktop. After launching it you select â€œSetup a new KMyMoney data fileâ€ and follow the steps in the wizard. First you enter your personal information and then you select the default currency. The next step allows you to select a template for the accounts. There are 8 different templates, one default and seven localized.

The taskbar on the left gives access to your accounts, the institutions you do business with, the categories to keep track of where the money went. As with many K programs the right mouse button is your friend to add and edit items in the various screens. You can import Quicken files and GNUCash files.

GNUCash

GNUCash Finance Management is the behemoth of financial desktop software. Installing it on a fresh PC-BSD box brings you a ton of dependencies like Firefox and GOffice. When I saw the enormous list of second and third digit dependency error messages flashing by I was worried GNUCash wouldn’t even run, but it did anyway. GNUCash doesn’t have a wizard but a druid. The difference? Beats me, it does the same job as the wizard. It might make a difference in an RPG, but not while setting up a new set of accounts.

The druid helps to select a currency and then you have to choose one of the template sets. You have a template for business accounts, a simple checkbook or common accounts for the most of us. The next step is where you have to come clean with yourself. How much money is in each account.

GNUCash is a very powerful program that strictly adheres to bookkeeping guidelines. Personally, I found it a bit too powerful and complex for my taste and use. However, it does hold it’s own against it’s proprietary brethren like Quicken or Microsoft Money.

Eqonomize

If you need a somewhat smaller program, just to keep tracks of the money, Eqonomize might be of use. The interface is similar to KmyMoney, but the accounts are somewhat simpler with fewer categories. Adding or removing accounts and categories is easy enough. There is one drawback to Eqonomize: it is setup to use dollar accounts only.

Homebank

Homebank is like a blank slate which you can edit to your own liking. There is no standard template of accounts. It’s up to the user to add the accounts, the payees and the categories. The program has been well maintained, but it is funny to see that in the preferences you can still select the Euro options and the original exchange rate.

Grisbi

The last program I wanted to look at was Grisbi. It’s one of the better financial programs for endusers under Linux. Grisbi also has a complete set of accounts in Dutch, which makes it somewhat more attractive for me. The interface needs some work as often the titles of the columns are invisible.

On PC-BSD it was the only program in this category that didn’t end up in the menu. It is a Gnome based program, but so is GNUCash and that program is in the menu (along with it’s icon). The program runs fine when launching from the command line and editing KMenu to have a Grisbi entry shouldn’t be a problem.

Conclusions

This is only a brief look at the various programs in the finance category that are available for PC-BSD users, but it does show that there are no problems with handling your finances via this desktop. Whether the programs cooperate with your online banking depends heavily on the bank and the protocols it uses. For local financial management there is no reason to hold of moving to PC-BSD.

Today I started with a final attempt to install PC-BSD on a physical hard drive. This disk I know is good and has been working up to this day without so much as a hickup. Sadly, again I was confronted with error messages and no PC-BSD install. Not a good start and a major disappointment considering I must have installed dozens of Windows, Linux, BeOS and QNX versions on this collection of hard drives. Since I did not see an outcry of complaints in the forums about this problem it must be on my end. Maybe PC-BSD doesn’t like the swappable hard drives, maybe there is another conflict. At this time I wanted to call it quits with the physical install and finish this series with the virtual install only.

PC-BSD in all it’s glory

Then there was Gustavo’s suggestion. Maybe it were the aperture settings for the graphics card. I have a nVida N6200 256 Mb card. Following the suggestion I went to the BIOS and changed it to 128 Mb and AGP 2x instead of 4x. After that it was a matter of selecting the proper nVidia driver and there it was: the PC-BSD desktop from a physical hard drive.

One of the first things I tested was Compiz Fusion. I’m a sucker for eye candy and though I don’t want to have it enabled all the time, it does make working with the computer more pleasant. Compiz Fusion simply worked. The rotating cube was there and all the effects. I selected on of the included Emerald themes and the desktop looks amazing now.

Gaming under PC-BSD

This solution makes it possible to write something about gaming under PC-BSD. The ports collection reveals an interesting collection of games, most of which should be familiar to the Linux gamer. There is the set for the casual gamer like the various Tetris clones, card games and some arcade racers. My personal favorite Neverwinter Nights is also there. It isn’ t a native version but the Linux version. This can be done by using Linux Binary Compatibility (chapter 10 of the FreeBSD handbook).

What other games makes use of LBC to run under PC-BSD? I found America’s Army, Darwinia, Defcon, Doom, Wolfenstein: Enemy Territory, Quake III and Unreal Tournament. Just like under Linux First Person Shooters appear to be supported the best. There are Free-BSD ports for Alien Arena, Open Arena, Sauerbraten and Nexuiz. You want to play your favorite shooter with some friends, but also want to run a FreeBSD server? It should be possible considering the string of Halflife server packages or Star Trek Voyager: Elite Force packages. Add FlightGear, TORCS and Boswars to the mix and you have a fairly complete gaming environment to spend a few hours. And I thought I was fragged for not having a physical install. Good thing the community was there to come to the rescue.

Up to now I have been using PC-BSD on a virtual box. That’s not really a problem provided you have enough RAM for both the host and the guest operating systems. On a side note:the FreeBSD handbook made it clear that it is possible to use FreeBSD as a guest OS, but not yet as a host. On the website of PC-BSD you do find a link to Win4BSD, which should allow you to run a virtual Windows box. In order to test that I wanted to install PC-BSD on a real hard drive. That would provide the proper environment to test out the eye candy features and the gaming abilities for a later article as well. Plus, I needed to get the final release of 1.4 up and running.

Going from drive to drive to drive

I usually have more than one experiment running at the same time. Most of the time I use a virtual system to install and test some Linux distribution of the day. And I have a small stack of physical hard drives with a swappable bay for easy switching. Needless to say the side of my box is open for easy access to plug in new hardware. The disks are not the latest of the latest, but they all work. Why the explanation?

Well, I took the first drive, put the PC-BSD cd in the drive and rebooted. The graphical installer would launch and I went through all the steps. An attempt was made to create the partitions and then a long string of attempts to install packages passed by. Not enough space. Weird. Wouldn’t a 40 Gb drive not be sufficient?

Okay, then another drive which was happily using CentOS before this attempt. Nope. Same problem. Not enough space to install PC-BSD. At this point I started to get both annoyed and curious. I took a closer look at the messages that pass by when you fire up PC-BSD. It did give some DMA related warnings (FAILURE – READ_DMA status=51 error=84 LBA=0)

The third drive was loaded into the computer and the reboot didn’t reveal any error messages this time. I could finish the install without any warnings or glitches. Time for a hypothesis. Apparently Windows or Linux are less fickle about the quality of the hard drive they are installed on. PC-BSD does a check and when it fails at a point it simply stops. Either you take a good hard drive or you don’t get *BSD. Makes sense, but some information on why it failed would have helped. Anyway, I had my hard drive with PC-BSD. Or so I thought.

Rebooting the system brought me to the bootloader and the boot process, but along the line noticed an error message flashing by and a warning the system would reboot in 15 seconds. And again. And again. No doubt some hardware conflict is preventing PC-BSD to boot normally. However, after three attempts I didn’t feel like digging into the error message (couldn’t allocate kernel virtual memory), going online to check it out and try to fix it. After all, this is a regular working day and there are other things to do. The virtual box will have to do for the next few days.

I have discussed the PBIs a couple of times already, but there is one element that deserves some attention. The PC-BSD forum has a separate section for PBIs that are under development, let’s say the bleeding edge of PBIs. The list of available packages isn’t particularly large, but I found a few items that do prove some creative uses of the PBI system.

Getting Firefox and Flash 9

One of the problems I had was to use websites that require Flash 9 (see Day 17). Even the final release of PC-BSD 1.4 comes with Flash 7 support ‘only’. Going over the PBIs ready for test I found an integrated Firefox/Flash 9 package. What does it do? It installs Firefox under Wine with Flash 9 support. Excuse me?

Yep, the PBI uses a Windows version of Firefox and makes it run under PC-BSD with the help of Wine. That’s even a step further that the suggestion I got to use the Linux version of Firefox that is available in the ports collection. I don’t know about you, but I found this pretty ingenious thinking.

This install of Firefox doesn’t conflict with other versions of Firefox on your box. As the comments with the package show, the screen fonts do need some working (though I have seen far worse). The good thing is that it just works. The websites I used for testing Flash 9 support can be used in all their glory. I must say that FirefoxWine feels a bit sluggish, but this PBI is a very simple solution for a real life problem. Hopefully it is only a temporary solution until full Flash 9 support comes to PC-BSD.

Yesterday I made PC-BSD Push Button Installer (PBI) self-contained sql-ledger installation in jail with apache, perl, postgresql- just have to launch it with doublecklick and press next button- after less than minute you’ll have fully working web server with accounting system.

Whoow! Slow down there. SQL-Ledger is a serious accounting/ERP system. It’s not something an average end-user might play with, though if you are following a course in bookkeeping this is a very strong and complete sandbox to use. I also understood the last part about Apache/Perl/PostgreSQL. It’s a bit different from PAMP, but the general idea is there. It’s a webserver. But accounting and jail are two words people generally don’t want to mix, especially since it usually means your money has been send to some vague bank accounts in the Caribbean.

Fortunately the developer of the PBI package gave a brief explanation of what a jail is in the context of FreeBSD:

In case someone don’t know what FreeBSD Jail is:
1. Virtualization : Each jail is a virtual environment running on the host machine with its own files, processes, user and superuser accounts. From within a jailed process, the environment is (almost) indistinguishable from a real system.
2. Security : Each jail is sealed from the others thus providing an additional level of security.
3. Ease of delegation : Thanks to the limited scope of a jail, it allows administrators to painlessly delegate several tasks which require superuser access without handing out complete control over the system.
So, you can log into jail as user and su – to root (gain full admin privileges in jail). You can install/delete software in jail without touching host base system from where jail is started. Jail got it’s own base system and can see only it’s own processes- same restriction for host system- you can’t see what processes in running in jail without special tools.

The FreeBSD Handbook has a complete chapter about Jails and it’s part of the section that deals with security related tasks and functions. In short, jails are an improvement of the chroot environment. That’s a concept I am more familiar with since it is used to create custom Ubuntu DVD’s. With a chroot environment you still share resources with the host system. A jail further isolates the virtual system from the host system. As the book explains: a root in the jail can only perform critical operations in the jail, the virtual system, and not in the host system. The handbook then provides a step-by-step workshop that helps you to create your own jails and setting them up. You can create a jail with a complete FreeBSD environment or just with some limited services.

This article explains how a developer creates multiple jails for testing purposes. Some additional reading can be found here. I must say I haven’t tried it yet and I am still fiddling with the PBI package and it’s settings, but on a conceptual level I find it very interesting. It’s definitely something that I wish to try later this year after I got some more experience with FreeBSD based systems.