There’s a lot of criticism out there for the Unity Desktop Environment. Strangely I can’t echo the same sentiments. I quite like using Unity (mind you not Ubuntu). Here are a few reasons why and why not.

The Unity Launcher: I have always loved launchers. Back in the days, when I would change desktop environments every second day – fluxbox, gnome, kde, wmaker, etc, one thing was constant. I had gnome-panel (&) start from my xinitrc irrespective of what distribution I used. Also I have never been a fan of taskbars. The Unity launcher marries the traditional launcher with a highly usable taskbar. It had some usability issues when Ubuntu initially switched to Unity, but it’s almost perfect now with AppIndicator Support. I can have upto 15 applications open at the same time and it’s still a breeze to manage them.Continue reading

Kmscon is a simple terminal emulator based on linux kernel mode setting (KMS). It is an attempt to replace the in-kernel VT implementation with a userspace console. It is similar to the in-kernel terminal-emulator and is based on DRM. Listed below is the procedure to install kmscon in ubuntu.

sudo apt-get install libgles2-mesa-dev libgbm-dev libegl1-mesa-dev libdrm-dev libglib2.0-dev libfreetype6-dev
git clone https://github.com/dvdhrm/kmscon.git
./autogen.sh
make
sudo ./kmscon --switchvt

The last command will start kmscon on /dev/tty8.

I haven’t been as excited about a new announcement in the Linux world since Google came out with Android. Canonical just announced ‘Ubuntu for Android’ – its a release that will enable a full desktop computing experience on a docked Android smartphone.

It will work like a normal Android phone when not docked, but once its docked, you can have the complete Ubuntu experience. This means common storage – contacts, bookmarks, documents. And it can handle calls and smses when docked!Continue reading

Ubuntu Natty onwards, the default desktop manager is Unity. Unity has disabled the default system tray, and applications which wish to show up on the Unity panel should support Ubuntu Application Indicators. Unfortunately Android Remote Notifier doesn’t support App Indicators yet and hence doesn’t show up in the Unity panel on being executed. Luckily for us, there’s a way to get around this issue.Continue reading

If you’re like me, you’ll try every package in the Ubuntu Repository. I just love to try different applications. But then I end up having zillions of applications on my laptop and hardly any disk place. Thats when I start pruning. But for that I need to know what to prune. Thats what the following script does. It lists and sorts all the installed deb packages according to size.

#!/bin/bash
perl -ne '$pkg=$1 if m/^Package: (.*)/; print "$1\t$pkg\n" if m/^Installed-Size: (.*)/;' < /var/lib/dpkg/status | sort -rn | less

Sometime back I added the final ruby 1.9.2 build for Ubuntu Lucid. I have recompiled the same for Maverick today and have uploaded it to the ppa. Along with the ruby1.9.2 packages I have uploaded the ruby-default package too. This setups the update-alternatives system for different ruby versions. Read more about it here.Continue reading

This has been long overdue. I just updated my ruby 1.9.2 ppa to the final ruby 1.9.2 release. I borrowed the patches from the upstream maverick release and added a couple more patches to get it work on Ubuntu Lucid. The patching system has now changed from dpatch to quilt. Please download it and enjoy it and let me know if things work fine. I checked my rails applications and they all are working fine with the new release. Here are the instructions to use the Ruby 1.9.2 PPA.Continue reading

Some time ago, I wrote a post to show how to modify terminator to enable easy google searching. However I have trumped myself and have an even better solution now. Google Search from any application. Modus Operandi is: Highlight Text => Press Key Combination => Script picks up the query from the clipboard => Formats the query and opens the URL in your defualt browser.

Lets start with the script. Copy-Paste the below code into a file (Lets name it google_search).

#!/bin/bash
QUERY=`xclip -o | tr ' ' '+'`  #sanitize the query, change spaces to the plus sign
QUERY='"'$QUERY'"'    #put quotes around the query, exact search

if [ -x ~/bin/open_browser.sh ]; then
  open_browser.sh http://www.google.com/webhp?hl=en#hl=en\&q=$QUERY
else
  x-www-browser http://www.google.com/webhp?hl=en#hl=en\&q=$QUERY
fi

Copy the file to the bin directory under your home directory. Make the script executable.

cp google_search ~/bin
chmod +x ~/bin/google_search

Now lets take care of a few dependencies.

Install xclip. This utility is used to interact with the clipboard.

sudo aptitude install xclip

Update x-www-browser. See this tutorial for more instructions.

sudo update-alternatives --config x-www-browser

Now lets create a keyboard shortcut for the script we saved earlier.

Tutorial for KDE Users
Tutorial for Gnome Users

Thats it. Now you can highlight any text and press the keyboard shortcut you created in the last step and a google search for the selected phrase will open up in your default browser.

This script also supports the open_browser.sh script. Look here for more info.
When you press the keyboard combination, the browser may or may not become the active window. That depends on the focus model. However if you check your browser, the google search should be open in a new tab

KDE and Gnome provide GUI to setup the default browser in Ubuntu. However for the default browser settings to be accessible in bash scripts, a further step is required. That is to setup x-www-browser.

Set the default x-www-browser using the update-alternatives command.

sudo update-alternatives --config x-www-browser

Enter the number corresponding to the browser you want as your default browser.

default-x-www-browser