August 2010« November 2010 | Main | July 2010 »
Intel Graphics Issues in OpenSUSE 11.3
I recently upgraded my laptop (Dell e6400, Intel GMA4500HD graphics) from openSUSE 11.2 to 11.3 and immediately ran into one annoying issue. With any sort of compositing effects enabled my laptop would lock up from time to time, usually about three to four times a day. As you can imagine this really killed my productivity.
After doing some research there appeared to be three potential solutions to this issue as follows:
- Upgrade to a new kernel.
- Switch to the intellegacy driver after updating X11, mesa and libdrm from the X11 repository
- Upgrade the Intel video driver to 2.1.0
I reviewed the options and I opted to try the third one first as it was the least invasive and easiest to back-out if I ran into an issue. Fortunately it appears that this change does indeed fix the problem as my computer as been running continuously for the last 24 hours without an issue. Detailed instructions on making this change can be found in comment #45 of this bug report.
Note that you can ignore step #5 about removing intellegacy as that is only necessary if you tried the 2nd option above first. Also, if you run the 64 bit version of openSUSE as I do note that the path the driver needs to copied to is /usr/lib64/xorg/modules/driver rather then /usr/lib/xorg/modules/driver.
Installing Oracle XE in openSUSE 11.3
Installing Oracle XE in openSUSE 11.3 is pretty straight-forward except for one gotcha which I'll cover below. If you look at the openSUSE forums you will find posts like this one that make it sound complicated but it's actually much easier then it is made out to be. Here are the steps I use:
- Start Yast and open the software management, make sure you have libaio and glibc installed. If you are running the 64 bit version of openSUSE make sure that the 32 bit version of these libraries is also installed.
- Download the Oracle XE 10g rpm from here http://www.oracle.com/technetwork/database/express-edition/downloads/index.html.
- Install the rpm using the command sudo rpm -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm, note the oracle xe rpm file name may have changed so put the right one here.
- After you install the package some of the post-install scripts will fail because openSUSE is more stringent now in package requirements. As a result we need to set the password for the oracle user manually. To do this, su to root and then type in passwd oracle and change the password to whatever you wish.
- Once you do that, while still the root user run the command /etc/init.d/oracle-xe configure to configure the database. Follow the prompts and enter the information as necessary.
- The database should have been started automatically once the configuration is complete, run ps -ef|grep oracle to check the Oracle processes are running. You should see the TNS listener process as well as a bunch of database processes.
That's all it takes to install Oracle XE on openSUSE, simple eh? Note that openSUSE is not an officially supported platform for Oracle XE, while I find it runs fine for development I would not recommend openSUSE for hosting a production Oracle database.
Switching to Linux
I switched to Linux from Windows on my laptop about eight months ago and I thought it might me interesting to write a blog post about my experiences. As an Enterprise Java and Android architect and developer, most of the work I do can be done equally well on Linux as on Windows. Many of the applications I work on end up in a Linux or Unix type environment but I don't typically have much to do with the Linux servers on a day to day basis since they are managed by operational staff. While I was comfortable with a Unix command line I really wanted to increase my general Linux skills and using it on a daily basis provided an excellent opportunity to do so.
The first, and best, decision I made was to overwrite Windows when installing Linux and jump in all the way. My reasoning is that with a dual boot system I would be too tempted to go back to the familiar than pushing forward and learning something new. So after backing up all my documents to a portable hard drive I went ahead and installed openSUSE 11.2 on my Dell e6400. I have to say the install experience was significantly better then the last time I played with Linux a few years ago and the process went quite smoothly. The only exception was I had to install a proprietary Broadcom wireless driver manually but other than that it was all good.
After using it now for eight months I have to say that I have been really happy to make the switch. In general I find my development tools run much faster then they did under Windows. Java development tools such as Eclipse, BEA Workshop and JDeveloper tend to be quite heavyweight but feel much more performant under Linux then they do under Windows. I imagine most of this is likely due to the fact that Linux tends to be a lighter weight operating system and you generally run less cruft, not having to run an anti-virus scanner for example probably helps quite a bit.
One big thing I like about Linux is the fast boot time and that once the system is booted it is fully ready for use. Under Windows the boot time was longer plus once it booted to the desktop the system still wasn't really useable until all of the background boot processes finished, starting a program right after boot often entailed a painful wait.
I have not been able to completely ween myself off of Windows though and have Windows XP available in a VirtualBox Virtual Machine (VM) for the times when I need it. VirtualBox is a great application that is free, since it can suspend a guest OS starting and stopping the WinXP VM only takes a few seconds. The performance of XP in the VM is very good with the only noticeable slowdown having to do with disk access. I primarily use XP for the following programs:
- Microsoft Office. While OpenOffice is a great program it doesn't have 100% fidelity when modifying documents in the MS Office format. Since I work in a client facing position I can't afford to have problems in documents I pass around. I tend to use OpenOffice for reading documents but if something needs editing I'll use MS Office.
- Microsoft Visio. I use Visio all the time for diagramming various things such as network topologies, class diagrams, sequence diagrams, etc and I've have not found a good equivalent in Linux. There is a program called Dia but the user interface is just awful and it won't read and modify Visio files.
- Netmeeting. Many clients will use Netmeeting for ad-hoc screen sharing and I'll need to connect to a host machine to view their screen. For hosting meetings I put together a Netmeeting equivalent using VNC and Flashlight VNC Viewer which I blogged about previously.
- Internet Explorer. Sometimes I need to deal with corporate or client web applications that only work with IE. Fortunately these instances are quite rare and I expect the need for IE to diminish even more over time.
Having to use Windows in a VM highlights one of the weaknesses of Linux in a corporate environment, for better or worse the world around you is Windows based and you have to be able to inter-operate in that environment. Having said that, the Linux applications are getting better at this and knowing the complexity of the Office file formats I was really impressed with how well OpenOffice handled them. I'm optimistic that things will continue to get better with the noteable exception of Visio, there doesn't seem to be anything happening on that front in the Linux community.
As an aside I am fortunate that in my workplace there is support for Linux and we do not use Outlook or Exchange which could add another wrinkle to using an alternative operating system.
So in summary I have been very happy with switching to Linux and would have a hard time switching back to Windows. I feel I am much more productive in a Linux environment and generally prefer the way things work in Linux versus Windows. Overall for Java developers I would strongly recommend considering Linux.