depot/third_party/nixpkgs/pkgs/tools/networking/minidlna/default.nix

51 lines
1.5 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchgit, fetchpatch2, autoreconfHook, ffmpeg, flac, libvorbis, libogg, libid3tag, libexif, libjpeg, sqlite, gettext, nixosTests, zlib }:
let
pname = "minidlna";
version = "1.3.3";
in
stdenv.mkDerivation {
inherit pname version;
src = fetchgit {
url = "https://git.code.sf.net/p/${pname}/git";
rev = "v${builtins.replaceStrings [ "." ] [ "_" ] version}";
hash = "sha256-InsSguoGi1Gp8R/bd4/c16xqRuk0bRsgw7wvcbokgKo=";
};
patches = [
(fetchpatch2 {
url = "https://gitlab.archlinux.org/archlinux/packaging/packages/minidlna/-/raw/affcf0dd1e6f8e33d0ba90b2b0733736fa1aeb71/ffmpeg7.patch";
hash = "sha256-MZFPY4FywoMkZ//fKml6o5J1QG5qiScgtI+KFw5hENw=";
})
];
preConfigure = ''
export makeFlags="INSTALLPREFIX=$out"
'';
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ ffmpeg flac libvorbis libogg libid3tag libexif libjpeg sqlite gettext zlib ];
postInstall = ''
mkdir -p $out/share/man/man{5,8}
cp minidlna.conf.5 $out/share/man/man5
cp minidlnad.8 $out/share/man/man8
'';
passthru.tests = { inherit (nixosTests) minidlna; };
meta = with lib; {
description = "Media server software";
longDescription = ''
MiniDLNA (aka ReadyDLNA) is server software with the aim of being fully
compliant with DLNA/UPnP-AV clients.
'';
homepage = "https://sourceforge.net/projects/minidlna/";
license = licenses.gpl2Only;
platforms = platforms.linux;
mainProgram = "minidlnad";
};
}