Website refactored!

I refactored this website last night. Please do not wonder why things are different. Some features are gone, some will come back... I need some time for it but for now I am very excited about the result.

I will update this post from time to time in the next days...

Encryption everywhere!

Yesterday I disabled most insecure and outdated ciphers on my Jabber/XMPP server. Server to server and client to server communication is possible using encryption only. Forward secrecy is supported too. Currently I have only one cipher enabled, that does not support forward secrecy. That's because Pidgin seems not to support the other enabled ciphers. I will switch the XMPP client and will then disable this cipher too. You can see the result off a server check here: score

This website forces HTTPS encryption from now on. All HTTP traffic will be redirected to HTTPS. I do this because I think every website should only be accessible via encypted data protocols.

Some time ago I thought about a concept for providing my public PGP key in a way, that makes it hard to compromise it. I decided to create a GitHub repository only for storing keys. I provide one key there and the same key also locally at You just can compare both keys and if they are the same it is very realistic that these keys are really mine. Take a look at the contact page to get my PGP key.

If you notice any problems, please contact me.

Happy Privacy!

Gentoo Zsh prompt with Git features

Some years ago I posted the Gentoo Zsh prompt to make it available to every Zsh user, not only Gentoo users. Some days ago I wanted some Git features in my shell. I saw some nice prompt features in the last years when using Git so I wanted that too. I didn't found a nice prompt so I decided to write my own. I installed oh-my-zsh and created my own theme. It is based on the original Gentoo Zsh prompt and the Kolo oh-my-zsh theme.

Below you see an example session interacting with a Git repository:


Nice, isn't it?

I love minimal prompts with all the information I need. Since I am using xterm it is compatible to it. I love colors... ;)

You can see here that the [master*] part is not shown when not in a Git managed directory. My $HOME is managed by Git so I always have the repository information available, but not as root.

The code is found in my fork of the oh-my-zsh repository. Take a look under themes/, there is a file named hanez.zsh-theme. You can add this file to any oh-my-zsh installation from the upstream repositories or just add the content of the file to your .zshrc file. I use this fork only for providing my theme.

All of my custom Zsh stuff is found in my $HOME repository at GitHub.

Update: I replaced the dots which are showing the Git status with some asterisk to make the prompt become compatible to more terminal emulators. Some bugs are fixed too.


[Update]: Here is the code:

autoload -Uz vcs_info

zstyle ':vcs_info:*' stagedstr '%F{green}*'
zstyle ':vcs_info:*' unstagedstr '%F{yellow}*'
zstyle ':vcs_info:*' check-for-changes true
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b%F{1}:%F{11}%r'
zstyle ':vcs_info:*' enable git svn
theme_precmd () {
    if [[ -z $(git ls-files --other --exclude-standard 2> /dev/null) ]] {
        zstyle ':vcs_info:*' formats ' [%b%c%u%B%F{green}]'
    } else {
        zstyle ':vcs_info:*' formats ' [%b%c%u%B%F{red}*%F{green}]'

setopt prompt_subst
if [ "$USER" = 'root' ]
PROMPT='%B%F{red}%m%F{green}${vcs_info_msg_0_} %F{blue}%c #%b%f '
PROMPT='%B%F{green}%n@%m${vcs_info_msg_0_} %F{blue}%c #%b%f '
autoload -U add-zsh-hook
add-zsh-hook precmd  theme_precmd