# This file defines overlays
{ inputs, ... }: {
  # This one brings our custom packages from the 'pkgs' directory
  additions = final: _prev: import ../pkgs final.pkgs;

  # This one contains whatever you want to overlay
  # You can change versions, add patches, set compilation flags, anything really.
  # https://nixos.wiki/wiki/Overlays
  # modifications = final: prev: {
  #   zed-editor = final.callPackage prev.zed-editor.override {
  #     rustPlatform = final.rustPlatform // {
  #       buildRustPackage = args:
  #         final.rustPlatform.buildRustPackage (args // {
  #           patches =
  #             (args.patches or [ ] ++ [ ./zed-use-custom-cosmic-text.patch ]);
  #           cargoLock = {
  #             lockFile = ./zed.Cargo.lock;
  #             outputHashes = args.cargoLock.outputHashes // {
  #               "cosmic-text-0.11.2" =
  #                 "sha256-ld9mrvtZIEftenn1D5IuXFQikJU2GAil6MCsrIh9o14=";
  #             };
  #           };
  #         });
  #     };
  #   };
  # };

  # When applied, the unstable nixpkgs set (declared in the flake inputs) will
  # be accessible through 'pkgs.unstable'
  unstable-packages = final: _prev: {
    unstable = import inputs.nixpkgs-unstable {
      system = final.system;
      config.allowUnfree = true;
    };
  };
}