mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-18 03:34:58 +00:00
ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
59 lines
1.5 KiB
Nix
59 lines
1.5 KiB
Nix
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
|
|
|
|
buildGoModule rec {
|
|
pname = "dyff";
|
|
version = "1.7.1";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "homeport";
|
|
repo = "dyff";
|
|
rev = "v${version}";
|
|
sha256 = "sha256-4jW8KJqdhrx79Q5ioyMGOlmLosTEkEIrdBwMjfiIcsY=";
|
|
};
|
|
|
|
vendorHash = "sha256-JhjngBZK3vWlKzCCkTWJf/VrBXUW6T4FcUivn5CMBjE=";
|
|
|
|
subPackages = [
|
|
"cmd/dyff"
|
|
"pkg/dyff"
|
|
"internal/cmd"
|
|
];
|
|
|
|
nativeBuildInputs = [ installShellFiles ];
|
|
|
|
# test fails with the injected version
|
|
postPatch = ''
|
|
substituteInPlace internal/cmd/cmds_test.go \
|
|
--replace "version (development)" ${version}
|
|
'';
|
|
|
|
ldflags = [
|
|
"-s"
|
|
"-w"
|
|
"-X=github.com/homeport/dyff/internal/cmd.version=${version}"
|
|
];
|
|
|
|
postInstall = ''
|
|
installShellCompletion --cmd dyff \
|
|
--bash <($out/bin/dyff completion bash) \
|
|
--fish <($out/bin/dyff completion fish) \
|
|
--zsh <($out/bin/dyff completion zsh)
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "A diff tool for YAML files, and sometimes JSON";
|
|
mainProgram = "dyff";
|
|
longDescription = ''
|
|
dyff is inspired by the way the old BOSH v1 deployment output reported
|
|
changes from one version to another by only showing the parts of a YAML
|
|
file that change.
|
|
|
|
Each difference is referenced by its location in the YAML document by
|
|
using either the Spruce or go-patch path syntax.
|
|
'';
|
|
homepage = "https://github.com/homeport/dyff";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [ edlimerkaj jceb ];
|
|
};
|
|
}
|