Essential Gnome Shell Extensions for Gnome 3 Users

Gnome Shell has a clean design. But many users want to get more from the desktop environment. Gnome 3’s extension system can help users customize the Gnome Shell’s look greatly. In this post, we summarize 6 extensions we considered essential to make Gnome Shell great. AlternateTab ∞ Make Alt-Tab “classic” instead of grouping windows by application. It substitutes Alt-Tab with a window based switcher. » Read more

Notes for Beginners of Software Development on Linux

Linux is a great platform for software development targeting servers or backends. In general, working on Linux is very productive. The problem that beginners on Linux face is the the learning curve is steep at the beginning. But believe me, after you get through the initial green steep learning step as in the figure below with some hard work, you will feel like working on a rocket in the yellow part. » Read more

Extending a Mounted Ext4 File System on LVM in Linux

LVM is a great tool to manage hard disks on Linux—you can abstract the hard drives away and manage logical volumes from volume groups, you can dynamically add or remove hard drives while the file systems on the logical volumes need not to backed up and recovered, and you may create many snapshots of the logical volumes as you like. In this post, I will introduce how to extend a mounted ext4 file system on a LVM logical volume on Linux. » Read more

Keyboard Key Mapping for Emacs: Evil Mode and Rearranging Alt, Ctrl and Win Keys

Ctrl keys are important and possibly most frequently used in Emacs. However, it is painful on today’s common PC keyboards since Ctrl keys are usually in the corner of the keyboard main area. Why the key mappings in Emacs are designed like this? After it was designed, Emacs was commonly on the Lisp Machine keyboards with Ctrl keys closer to the space bar as show below (src. » Read more

Creating Fedora 20 Domain-U on Fedora 20 Domain-0

In this post, creating a file-backed virtual block device (VBD) and installing Fedora 20 in the Xen DomU via internet will be introduced. This domain is created on a Fedora 20 Dom0 as introduced in Installing Xen on Fedora 20 as Domain-0. For better performance, you may consider using LVM backed VM. Create file-backed VBD The actual space of VBD will be the amount of disk the virtual machine used. » Read more

Installing Xen on Fedora 20 as Domain-0

I ever introduced Installing Xen on Fedora as Domain-0 (Fedora 17) as the first try to use the xen package delivered from Fedora and get away from manually compiling Xen and patching the kernel. In this post, I introduce installing Xen Dom0 on Fedora 20. Installing Xen First, install the xen pacakges: # yum install xen The Linux kernel is already ready to run in Domain-0 with the pv_ops technology enabled. » Read more

Improving Fedora Font Rendering with Open Software and Fonts Only

It is continuously discussed that some Fedora users do not like the font rendering in Fedora Linux and there are solutions to improve the font rendering with potentially non-free or non-licensed software/fonts. However, with only the open source fonts and software and little tricks, the font rendering on Fedora can be quite good. In this post, I will introduce my method to improve Fedora’s font rendering with open software and fonts only. » Read more

Git through SSH Tunnel as Proxy

git is a great tool and it is common to have a git server over SSH possibly managed by gitolite. However, there are situations that we can not directly connect to the git server but be able to SSH to another node that can connect to the git server. The git server may allow only internal connections because of security. With the node that we can SSH to, we can still use the git server “directly” by setting up a SSH tunnel as a proxy for the git connection. » Read more

Improving ssh/scp Performance by Choosing Suitable Ciphers

Update on Oct. 9, 2014: You should be aware of the possible security problems of blowfish and it is suggested not to be used. Instead, you may consider ChaCha20 as suggested by Tony Arcieri. To use this with OpenSSH, you need to specify the Ciphers in your *.ssh/config* files as chacha20-poly1305@openssh.com possibly with another default one since only newer vesion of OpenSSH supports it. » Read more

Making Emacs Startup Faster

I use Emacs in terminals and start/close Emacs frequently as needed like in a file checking-editing-closing loop. However, Emacs seems take some time to start up especially some heavy modes are used. How to make Emacs start up faster? (If you just want the solution/script first, find the command in the summary section.) My solution is to make use of the server/client feature of Emacs ∞ This is how it works. » Read more

How to Set Up A Gitolite Git Server – A Ten-Minute Tutorial

I ever introduced seting up git server using SSH or gitosis. However, gitolite is the way to go for managing git servers if you want an lightweight authentication layer. gitolite provides many very usefull features which can control each user’s right on each branch. I set up one gitolite git server and am very happy with it. In this post, let’s look at how to set up one gitolite git server. » Read more

Infrastructure Software For Fedora

Fedora is a popular distro supported by the RedHat Corporation. This article recommends you some infrastructure software and how to install them in details. Minimize and Maximize window ∞ 1, Install software gnome-tweak-tool # yum install gnome-tweak-tool 2, Start gnome-tweak-tool and set minimizing and maximizing functions as follows. 1.png 2.png Actually, gnome-tweak-tool has more functions than what I say above. You can install others yourself. » Read more

Connecting to Remote Servers by VNC on Windows

Software you will need 1, Putty 2, Real VNC viewer 3, twm (lightweight desktop). On fedora (centos, redhat): sudo yum install twm (on other distros, you may need other commands, or download source code and install it). Specific steps ∞ 1, Enter your Host name and port in putty. 1_9.jpg 2, Set port forwarding in putty Tunnels. 1_7.jpg 3, Start vncserver in the server side. » Read more

Vim + cgdb

I begin to use vim for programming. I like the tools that focus on one function. I used to use emacs. But I think I like vim more. For debugging, I use gdb. But I use the front end cgdb. I can see the codes with the cursor when debugging. I can use F8 for next instead of n + enter. » Read more

Emacs Tips and Howtos

With Emacs, I feel happy. I love the rich functions of Emacs, such as compiling, quickly jumping to the lines with compilation error and debugging with gdb, and more. I ever wrote small tips posts about Emacs before. But it is a good idea to put them together and keep adding new ones. Here comes this post on Emacs tip and howtos, more or less like a cheat sheet and FAQ. » Read more

Configuring Mouse Cursor Style for QT Applications in GNOME / MATE Desktop

QT and GTK applications use different settings for cursor styles. This makes the mouse cursor styles for QT applications in the GNOME / MATE desktop environment or GTK applications in the KDE desktop environment look different with other programs. In the post Configuring Mouse Cursor Style for GTK Applications in KDE Desktop, we talked about how to configure the mouse cursor style for GTK applications in the KDE desktop environment. » Read more

Installing Fedora 17 PV Domain-U on Xen with PXE Booting

An introduction to the general method of installing Domain-U on Xen is introduced here: Setting Up Stable Xen DomU with Fedora: Unmodified Fedora 12 on top of Xenified Fedora 12 Dom0 with Xen (this is a general introduction, some details are changed, such as ‘xl’ replacing ‘xm’, LVM backing the disk for higher performance. But the general process is the same). » Read more

Changing Systemd Runlevel on Fedora Linux – The Manual Way

Fedora Linux starts to use systemd to manage system service. The /etc/inittab is no longer used by systemd. The old method of editing /etc/inittab to change system runlevel does not work anymore. This post introduces a “manual” way to change the boot levels. For the general method, please check How to Change Systemd Boot Target on Linux. systemd uses ‘targets’ instead of runlevels. » Read more

Setting MATE as Default Desktop Environment for startx on Fedora

I ever discussed Starting KDE from Command Line by startx for KDE and GNOME. Recently, I installed MATE desktop on Fedora 17 and am very happy with it—dear, Gnome 2 is back. However, I checked the /etc/X11/xinit/Xclients script which is called by ‘startx’ and it only includes ‘startkde’ and ‘gnome-session’ without support to MATE. But that’s find, let’s configure it by ourselves. » Read more