{
  config
  ,pkgs
  ,ownLib
}:

let
  enLocale = "en_US.utf8";
  deLocale = "de_DE.utf8";

in {

    language = {
      # English

      base = "${enLocale}";
      ctype = "${enLocale}";
      numeric = "${enLocale}";
      collate = "${enLocale}";
      messages = "${enLocale}";

      # German
      time = "${deLocale}";
      monetary = "${deLocale}";
      paper = "${deLocale}";
      name = "${deLocale}";
      address = "${deLocale}";
      telephone = "${deLocale}";
      measurement = "${deLocale}";
    };

    keyboard = {
      layout = "us";
      model = "pc105";
      options = [
        "numpad:mac"
        "ctrl:nocaps"
        "compose:ralt"
      ];
    };

    pointerCursor = {
      package = pkgs.qogir-icon-theme;
      name = "Qogir-dark";
      size = 16;
      x11.enable = true;
      gtk.enable = true;
    };

    sessionPath = [
      "$HOME/.local/bin"
    ];

    sessionVariables = {
      TERMINAL = "st";
      EDITOR = "nvim";
      SHELL = "zsh";

      # Configure look up paths to not clutter home folder but follow XDG

      ERRFILE = "${config.xdg.cacheHome}/X11/xsession-errors";

      MYSQL_HISTFILE = "${config.xdg.dataHome}/mysql_history";
      LESSHISTFILE = "${config.xdg.cacheHome}/less/history";

      BUNDLE_USER_CONFIG = "${config.xdg.configHome}/bundle";
      BUNDLE_USER_CACHE = "${config.xdg.cacheHome}/bundle";
      BUNDLE_USER_PLUGIN = "${config.xdg.dataHome}/bundle";

      ICEAUTHORITY = "${config.xdg.cacheHome}/ICEauthority";
      DVDCSS_CACHE = "${config.xdg.dataHome}/dvdcss";
      DOCKER_CONFIG = "${config.xdg.configHome}/docker";

      # Program specific vars
      SSH_ASKPASS = ""; # Unset tool to ask for password, I prefer the cli
      BORG_PASSCOMMAND = "${pkgs.libsecret}/bin/secret-tool lookup account borg-passphrase";
      LSCOLORS = "HxGxDxDxbxDxDxababcxcx";
      LS_COLORS = "di=1;37:ln=1;36:so=1;33:pi=1;33:ex=31:bd=1;33:cd=1;33:su=30;41:sg=30;41:tw=32:ow=32";
      GREP_COLOR = "0;30;44";
      PHAN_COLOR_SCHEME = "code";

      # Custom vars

      TYPO3_CONTEXT = "Development/dsiepmann";
      TYPO3_ADDITIONAL_CONFIGURATION = "${config.xdg.dataHome}/typo3-configuration/AdditionalConfiguration.inc.php";
    } // (if ownLib.onHikari {} then {
    } else {
    });

    shellAliases = {
      ll = "ls -laphv --color=auto";

      # Open in main view with all references.
      tigr = "tig refs";
      # Open in main view with ALL commits, not only current branch tree.
      tiga = "tig --all --show-signature";

      # Start a nix-shell with zsh instead of bash
      nsz = "nix-shell --run zsh";

      # Tmux outside tmux.
      ta = "tmux attach";
      tc = "tmux new-session -s ";

      t3Push = "git push origin HEAD:refs/for/main";
    };

    enableNixpkgsReleaseCheck = true;
}
