class Package::Context property working_directory = "/tmp/package" property sources_directory = Dir.current property packages_directory = Dir.current def initialize end def run(chdir, command, args) Process.run command, args, chdir: chdir, output: Process::Redirect::Inherit, error: Process::Redirect::Inherit end def run(command, args) run nil, command, args end def run(command) run nil, command, nil end def package(package : Package) : Bool puts "#{package.fake_root_directory} -> #{packages_directory}/#{package.name}##{package.version}.pkg.tar.xz" pp! r = run package.fake_root_directory, "tar", ["cJf", "#{packages_directory}/#{package.name}##{package.version}.pkg.tar.xz", "."] r.exit_status == 0 end end