nixpkgs/pkgs/tools/misc/bonfire/default.nix
2019-08-13 09:18:25 +02:00

51 lines
1.5 KiB
Nix

{ stdenv, python3Packages, fetchFromGitHub }:
with python3Packages;
buildPythonApplication rec {
version = "2017-01-19";
pname = "bonfire";
name = "${pname}-unstable-${version}";
# use latest git version with --endpoint flag
# https://github.com/blue-yonder/bonfire/pull/18
src = fetchFromGitHub {
owner = "blue-yonder";
repo = "${pname}";
rev = "d0af9ca10394f366cfa3c60f0741f1f0918011c2";
sha256 = "193zcvzbhxwwkwbgmnlihhhazwkajycxf4r71jz1m12w301sjhq5";
};
postPatch = ''
# https://github.com/blue-yonder/bonfire/pull/24
substituteInPlace requirements.txt \
--replace "arrow>=0.5.4,<0.8" "arrow>=0.5.4" \
--replace "keyring>=9,<10" "keyring>=9" \
--replace "click>=3.3,<7" "click>=3.3"
# pip fails when encountering the git hash for the package version
substituteInPlace setup.py \
--replace "version=version," "version='${version}',"
# remove extraneous files
substituteInPlace setup.cfg \
--replace "data_files = *.rst, *.txt" ""
'';
buildInputs = [ httpretty pytest pytestcov ];
preCheck = ''
# fix compatibility with pytest 4
substituteInPlace setup.cfg --replace "[pytest]" "[tool:pytest]"
'';
propagatedBuildInputs = [ arrow click keyring parsedatetime requests six termcolor ];
meta = with stdenv.lib; {
homepage = https://pypi.python.org/pypi/bonfire;
description = "CLI Graylog Client with Follow Mode";
license = licenses.bsd3;
maintainers = [ maintainers.womfoo ];
platforms = platforms.linux;
};
}