Thursday, January 1, 2009

Linux to OpenSolaris 2008.11

Installing operating systems is kind of like a strange hobby for me. I don't usually write operating system reviews; it's more to get a more informed state of the different operating systems and distributions. I run Ubuntu on my home computer have been absolutely content with it. OpenSUSE users who work with me are typically surprised how fast I can get into Synaptic, install a package, and get back to work compared to Yast, which seems unnecessarily slow. However, I try to branch out from time to time to see what other developers have been working on.

Giving OpenSolaris a try
I have recently installed OpenSolaris 2008.11 on my spare laptop. This is my second install of Solaris this year. I first tried 2008.5 and had a few problems getting a few things to work. I can't remember the details, but I was working on a production machine, so I had to remove it and install a workable OS.

For those that aren't familiar to OpenSolaris, here's brief rundown. OpenSolaris is a free Sun Microsystems product based on the Solaris operating system. It is not compatible with Linux binaries, but is a UNIX-based system so many projects can be ported to OpenSolaris. It is known for a very robust threading implementation and has much commercial support from companies such and nVidia and Adobe, which provide useful drivers and plugins.

I downloaded the latest ISO from the website and through it into the CD-ROM. The default ISO is a live CD and allows a user to jump straight into using the operating system. The live session was rather slow in my case and I was going to install it anyway, so I just started the installation. After answering the basic questions about hard drive partitions, time zones, and user information, the installation started and lasted about 30 minutes.

bash shell now the default
The shell is the most basic connection of the user to the operating system, so I'll talk about that for a second. I have always used bash in my few years of using Linux. I do not have enough experience in other shells to understand merits of bash over some other shell, but I know bash well enough to do what I expect a shell to provide. On my previous installation of OpenSolaris, bash was not the default shell. Most of the time when I use a computer with a shell other than bash, I just switch to bash and am back to an environment I am more familiar with.

It appears in this newest release that bash is now the default. I've read several forums about the debate over what the default shell should be. One such forum post features a Solaris newbie bemoaning the default ksh shell and advocating bash since it has a greater familiarity for many users. Like the repliers note, it's all a matter of preference and is easy enough to change. Going into /etc/passwd, you can change the last segment of a given user's line to specify the shell the user should be provided. More on that can be found here. OpenSolaris switching to bash by default only represents a minor convenience to me since I no longer have to change it. You can also go into the System->Administration->Users and Groups to change the default shell for a given user, which I'm assuming modifies the passwd file for you.

Joining a wireless network
Using a laptop, it's pretty important to easily connect to a wireless router for internet access. Things were a bit funky here for me. Keep in mind I could be doing something totally wrong, but I imagine if that's the case, it's probably common for many new to Solaris as I've used GNOME a long time and haven't had any problems.

After trying to fight with the problem, I joined the laptop-discuss mailing list. They seem to be more helpful and direct for solving problems than IRC. At this time, several developers are still helping me with my problem, but I did find that by switching my encryption from WPA2 (AES+TKIP) to WPA (TKIP) seemed to solve the issue.

Text Rendering
The Java Desktop System comes with the Sans font as the default. My Ubuntu machine uses the same settings, but looks much sharper. For at least a temporary solution, I went into System->Preferences->Appearances and changed the default fonts to something sharper (I liked Verdana2000). It was much nicer on the eyes.

Display Drivers
It's critical to have up-to-date display drivers provided by the manufacturer. Despite efforts to make open-source drivers for graphics cards that provide high-performance 3D acceleration, most implementations lack stability. This is due to little reference the manufacturers choose to provide.

I typically use nVidia cards and luckily nVidia provides a fully supported driver for Solaris. Interestingly, this is the ONLY driver that nVidia provides that works on both x86 and 64-bit systems. I do not know enough about drivers, the Solaris operating system, or Solaris drivers to know why only Solaris has this universal driver. 2008.11 seems to come with the nvidia driver already installed, so new user should be able to take advantage of the GPU after installation.

Getting Flash
Flash on OpenSolaris is officially supported by Adobe. This link provides two ways of installing it. I opted for the second option in the comments section, which required a certificate from Sun.

New to Solaris
If you're new to Solaris/OpenSolaris, there are a few little differences between in it and Linux. I found this blog entry at Sun, which gave me some information other users had also struggled with understanding coming from a Linux background.

Conclusions
All in all, it was a fairly easy installation. My first impressions are so so. The default fonts look kind of blurred, which I recognize from Linux distros from years back. Even the youtube videos seem kind of pixelated. And when running them, prstat says firefox-bin is taking up 76% of the CPU, which seems a little too high.

For my next endeavor, I'm going to try some basic development on OpenSolaris including getting to know the package manager, using subversion, Netbeans, etc.