Struggling to install - Windows, Heroes and Linux

Wednesday, May 23rd, 2007

Yesterday, ahhh… Heroes season 1 final episode - “how to stop an exploding man”. When I got back to home from exhausted exam paper and a exhausted journey about 3 hours(Colombo to Ratnapura), my brother had almost downloaded it. However, after all who want to watch heroes final episode in small 14″ laptop screen. So, I plugged in my laptop to TV and boot it.

But as usual, when I’m trying to do something, Windows didn’t work. So, I tried fixing that. After lots and lots of fixing, I got it to boot, and when I played heroes sounds didn’t work. So, what to do - I restarted the computer again. Unfortunately, windows is not working again. It says “system32/config/system” file is missing.. ahhh!! That file is always important (lol.. if you are not sure what I’m talking about, read my previous post).

As you have already guessed, now windows doesn’t even boot in safe mode. So, I put a windows professional CD and tried to go to recovery console. No! No! It’s not a pirate version :). I got an original CD for selecting for second round in imagine cup web development (I also didn’t believe what I’m seeing when I first saw that.. So, no need to read that sentence again ;-)). However, recovery console was very helpful : It said “There are no hard disks present”.. whoah!! Cool, isn’t it? Actually, later on I found out I have to disable “Native SATA support” in bios in order to run the windows setup.

Anyway, since I didn’t released that SATA thing before, I rebooted in linux again to check whether I can find an old “system” file and replace the corrupted one. Thanks to my genius mind, System Restore is disabled and I had no copies of the “system” file left. So, I got one from the “windows/repair” and replace it(Thank you ntfs-3g). I could not stop just by just replacing that, I had to replace all the config files SAM, SECURITY, etc.

So, when I rebooted windows again, it worked perfectly, I was damn happy and got prepared to watch heroes. Oh!! Who is “Owner”?? instead of booting my normal user account, it booted to something called “Owner”.. oh!! Shit.. everything in the registry is gone.. How did I miss the fact “system” file is the registry? Anyway, I hope it’s ok and start installing drivers again. Actually, all driver files were in the system32 folder, so I just had to buzz the system to reinstall the drivers. Now, everything is ready, and I started installing software. Crap!! Even though everything seems fine, nothing works correct. It goes into an endless loop, which doesn’t even use my resources. It’s really annoying because usually when your computer is stuck, it uses your CPU power, uses your memory etc.. Then, I know something is going on, and be patience. But now, when I start an application, it just doesn’t show anything.

Okay.. Heroessss….. I can’t wait, and I also want to watch it in a 29. So, I got my hammers, knifes, etc ready and booted linux to see whether I can get the S-Video output working. And I never though this would be this much easier. Screw the hammers and knifes, you just a need a small blade(I think not even that if you are running feisty fawn - Not so sure, have to try that out). I just had to edit the “xorg.conf” file and put an option called “MonitorLayout” to “TV” in the “Device”. That’s all, I ran a “sudo killall gdm” and again a “sudo gdm”, it worked perfectly. (Yes, I know that you can do all that by one click in windows, but imagine getting your TV output works with windows generic drivers, you must be kidding).

And after all, happily ever after, Nathen and Peter stopped the bomb(If you want a detailed description on what happened read Kasun’s post).

After few more hours of installing windows and messing up with the drivers, I got windows running again. After all, how can I goe my ADSL to modem to work in linux? :P

Hitchhikers guide to linux

Friday, March 30th, 2007

Let’s start by the unix way: “do one thing and do it right”. That’s one major part of the unix concept. A typical unix system is build using so many tools and libraries and those are maintainted by different user groups. So, they only have to concentrate on their packages, thus those packages are high on quality. A collection of unix tools and a kernel from linus became the linux system. That’s the beginning of the universe.

Then, once after people found this new universe and got to know that it’s quite interesting they started to build lot of galaxies here and there. One such popular galaxy was redhat, then debian and the current most popular one called ubuntu with huge population.

Fortunately, with a little effort it’s possible to adapt a planet to fit into another galaxy. Usually, people develop a planet in one galaxy and port those into other galaxies. The only problem is that normal users (non developers) might find the newly developing planets unusable in their galaxies unless someone port that to their galaxy.

The nice thing behind these galaxies and planets is that all plans and the core elements of the planet/galaxy is freely available and you can actually see what it is build on and choose what fits your needs. And if you find any difficulty in living there you can always change your galaxy/planets at free of cost. Or you can always talk to someone and solve your problems; most of the people in the universe are willing to help you.

The really nice part is if you don’t like any of the galaxies/planets you can always get the plans of something, modify those and create your own; and trust me when other people are using that, you’ll feel really really happy.

Welcome to the new universe.

Get ntfs-3g working with windows hibernate

Sunday, March 18th, 2007

Several weeks ago, I installed ntfs-3g and it was working fine. However, It doesn’t mount the drive if windows is hibernated. I usually hibernate windows in my laptop, so I wasn’t having ntfs-3g in fstab, I just remount it when I need it. I was sick of this and came up with a very simple script which allows me to mount it in ntfs-3g if possible, and to use ntfs otherwise.

This is how to do it.

  1. Install ntfs-3g
  2. Just type sudo apt-get install ntfs-3g

  3. Edit your fstab
  4. Open /etc/fstab and change the mount type from “ntfs” to “ntfs-3g”

  5. Open /etc/init.d/mount-bak.sh
  6. Here is my script. Change your device and get options from the fstab. The device should be changed on both 2nd and 4th lines.

    #!/bin/bash
    mounted=`mount | grep sda1`;
    if [ "$mounted" = "" ]; then
    mount /dev/sda1 /media/sda1 -o ‘defaults,nls=utf8,umask=007,gid=46′
    fi

    Change the permission of the script by running sudo chmod a+x /etc/init.d/mount-bak.sh

  7. Change the run level
  8. sudo ln -s /etc/init.d/mount-bak.sh /etc/rcS.d/47mount-bak.sh

5 steps guide to enlightment

Friday, March 2nd, 2007

Did you ever wanted to ascend(Either ascend as in stargate, or nirvana as in buddhism)? As far as I know, even if you want to do it, it’s very hard to ascend. No one will ascend you(Daniel Jackson is a special case), you have to do it by yourself. But when it comes to computers, there are always hell of a lot of open source software and documentation. So, at least, let your computer to get ascended.

Step 1 : Install Ubuntu

When it comes to enlightment in computing, there is no doubt that I’m talking about linux (There is a x-windows manager in linux called enlightment, but I’m just refering to word enlightment - nirvana). If you are new to linux, I strongly suggest that you install Ubuntu. Ubuntu is a very popular linux distro, so it has a huge amount of users around the world; which simply means there are hell of a lot of tutorials, documentations and forums for it. However, if you want you can also choose another distro such as debain, gentoo, etc. It doesn’t really matter, after all it’s linux.

Step 2 : Upgrade your system

Linux is built using many small software modules, called libraries. Since all those are open source, even the 3rd party software developers use those libraries, and the libraries are developed independantly from the software, also get upgraded separately. Now, you might be wondering, what if I don’t have those libraries in my computer? Does the software comes with all it’s dependent libraries? No, they don’t. That’s why you have something called package managers(apt-get, synaptic). Package managers take care of the all dependency problems, it’ll calculate the dependencies and install those. But when it comes to downloading packages from the internet, you have to feed the urls of the package repositeries on the internet. Note that this is a very important step in ubuntu, otherwise you’ll only see a limited list of packages. Follow the guide on ubuntuguide.org. Once after you add the extra repositiries, updagrade all the libraries. Since many software depends on libraries, upgrading a one library may increase the performance of many software that you are using.

Step 3 : Install some cool software

There are thousands of cool free applications in the open source world. Just look at the applications list on add/remove programs in ubuntu. However, there are some software, such as Adobe Photoshop, Macromedia Dreamweaver and there is no doubt that those are best software on those fields; and unfortunately most of those don’t have a linux version. But there is an incredible piece of software called wine which allows you to run windows applications on the linux environment. Both Photoshop and Dreamweaver works prefectly on wine. One more thing, if you are worring about the games, the answer is don’t worry :D, smile dude… most of the games works in wine but with a little of configuring.

Step 4 : Install the codecs

Since the computer became a toy to the people, the most people used it for listening songs. MP3s became so much so popular and now people are having thousands of mp3s on their hard disks. But if you tried to play a mp3 file, just after installed ubuntu, you’ll be disapointed. It can’t play mp3 files, and it also doesn’t support many other formates. The reason behind this is that most of those formates are not open source neither free, so it violates the ubuntu open source licence. But again, don’t worry, you can simply install those stuff just using one command :
sudo apt-get install gstreamer0.10-ffmpeg gstreamer0.10-gl gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse libxine-extracodecs w32codecs

Step 5 : Make it look nice

In every culture, there are some myths; so do in linux. I heard that lot of people says that linux is not user friendly and you have to do everything in that small black window, typing green letters all over here and there. But the truth is that you can do almost everything in terminal, but it’s not the only choice. You’ll see that yourself, even while when you are installing ubuntu - Just see how user friendly it is. So, however, after you logged into the system, it’s default human theme, which doesn’t look so nice to me ;). The solution is that you have to install a composite manager(beryl/compiz). If you don’t want a composite manager, you can just install someother stuffs like gdesklets, etc. Those will add some fancy effects your desktop.

That’s all about it and you are ready to go………..

SCIM - Installing Wijesekara Sinhala Input in Ubuntu Edgy

Monday, February 26th, 2007

Guys at the LKLUG has done a great job regarding the sinhala support for linux. Not only they designed a new open source font, they have also coded the rendering engine and an input method. To enable sinhala support just follow the guidelines in http://sinhala.linux.lk/.

However, the default input method is a phonetic based one which is really good if you have no experience in sinhala typing. But since I’m pretty much familiar with the wijesekara keyboard, I wanted to go for it. The SCIM itself doesn’t have a wijesekara input driver. First thing I had to do was installing m17n. I just apt-get the package and it worked. Then, I re logged into linux, there were plenty of languages in SCIM. So, I choose m17n-si-wijesekara. It’s fine but there were quite a lot of errors. So, I downloaded the development version of the keyboard from http://cvs.m17n.org/viewc…..b/si-wijesekera-preedit.mim. Then I copied that file to /usr/share/m17n/ and restarting the Xorg got me the nice wijesekara keyboard.

Here are some screenshots :

Chat with Nuwan

Chat with Chathu.. lol..

Another eye candy gadget to my linux box - Installing Cairo-Dock/Gnome-Dock in Ubuntu Edgy 6.10

Wednesday, February 21st, 2007

After install all those eye candy stuff, beryl, gdesklets and everything else, it looked quite nice. Amazingly, there weren’t any memory killers or frequent crashing apps. However, there is no doubt that apple Mac OS was/is the best eye candy OS ever. I don’t have to tell you that one of the most appealing applets is the icon doc at the bottom of the screen. So, since lot of people have their eyes on this, those are ported to many platforms (rather recoded not ported).

Now, It’s time for me to go for something instead of modeling the gnome panel itself. cairo-dock, it’s my choice. Installing cairo-dock quite easy if you have all the development libraries. There is no need for me to explain all the steps there - Just follow this link : http://ubuntuforums.org/showthread.php?t=302570. He has explained it step by step. The installation/compilation will go smoothly.

However even after you compiled the application, unfortunately there will be some errors. The first one is icons. Probably, what you’ll get will be some blank icons. The SVG files inside the tar ball doesn’t show up correctly. You might be already knowing that SVG files are text files. So, what you have to do is open the icons in ‘vi’ or ‘gedit’ or whatever, then just look at the source of the image. Most probably around the bottom of the file, there will be a link to a PNG file. Actually there will be two links linking to the same file. Just change the link to a valid path for a PNG image. Then you are ready to go.Recompile the application, then just run it. Then with any luck you’ll see the icons ;-)

Ah! I forgot to tell you about changing the icons/launchers. You have to change the g_aIcons array. It’s at the beginning of the file. The first parameter is the image, then the Text displayed, and finally the command. Make the display text as short as possible, otherwise those will overlap with each other and it’ll look kinda fuzzy or more to the point ugly.

After all things you have a working cairo-dock. Then the next step is to add it to the startup. I used the gnome session control panel, but however since I’m also loading beryl at the startup, cairo-dock used to crash. So, I removed this from the startup, and changed the beryl loading script(Look at my beryl installation post). So, the final script looks like this.


#!/bin/sh
beryl-manager
sleep 7
beryl&
sleep 7
/media/sda5/Software/cairo/cairo-dock/start-cairo-dock.sh

Now try restarting the Xorg, it’ll work like a pro. Even, it works as it should be, there are few problems regarding this. I usually use Alt + F4 to quit applications. So, when I keep quiting applications, if I pressed one more additional Alt + F4, damn… the cairo-dock will get closed and also if you pressed the “Show Desktop” button the cairo-dock will get minimized.

So, what do we do now? Don’t worry I have a small(small as in very small) hack to get rid of that problem. Open cairo-dock.c in vi(or whatever). Search for “gtk_window_new”(There is only one instance. It’ll be around the line 1180-1190). Change the second parameter of the function to “GTK_WINDOW_POPUP”. So, the line should look like this :


pWindow = gtk_window_new (GTK_WINDOW_POPUP);

Then, recompile the code and restart the dock. And finally you have another cool gadget to impress the people :D.

New ALSA Drivers(1.0.14rc2) for Intel-HDA

Thursday, February 15th, 2007

When I installed linux on my laptop, sound card worked satisfactorily(when compared with most of my friends’ laptops) at the first try. However, compared with windows, the sound volume is very low, and the internal mic is not working.

So, today I downloaded ALSA drivers(1.0.14rc2), compiled and installed. Wow! not only the mic is working, but also the volume level is damn good. Except just compiling and installing drivers I had to append ‘options snd-hda-intel model=laptop’ line to /etc/modprobe.d/alsa-base. Then restarting the computer solved all problems with sound.

Enhance Apt-Get downloading using an external download accelerator(axel/prozilla/aget)

Wednesday, February 14th, 2007

The Apt-Get in debian systems use their own downloading system to download packages from the internet. It supports file resuming and pipelining. However, it doesn’t support downloading using multiple threads, and it won’t allow you to external applications to download.

However, the http downloader is a separate application(/usr/lib/apt/methods/http) from apt-get, and the apt-get spawns the executable to download the files. Those two programs communicate via stdin and stdout. I have written a new downloading application which can communicate with the apt-get. So, I just copied the executable to /usr/lib/apt/methods/http. The new application spawns another program(In my case a shell script) with two arguments; the url and the local file.

So, after all my shell script calls a python script. My program doesn’t call the python script directly because when the python scripts gives some output to stdout/stderr the apt-get program crashes. So, my shell script redirects the all output to /dev/null. Then, the python script will get the url, do a HEAD request, get the file size. If the file size is less than 100K, it’ll execute wget, if not it’ll execute axel. So, the files will get downloaded and apt-get will install the software.

The apt-get update command fetches many small files from the same server. Since the original downloader uses pipelining, it’s much faster. I have to modify my code to do something about pipelining.

Files :

scripts.tar.gz

apt.tar.gz

Netbeans 5.5 with Beryl

Saturday, February 10th, 2007

A solution emerged while doing little bit of browsing. Just have to export a variable :

export AWT_TOOLKIT=MToolkit

Get things working under beryl

Thursday, February 8th, 2007

Beryl is working, nice interface, another way to impress people who are saying/thinking that linux is only a black terminal(small white letters in a black screen in their words). But a small problem, some of the useful programs are not working properly.

VLC - The videos are not played properly. Change your video output redering from Default to X11 Video output. oh! You have to enable Advanced options.

Window Focusing - One annoying thing about beryl was when i started a new application/window, it didn’t get focus. In the beryl settings, General settings change the focus mode to ‘none’.

Netbeans 5.5 - Disable beryl just for now ;-). Haven’t tried anything yet.