homebrew-core/Formula/pipx.rb
2019-05-02 15:57:05 -07:00

33 lines
1.4 KiB
Ruby

class Pipx < Formula
include Language::Python::Virtualenv
desc "Execute binaries from Python packages in isolated environments"
homepage "https://github.com/pipxproject/pipx"
url "https://files.pythonhosted.org/packages/b5/42/bdf9b6cc0af79222f69776d931ef79235946095b16594bac1f6bd81f435f/pipx-0.13.0.1.tar.gz"
sha256 "5134955d0d0595ca8040ecfa4215f2ddb84d34569c118ab2cde84b1d2b240b42"
bottle do
cellar :any_skip_relocation
sha256 "6fc35a71ccd0434ae3aed5d691bf93a3b5affd95419386c1e83da3acd93fb711" => :mojave
sha256 "6fc35a71ccd0434ae3aed5d691bf93a3b5affd95419386c1e83da3acd93fb711" => :high_sierra
sha256 "acc59a38f3133792b6929002195cfc066bf63746d1e05bde60ff684fabac4a8d" => :sierra
end
depends_on "python"
def install
xy = Language::Python.major_minor_version "python3"
ENV.prepend_create_path "PYTHONPATH", libexec/"lib/python#{xy}/site-packages"
system "python3", *Language::Python.setup_install_args(libexec)
bin.install Dir["#{libexec}/bin/*"]
bin.env_script_all_files(libexec/"bin", :PYTHONPATH => ENV["PYTHONPATH"])
end
test do
assert_match "PIPX_HOME", shell_output("#{bin}/pipx --help")
system "#{bin}/pipx", "install", "csvkit"
assert_true FileTest.exist?("#{testpath}/.local/bin/csvjoin")
system "#{bin}/pipx", "uninstall", "csvkit"
assert_no_match Regexp.new("csvjoin"), shell_output("#{bin}/pipx list")
end
end