depot/third_party/nixpkgs/pkgs/development/tools/oq/default.nix

47 lines
1.2 KiB
Nix
Raw Normal View History

{ lib, fetchFromGitHub, crystal, jq, libxml2, makeWrapper, fetchpatch }:
crystal.buildCrystalPackage rec {
pname = "oq";
version = "1.1.0";
src = fetchFromGitHub {
owner = "Blacksmoke16";
repo = pname;
rev = "v${version}";
sha256 = "1zg4kxpfi3sap4cwp42zg46j5dv0nf926qdqm7k22ncm6jdrgpgw";
};
patches = [
(fetchpatch {
# remove once we have upgraded to oq 1.1.2+
name = "yaml-test-leniency.patch";
url = "https://github.com/Blacksmoke16/oq/commit/93ed2fe50c9ce3fd8d35427e007790ddaaafce60.patch";
sha256 = "1iyz0c0w0ykz268bkrlqwvh1jnnrja0mqip6y89sbpa14lp0l37n";
})
];
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jq libxml2 ];
format = "crystal";
crystalBinaries.oq.src = "src/oq_cli.cr";
preCheck = ''
mkdir bin
cp oq bin/oq
'';
postInstall = ''
wrapProgram "$out/bin/oq" \
--prefix PATH : "${lib.makeBinPath [ jq ]}"
'';
meta = with lib; {
description = "A performant, and portable jq wrapper";
homepage = "https://blacksmoke16.github.io/oq/";
license = licenses.mit;
maintainers = with maintainers; [ filalex77 ];
platforms = platforms.unix;
};
}