diff --git a/pkgs/tools/system/honcho/default.nix b/pkgs/tools/system/honcho/default.nix new file mode 100644 index 000000000000..1c231e90db49 --- /dev/null +++ b/pkgs/tools/system/honcho/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchzip, pythonPackages, buildPythonPackage }: + +let honcho = buildPythonPackage rec { + name = "honcho-${version}"; + version = "0.6.6"; + namePrefix = ""; + + src = fetchzip { + url = "https://github.com/nickstenning/honcho/archive/v${version}.tar.gz"; + md5 = "f5e6a7f6c1d0c167d410d7f601b4407e"; + }; + + buildInputs = with pythonPackages; [ nose mock jinja2 ]; + checkPhase = '' + runHook preCheck + nosetests + runHook postCheck + ''; + + doCheck = false; + + meta = with stdenv.lib; { + description = "A Python clone of Foreman, a tool for managing Procfile-based applications."; + license = licenses.mit; + homePage = https://github.com/nickstenning/honcho; + maintainers = with maintainers; [ benley ]; + platforms = platforms.unix; + }; +}; + +in + +# Some of honcho's tests require that honcho be installed in the environment in +# order to work. This is a trick to build it without running tests, then pass +# it to itself as a buildInput so the tests work. +honcho.overrideDerivation (x: { buildInputs = [ honcho ]; doCheck = true; }) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7b0f1981d70b..f2b0e6abf60b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1622,6 +1622,8 @@ let lua = lua5; }; + honcho = callPackage ../tools/system/honcho { }; + host = callPackage ../tools/networking/host { }; hping = callPackage ../tools/networking/hping { };