When trying to run a graphical program under a different user than the X server, this is not permitted on a properly configured system. often xhost is used to allow the local host or a limited number of remote hosts access to the local X server. unfortunately, this mechanism does not differentiate between users and introduces a security risk because all users on such a machine are allowed to use the X server.

Subtract the Content of Two Files

Have you ever wanted to remove the content of one file from the content of another file linewise? I have been in the situation several times.

Pipes Over SSH

Instead of first creating a tarball and then using scp to transfer it to another host, you could simply:

Sorting Lists using Perl

Unfortunately, the default perl sort algorithm was changed to Mergesort (formerly Quicksort) which does not provide in-place sorting as Quicksort does. This fact and some obscure stupidity in the implementation causes the space requirements to be much higher than the size of the original list.

Reverting in Subversion Repositories

It is sometimes useful to revert to the revision of a file that has already been checked in:

Package Cleanup

After several months of excessive usage of my Gentoo desktop, a pile of package is installed some of which I do not need or want anymore. Unfortunately, it is not save to unmerge an arbitrary package because it might damage another package that depends on the first. Therefore, I needed some magic to compile a list of leafs in the dependency tree to decide which packages can be unmerge safely.

Job Control

Bash’s job control facilities:

Bash Substitutions

Bash supports various constructs for substituting contents of variables.

XFree: Change Keymap

To change the keymap of your X server while it is running use the following command:

Various Bash Hints

Various hints that do not justify a dedicated node: