_final: prev:
let
  inherit (prev) callPackage;
  inherit (prev) fetchFromGitHub;
in
{

  pcmanfm = prev.pcmanfm.overrideAttrs (_: {
    # remove deskop preferences shortcut
    postInstall = ''
      rm $out/share/applications/pcmanfm-desktop-pref.desktop
    '';
  });
  pww = callPackage ../pkgs/pww { };
  ianny = callPackage ../pkgs/ianny { };

  tpm2-pkcs11 = prev.tpm2-pkcs11.override { fapiSupport = false; };
  # imv = prev.imv.override {
  #   # freeimage is broken
  #   withBackends = [ "libtiff" "libjpeg" "libpng" "librsvg" "libheif" ];
  # };
  zsh-fzf-tab = prev.zsh-fzf-tab.overrideAttrs (_: rec {
    version = "1.1.1";
    src = fetchFromGitHub {
      owner = "Aloxaf";
      repo = "fzf-tab";
      rev = "v${version}";
      sha256 = "sha256-0/YOL1/G2SWncbLNaclSYUz7VyfWu+OB8TYJYm4NYkM=";
    };

  });

  gnome-break-timer = callPackage ../pkgs/gnome-break-timer { };
  jmri = callPackage ../pkgs/jmri { };
  adguardian-term = callPackage ../pkgs/adguardian-term { };
  python312 = prev.python312.override {
    packageOverrides = _final: prev: {
      pysaml2 = prev.pysaml2.overridePythonAttrs (orig: {
        disabledTests =
          orig.disabledTests
          ++ [
            "test_encrypted_response_6"
            "test_validate_cert_chains"
            "test_validate_with_root_cert"
          ];
      });
    };
  };
  matrix-synapse-unwrapped = prev.matrix-synapse-unwrapped.overridePythonAttrs { doCheck = false; }; # todo skip right tests
}