Overwrite the package of a server with a specific version

Hello,
I’m writing a thesis with NixOS and I need very specifc version of package. I found this nixpkgs version lazamar which is great when you simply have to install the package, but here the package I want is behind a service

  services.zoneminder = {
    enable = true;
    openFirewall = true;
    port = 8095;
    database = {
      createLocally = true;
      username = "zoneminder";
    };
  };

Sadly there isn’t a proporty “pacakge” as there might be sometimes MyNixOS - zoneminder.

I tried to install the package on the side with
environment.systemPackages = with pkgs; [ myZoneminder ]; and

  pkgs =
    import
      (builtins.fetchTarball {
        url = "https://github.com/NixOS/nixpkgs/archive/7f300d5b5324d1769594e8d1752b4335333156ab.tar.gz";
        sha256 = "0w5afwq9drw58hnj063dw39kj18gvf5xpq1dbw5ys3dm9l6qniq9";
      })
      {
        config = config.nixpkgs.config;
        system = "x86_64-linux";
      };
  myZoneminder = pkgs.zoneminder;

But it doesn’t influence the package used in services.zoneminder

Is there a simple way to overwrite the package of a service with a specifc tarball ?

I actually found the perfect answer, with an overlay like this

  overlay-zoneminder = final: prev: {
    zoneminder = myZoneminder;
  };

then
nixpkgs.overlays = [ overlay-zoneminder ];