Solved.
{ pkgs, lib, system, inputs, ... }:
let
overlay-yt-dlp = final: prev: {
yt-dlp = prev.yt-dlp.overrideAttrs {
src = pkgs.fetchFromGitHub {
owner = "yt-dlp";
repo = "yt-dlp";
rev = "8e15177b4113c355989881e4e030f695a9b59c3a";
hash = "sha256-iBk672ocjUZi+VTAegcC5GWaeg+ZleVcuYzMkp1i5aI=";
};
};
};
overlay-unstable = final: prev: {
# import input from flake.nix
unstable = import inputs.nixpkgs-unstable {
inherit system;
overlays = [ overlay-yt-dlp ];
};
};
in {
nixpkgs.overlays = [ overlay-unstable ];
environment.systemPackages = with pkgs; [
(unstable.yt-dlp.override { ffmpeg = pkgs.unstable.ffmpeg_7; })
];
}