class H2 < Formula desc "Java SQL database" homepage "https://www.h2database.com/" url "https://www.h2database.com/h2-2017-06-10.zip" version "1.4.196" sha256 "1224638c19b975ba4d8f82435c3ff89526740b1123409e29ceb87c0b6f1734c2" bottle :unneeded def script; <<~EOS #!/bin/sh cd #{libexec} && bin/h2.sh "$@" EOS end def install # Remove windows files rm_f Dir["bin/*.bat"] # As of 1.4.190, the script contains \r\n line endings, # causing it to fail on macOS. This is a workaround until # upstream publishes a fix. # # https://github.com/h2database/h2database/issues/218 h2_script = File.read("bin/h2.sh").gsub("\r\n", "\n") File.open("bin/h2.sh", "w") { |f| f.write h2_script } # Fix the permissions on the script chmod 0755, "bin/h2.sh" libexec.install Dir["*"] (bin+"h2").write script end plist_options :manual => "h2" def plist; <<~EOS Label #{plist_name} RunAtLoad KeepAlive ProgramArguments #{opt_bin}/h2 -tcp -web -pg WorkingDirectory #{HOMEBREW_PREFIX} EOS end test do assert_match "Starts the H2 Console", shell_output("#{bin}/h2 -help") end end