{
  config,
  lib,
  pkgs,
  inputs',
  ...
}: {
  home.packages = with pkgs; [
    # Communications
    webcord-vencord
    protonmail-desktop
    signal-desktop
    caprine
    # cinny-desktop
    # Utility
    protonvpn-gui
    # Browser
    inputs'.nixpkgs-unstable.legacyPackages.firefoxpwa
    ungoogled-chromium
  ];

  programs.firefox = {
    enable = true;
    nativeMessagingHosts = with pkgs; [
      kdePackages.plasma-browser-integration
      inputs'.nixpkgs-unstable.legacyPackages.firefoxpwa
    ];
  };

  services.syncthing = {
    enable = true;
    tray = {
      enable = true;
    };
  };

  # Setup foot as our terminal emulator
  programs.foot = {
    enable = true;
    server.enable = true;
    settings = {
      main = {
        font = "JetBrainsMono NF:size=8";
        dpi-aware = "yes";
      };
    };
  };

  # Refresh the KDE applications cache, this really should be in upstream home
  # manager, but its not for some reason
  home.activation = {
    kdeApplicationCache = lib.hm.dag.entryAfter ["installPackages"] ''
      run rm ~/.cache/ksycoca6_* -rf
      run ${pkgs.kdePackages.kservice}/bin/kbuildsycoca6
    '';
  };
}