73 lines
2.0 KiB
Ruby
73 lines
2.0 KiB
Ruby
class Wtfutil < Formula
|
|
desc "The personal information dashboard for your terminal"
|
|
homepage "https://wtfutil.com"
|
|
url "https://github.com/wtfutil/wtf.git",
|
|
tag: "v0.31.0",
|
|
revision: "d493c4d16f09cada889b1d323e01ea2f6ecdad80"
|
|
license "MPL-2.0"
|
|
|
|
bottle do
|
|
cellar :any_skip_relocation
|
|
sha256 "c1f56bdf436ae115cad763fc2c4f49af6d4eda587ed93fefcc182117fa5e2528" => :catalina
|
|
sha256 "e2f7a9e3b02e580e415b2ffdc95f478a88f404486124a3ee19e85e71f2c6735f" => :mojave
|
|
sha256 "9a37aab1279b87b91428584ee1bd1740c682d404486f003d7d3384169305c3f5" => :high_sierra
|
|
end
|
|
|
|
depends_on "go" => :build
|
|
|
|
def install
|
|
ldflags = %W[
|
|
-s -w
|
|
-X main.version=#{version}
|
|
-X main.date=#{Time.now.iso8601}
|
|
]
|
|
system "go", "build", "-trimpath", "-ldflags", ldflags.join(" "), "-o", bin/"wtfutil"
|
|
end
|
|
|
|
test do
|
|
testconfig = testpath/"config.yml"
|
|
testconfig.write <<~EOS
|
|
wtf:
|
|
colors:
|
|
background: "red"
|
|
border:
|
|
focusable: "darkslateblue"
|
|
focused: "orange"
|
|
normal: "gray"
|
|
checked: "gray"
|
|
highlight:
|
|
fore: "black"
|
|
back: "green"
|
|
text: "white"
|
|
title: "white"
|
|
grid:
|
|
# How _wide_ the columns are, in terminal characters. In this case we have
|
|
# six columns, each of which are 35 characters wide
|
|
columns: [35, 35, 35, 35, 35, 35]
|
|
|
|
# How _high_ the rows are, in terminal lines. In this case we have five rows
|
|
# that support ten line of text, one of three lines, and one of four
|
|
rows: [10, 10, 10, 10, 10, 3, 4]
|
|
navigation:
|
|
shortcuts: true
|
|
openFileUtil: "open"
|
|
sigils:
|
|
checkbox:
|
|
checked: "x"
|
|
unchecked: " "
|
|
paging:
|
|
normal: "*"
|
|
selected: "_"
|
|
term: "xterm-256color"
|
|
EOS
|
|
|
|
begin
|
|
pid = fork do
|
|
exec "#{bin}/wtfutil", "--config=#{testconfig}"
|
|
end
|
|
ensure
|
|
Process.kill("HUP", pid)
|
|
end
|
|
end
|
|
end
|