nixpkgs/pkgs/by-name/mi/minidlna/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

51 lines
1.5 KiB
Nix

{ 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";
};
}