{ pkgs, ... }: {
  imports = [ ./users ];

  ## Optimizations

  # Clean /tmp
  boot.tmp.cleanOnBoot = true;

  # Link identical files
  nix.settings.auto-optimise-store = true;

  # Limit journald logs
  services.journald.extraConfig = ''
    SystemMaxUse=100M
    MaxFileSec=1month
  '';

  # Garbage collection
  nix.gc = {
    automatic = true;
    dates = "weekly";
    options = "--delete-older-than 30d";
  };

  ## Other

  # Flakes
  nix.settings.experimental-features = [ "nix-command" "flakes" ];

  # Enable fish (needed for nix completions)
  programs.fish.enable = true;

  # Fix terminfo
  environment.enableAllTerminfo = true;
  environment.variables.COLORTERM = "truecolor";

  # Packages used on all systems
  environment.systemPackages = with pkgs; [
    ccase
    comma
    dogdns
    du-dust
    git
    imagemagick
    killall
    mtr
    openssl
    rsync
    sqlite-interactive
    wget
    xclip
  ];

  # 🥺
  # security.please.enable = true;

  ## Locale/Timezone

  time.timeZone = "Europe/Berlin";
  i18n.defaultLocale = "en_US.UTF-8";

  i18n.extraLocaleSettings = {
    LC_ADDRESS = "de_DE.UTF-8";
    LC_IDENTIFICATION = "de_DE.UTF-8";
    LC_MEASUREMENT = "de_DE.UTF-8";
    LC_MONETARY = "de_DE.UTF-8";
    LC_NAME = "de_DE.UTF-8";
    LC_NUMERIC = "de_DE.UTF-8";
    LC_PAPER = "de_DE.UTF-8";
    LC_TELEPHONE = "de_DE.UTF-8";
    LC_TIME = "de_DE.UTF-8";
  };

  # Configure keymap in X11
  services.xserver = {
    layout = "us";
    xkbVariant = "";
  };
}
