{inputs, ...}: {
  systems = [
    "x86_64-linux"
    "aarch64-darwin"
  ];

  ### Nixpkgs Config ###
  perSystem = {system, ...}: {
    _module.args.pkgs = import inputs.nixpkgs {
      inherit system;

      config = {
        allowUnfree = true;
      };

      # TODO: Move these to custom modules
      overlays = [
        (import ./overlays/firefox-addons {
          inherit (inputs.nixpkgs) lib;
          inherit inputs;
        })
        (import ./overlays/jetbrains.nix {inherit inputs;})
        (import ./overlays/wezterm.nix {inherit inputs;})
      ];
    };
  };
}
