nixpkgs/pkgs/applications/video/go2tv/default.nix
Fabian Affolter 9376ef9de7
go2tv: refactor
- add changelog to meta
2024-05-15 13:20:14 +02:00

61 lines
1.3 KiB
Nix

{ lib
, stdenv
, buildGoModule
, fetchFromGitHub
, Carbon
, Cocoa
, Kernel
, UserNotifications
, xorg
, libglvnd
, pkg-config
, withGui ? true
}:
buildGoModule rec {
pname = "go2tv" + lib.optionalString (!withGui) "-lite";
version = "1.16.1";
src = fetchFromGitHub {
owner = "alexballas";
repo = "go2tv";
rev = "refs/tags/v${version}";
hash = "sha256-7m5GikrdcrJyl+KYuSk1JWLW2SsHOcBJNJuq2BahxHc=";
};
vendorHash = "sha256-na79rF/9o+s6E4i08Ocs6u98IABc19sTGFvjI6yeJFo=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [
xorg.libX11
xorg.libXcursor
xorg.libXrandr
xorg.libXinerama
xorg.libXi
xorg.libXext
xorg.libXxf86vm
libglvnd
] ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa Kernel UserNotifications ];
ldflags = [
"-s"
"-w"
"-linkmode=external"
];
# conditionally build with GUI or not (go2tv or go2tv-lite sub-packages)
subPackages = [ "cmd/${pname}" ];
doCheck = false;
meta = with lib; {
description = "Cast media files to UPnP/DLNA Media Renderers and Smart TVs";
homepage = "https://github.com/alexballas/go2tv";
changelog = "https://github.com/alexballas/go2tv/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ gdamjan ];
mainProgram = "go2tv";
};
}