nixpkgs/pkgs/by-name/je/jellyfin-ffmpeg/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

44 lines
1.1 KiB
Nix

{ ffmpeg_7-full
, fetchFromGitHub
, fetchpatch
, lib
}:
let
version = "7.0.2-5";
in
(ffmpeg_7-full.override {
inherit version; # Important! This sets the ABI.
source = fetchFromGitHub {
owner = "jellyfin";
repo = "jellyfin-ffmpeg";
rev = "v${version}";
hash = "sha256-cqyXQNx65eLEumOoSCucNpAqShMhiPqzsKc/GjKKQOA=";
};
}).overrideAttrs (old: {
pname = "jellyfin-ffmpeg";
configureFlags = old.configureFlags ++ [
"--extra-version=Jellyfin"
"--disable-ptx-compression" # https://github.com/jellyfin/jellyfin/issues/7944#issuecomment-1156880067
];
postPatch = ''
for file in $(cat debian/patches/series); do
patch -p1 < debian/patches/$file
done
${old.postPatch or ""}
'';
meta = {
inherit (old.meta) license mainProgram;
changelog = "https://github.com/jellyfin/jellyfin-ffmpeg/releases/tag/v${version}";
description = "${old.meta.description} (Jellyfin fork)";
homepage = "https://github.com/jellyfin/jellyfin-ffmpeg";
maintainers = with lib.maintainers; [ justinas ];
pkgConfigModules = [ "libavutil" ];
};
})