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:

Port Forwarding

The ssh client and server are able to forward local or remote ports through the tunnel and resume delivery on the other side. Port forwardings are either local or remote and are configured on the command line of the client or inside the SSH client configuration:

Background SSH

SSH usually operates in the foreground where it provides an interactive login or displays the output of a remote command (see remote commands). Although using the forwarding services (see port forwarding and agent forwarding) requires successful authentication, it does not have to result in a shell.

Multi-Hop Connections

Many networks are protected by a firewall that does not allow host on the outside to connect to those on the inside. Are you annoyed by connecting to the firewall first and then logging in to your favourite host from there?