homebrew-core/Formula/regipy.rb

73 lines
3.1 KiB
Ruby

class Regipy < Formula
include Language::Python::Virtualenv
desc "Offline registry hive parsing tool"
homepage "https://github.com/mkorman90/regipy"
url "https://files.pythonhosted.org/packages/f1/d9/ebae459c0784f409b133b6206fd29e7c66c0b9e82d0469c5760d65db7fcd/regipy-2.2.0.tar.gz"
sha256 "d6eec6d646fdfc290296668dae1a68811b1365e3a1fca64e0b7e3290de099e8f"
license "MIT"
head "https://github.com/mkorman90/regipy.git", branch: "master"
bottle do
sha256 cellar: :any_skip_relocation, arm64_big_sur: "d23cba8777868085dd95e650e77a2b8b7717f6d075f291f63d1b33fae311fb08"
sha256 cellar: :any_skip_relocation, big_sur: "ceab82a175e88eac4affd79bcf50ec9b4ef5f4ac92471c262b86fba419d469a1"
sha256 cellar: :any_skip_relocation, catalina: "7226b7e1bcc61f1b1867cf294758353e9bd5f1faf50d093562381412183f3b9d"
sha256 cellar: :any_skip_relocation, mojave: "3844df02655ca71a3dd6ab4a911bfd7318c950434077e9c5791cf2601049393b"
sha256 cellar: :any_skip_relocation, x86_64_linux: "1a2abc5c213e559fac287f75d09d51e7202a9f12ac7091e9232db365075f3475"
end
depends_on "python-tabulate"
depends_on "python@3.9"
resource "attrs" do
url "https://files.pythonhosted.org/packages/ed/d6/3ebca4ca65157c12bd08a63e20ac0bdc21ac7f3694040711f9fd073c0ffb/attrs-21.2.0.tar.gz"
sha256 "ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"
end
resource "click" do
url "https://files.pythonhosted.org/packages/21/83/308a74ca1104fe1e3197d31693a7a2db67c2d4e668f20f43a2fca491f9f7/click-8.0.1.tar.gz"
sha256 "8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a"
end
resource "construct" do
url "https://files.pythonhosted.org/packages/39/2b/c68eaf8294f01ea534f39b8b4ec1d7308b5195e08570c276b104bccd24ff/construct-2.10.67.tar.gz"
sha256 "730235fedf4f2fee5cfadda1d14b83ef1bf23790fb1cc579073e10f70a050883"
end
resource "inflection" do
url "https://files.pythonhosted.org/packages/e1/7e/691d061b7329bc8d54edbf0ec22fbfb2afe61facb681f9aaa9bff7a27d04/inflection-0.5.1.tar.gz"
sha256 "1a29730d366e996aaacffb2f1f1cb9593dc38e2ddd30c91250c6dde09ea9b417"
end
resource "pytz" do
url "https://files.pythonhosted.org/packages/b0/61/eddc6eb2c682ea6fd97a7e1018a6294be80dba08fa28e7a3570148b4612d/pytz-2021.1.tar.gz"
sha256 "83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da"
end
resource "test_hive" do
url "https://raw.githubusercontent.com/mkorman90/regipy/71acd6a65bdee11ff776dbd44870adad4632404c/regipy_tests/data/SYSTEM.xz"
sha256 "b1582ab413f089e746da0528c2394f077d6f53dd4e68b877ffb2667bd027b0b0"
end
def install
venv = virtualenv_create(libexec, "python3.9")
res = resources.map(&:name).to_set
res -= %w[test_hive]
res.each do |r|
venv.pip_install resource(r)
end
venv.pip_install_and_link buildpath
end
test do
resource("test_hive").stage do
system bin/"registry-plugins-run", "-p", "computer_name", "-o", "out.json", "SYSTEM"
h = JSON.parse(File.read("out.json"))
assert_equal h["computer_name"][0]["name"], "WKS-WIN732BITA"
assert_equal h["computer_name"][1]["name"], "WIN-V5T3CSP8U4H"
end
end
end