Remote CLI access to Ubuntu Linux PC using web browser through authenticated HTTPS

Shellinabox

Lets say you need to access your Ubuntu Linux PC at your home from the other PC behind very restrictive firewall. Lets also say that all you have access to is port 80 (http) and port 443 (https). Lets unlock this situation. Ill show you how to setup Shell In A Box with additional layer of security with Apache2 SSL. Prerequisite for the following guide is that you have fully working Apache 2 installation on you Ubuntu system. If you need instructions for this, you can find them on one of my older posts:

Ubuntu Netbeans and LAMP server with Xdebug as non-root user

In this post I'll mostly give you CLI commands without to much explanation so it is up to you to go trough the procedure and adjust it according to your own setup. Reason for this approach is that the procedure is a bit longer and there could be 10 pages explanation for all of this. Of course I'll give basic explanation for most important commands. So lets get down to business...

Continue reading

Ubuntu Evince with panning hand for scrolling PPA

I use Wacom Bamboo One tablet in my every day computing and I'm very satisfied with its performance when connected to my Ubuntu PC. But one thing I miss when compared to mouse is panning hand. When using tablet it is easiest to scroll by grabbing you document up or down. But, your application must support such "panning hand" GUI interface. With Firefox i use "Grab and Drag" addon and that's about all I need from my browsing experience when it comes to scrolling with my tablet. Most of the other desktop applications do not support "panning hand" and there isn't much we can do about it except grabbing source and getting our hands dirty. IRIE Shinsuke agrees, so he patched Gnome document viewer Evince with "panning hand" patch grabbed from Evince mailing lists. This patch unfortunately hasn't been accepted for inclusion to Evince (don't know why). Fear not, IRIE is here with Ubuntu PPA for Evince with "panning hand". So read on to find out how to obtain you copy:

Continue reading

Font smoothing in Debian 6.0 Squeeze like in Ubuntu

Debian LogoDebian is great operating system, but lets face it: fonts are ugly on any Linux distribution except Ubuntu. That's OK if you ask me. Why? When I hear word "Debian" my first association is reliable server environment, and I guess you don't need fine tuned font smoothing on white on black terminal. What if you really like having Debian on your desktop, and you also like having normal eyesight? Debian user Hadret who describes him self as "Atheist, Debian GNU/Linux user and a philologist to be" has Ubuntu patched versions of libxft2 and libcairo2 - the libraries that control how fonts are looking, in his Debian repository. All you need to do to fix you Debian font situation is to add his Debian repository to your sources list and do regular apt-get update procedure. Here are the necessary commands to do all of that:

su
echo "deb http://hadret.rootnode.net/debian/ unstable main" | tee -a /etc/apt/sources.list
echo "deb-src http://hadret.rootnode.net/debian/ unstable main" | tee -a /etc/apt/sources.list
wget -O - http://hadret.rootnode.net/debian/duckbill.key | apt-key add -
apt-get update
apt-get dist-upgrade

After you restart you PC you fonts should look much better than before and you should also feel much better about using great Debian operating system.

Qt 4 C++ development with Qt 4 Creator or Netbeans on Ubuntu Linux

Qt logoSo you want to develop GUI applications using Qt4 framework on Ubuntu Linux? No problem. Everything what you need is at the tip of you fingertips (official Ubuntu repository to be exact). Here's what you need to do to have Qt 4 Assistant, Qt 4 Designer, Qt 4 Linguist and last but not least important Qt 4 Creator (following is all one line at the terminal):

sudo apt-get install build-essential qt4-designer qtcreator qtcreator-doc qt4-demos qt4-doc qt4-dev-tools libqt4-dev

Now feel free to go to Applications -> Programming -> Qt 4 Creator and do something creative.

Qt 4 C++ Netbeans development

But what if you want to use Netbeans to develop Qt 4 C++ applications? Piece of cake. Follow me... First step is to install Netbeans (you've probably guessed that one).

sudo apt-get install netbeans

Next step is to start Netbeans by going to the Applications -> Programming -> Netbeans. Netbeans is primarily Java IDE so we must make sure that Netbeans has C++ support plugin. So inside Netbeans interface we go to Tools -> Plugins and then switch to "Installed" tab. Here we must make sure that "C/C++" plugin is amongst installed plugins. If not, we switch to "Available plugins" tab and put checkbox next to "C/C++" plugin and click install at the bottom of the dialog. After "C/C++" plugin is installed along with it we acquired Qt 4 project support for Netbeans.

But there is one thing we must do before we start coding. We must tell Netbeans the path to the "qmake-qt4" program necessary to compile Qt 4 applications. We need to go to Tools -> Options and switch to the "C/C++" tab. Next to the "QMake Command" label we must enter path to the "qmake-gt4" program. If you are using Ubuntu Linux operating system you need to enter this path:

/usr/bin/qmake-qt4

Now click OK and find "Hello World" tutorial like this one. So here you go, now you have full blown Qt 4 development environment inside you Ubuntu box.

Webcam settings control on Ubuntu Linux operating system

Logitech QuickCam E3500 Web CamIn the last few years the functionality cost of running Linux operating system shrunk. Good hardware support is one of the last things Linux is lacking when compared to other operating systems. That isn't really Linux community's fault. The hardware manufacturers are to blame for not supporting their own hardware on operating systems other than the proprietary ones. The Linux community developers are actually doing miracles with hardware support and I thank them on doing such a great work. Web cam support was once blind spot on Linux supported hardware list. But today we have Video4Linux video capture framework supported by UVC and GSPCA web cam drivers and most web cams are working happily on our Linux PCs.

It can be very confusing for someone who have just installed Ubuntu to discover that his web cam is working, but that he has no control over settings like brightness, contrast, auto exposure etc. Typical proprietary operating system user would use controls provided by web-cam drivers to adjust these settings. But we're not left out in the cold because Linux community provides means to control our web cams. Let me present applications I use on my Ubuntu PC with my Logitech E3500, Logitech E2500 and many other no-name web cams to adjust their video and other settings.

Continue reading