Ubuntu 10.10 (Maverick) installation: 3rd Party Software and Codecs automatic download feature

Ubuntu 10.10 (Maverick Meerkat) has been released! Hopefully some of you have already downloaded the ISO file and installed it on your computer. I’ve yet to install Ubuntu Maverick Meerkat in my computer because I prefer to use the 10.04 Long term support (LTS) release on my file server.

However, I manage to test out the Maverick Meerkat installation on my virtual machine, where I found two things of note. First is that the installer and installation step has been simplified with fewer dialogs and secondly, the installer presents a choice dialog, which enable users to download 3rd party software and codecs to enhance their experience while using Ubuntu. In my opinion, this is probably one of the best decision made by Canonical, which enables new users to download proprietary codecs without distributing it on the installation CD.

ubuntu maverick installation cd

As long as the users are connected to a high speed internet connection, the installer is able to download 3rd party codecs to enable users to enjoy it.

Speed up internet access and browsing in Ubuntu by disabling IPV6

This post is related to “Solving Slow Firefox Web Browsing and Internet app problem“.

This problem is very noticeable in Ubuntu 9.10 (Lucid) onwards and it affects Ubuntu 10.04 (Karmic) too at a certain degree. Even my friend, piju the Ubuntu members also experienced this problem.

To remedy this, another suggested solution (from Brian Yang) is to disable IPV6 completely from Ubuntu.

To do that, you need to add the following lines to /etc/sysctl.conf file


#disable IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Then you have to reboot, and you can check whether IPv6 has been disabled by running this command:
cat /proc/sys/net/ipv6/conf/all/disable_ipv6

It should display : 1

Note that this “bug” cause internet experience on Ubuntu seems to be perceived as “slower” than the windows machine as it causes delay on DNS lookup.

p/s: I know we should migrate to IPv6 by now, and Ubuntu did a good job, but for the sake of productivity and some users are complaining about the comparison between the internet surfing speed between Ubuntu and other operating system, I felt that something need to done, hence the posts.

Solving Slow Firefox Web Browsing and Internet app problem on Ubuntu Karmic 9.10

Though this post might be dated as it concerns about Ubuntu Karmic Koala release (9.10), but nevertheless the problem can be considered as annoying and serious.

Bug Symptom
People who encountered this bug may report that web browsing speed is relatively slow compared to the internet speed as tested with http://speedtest.net, and some application which uses internet is behaving like it was having problems with network connection.

Actual problem
According to Ubuntu bug report #417757, this problem is caused by DNS resolver which attempts to request IPV6 AAAA record first. The problem is noticeable on application which supports IPV6, where the getaddrinfo() will ask for AAAA record which the DNS resolver does not understand. This will cause the DNS resolver to reject the request and caused a time out on the client side, which in turn cause the delay.

For a web browsing application like Mozilla Firefox, an average website would normally take about 4-10 DNS request and hence the effect would be more noticeable on web browser, making it look like the network is having problems with slow internet connections.

Solutions
The solution for this problem is to install a local DNS resolver (sudo apt-get install pdns-resolver) and to edit the “/etc/resolve.conf” file, changing the ‘nameserver’ parameter to 127.0.0.1

How to use rsync to backup and synchronize files to USB drive

Portable USB drive (sometimes called pendrive) has gained popularity as a medium for storing documents. Computer users would work on the files that they store on the usb drive and occasionally would copy them on their computer, or vice versa.

However this would cause problems if there’s a lot of files being worked on and transfered between usb drive and computers. Valuable time might be lost solely for identifying which of the files are more recent and need to be updated.

Fortunately there’s ‘rsync’, a tool which can be used to synchronize files between the computer and usb drive. Assuming you use Debian or Ubuntu, you only need to start ‘synaptic’ and select ‘rsync’ package. Once installed, start the terminal application and you can begin synchronizing the files using this command


$ rsync -r -vv /home/username/Documents/ /media/your_usb_drive

The general format of rsync command is :

$ rsync -r -vv <local document directory> <remote backup directory>

rsync only updates file which has been changed and would save time and precious harddisk space from maintaining duplicate files.

A Windows version is also available at : http://www.rsync.net/resources/binaries/cwRsync_3.1.0_Installer.zip

Quick Way to upgrade to Ubuntu 10.10 Maverick Meerkat

Ubuntu 10.10 Maverick Meerkat release is just around the corner!

Here’s how to upgrade Ubuntu 10.10 Maverick Meerkat using bash shell

sudo sed -i 's/lucid/maverick/g' /etc/apt/sources.list && sudo aptitude update && sudo aptitude dist-upgrade

sudo aptitude install update-manager-core
sudo do-release-upgrade -d

That’s it! Happy upgrading!

How to make JavaME .jar files downloadable from Apache Web Server

Mobile application developers may have realize that one of the best (and recommended) way to distribute their JavaME/J2ME application is by hosting it on a website. This makes it easier for potential users to navigate and download the .jad or .jar files from their phone browsers and to execute it directly.

However, some web servers are not configured to handle .jar / .jad file requests, eventually leading to failed install response received by the mobile users.

To remedy this, .jad / .jar files need to be associated with the correct MIME type. In Apache, you can do this by creating ‘.htaccess’ file in your web directory, and inserting these lines :

# JavaME
AddType text/vnd.sun.j2me.app-descriptor .jad
AddType application/java-archive .jar

Afterwards, safe the file. The web server should behave accordingly when requests are made to either of these files. For other web servers, please refer to their respective manual or online-help on how to change document MIME type.