{...}: {
  environment = {
    sessionVariables = {
      XDG_CACHE_HOME = "\${HOME}/.cache";
      XDG_CONFIG_HOME = "\${HOME}/.config";
      XDG_BIN_HOME = "\${HOME}/.local/bin";
      XDG_DATA_HOME = "\${HOME}/.local/share";
      XDG_STATE_HOME = "\${HOME}/.local/state";
      ZDOTDIR = "\${HOME}/.config/zsh";
      CARGO_HOME = "\${HOME}/.local/share/cargo";
      ANDROID_HOME = "\${HOME}/.local/share/android";
      ANSIBLE_HOME = "\${HOME}/.local/share/ansible";
      #_JAVA_OPTIONS	= '-Djava.util.prefs.userRoot="\${XDG_CONFIG_HOME}/java"';
      WINEPREFIX = "\${HOME}/.local/share/wine";
      GNUPGHOME = "\${HOME}/.local/share/gnupg";
      GRADLE_USER_HOME = "\${HOME}/.local/share/gradle";
      GTK2_RC_FILES = "\${HOME}/.config/gtk-2.0/gtkrc";
      EDITOR = "nvim";
      GOPATH = "\${HOME}/.local/share/go";
      XCOMPOSECACHE = "\${HOME}/.cache/X11/xcompose";
      CDPATH = ".:\${HOME}:\${HOME}/repos/:\${HOME}/srv";
      NIXOS_OZONE_WL = "1"; # wayland for electron apps

      #PYTHONSTARTUP="/etc/python/pythonrc";

      PATH = [
        "\${XDG_BIN_HOME}"
      ];
    };
    etc.crypttab = {
      enable = true;
      text = ''
        luks-f4ba9aae-e34f-4a72-98ab-88787f7c1986 UUID=ec3b114-502c-425f-b59b-4ef8ffcf7e99 none tpm2-device=auto,noauto
      '';
    };
  };
}