homebrew-core/Formula/headphones.rb

68 lines
1.9 KiB
Ruby

require "formula"
class Headphones < Formula
homepage "https://github.com/rembo10/headphones"
head "https://github.com/rembo10/headphones.git"
url "https://github.com/rembo10/headphones/archive/v0.4.tar.gz"
sha1 "bce89dc89a9adb6c660de277b6988afd09635fa5"
resource "Markdown" do
url "https://pypi.python.org/packages/source/M/Markdown/Markdown-2.4.tar.gz"
sha1 "7a4a96cd79c4e36918484c634055c4cc27bdf7d4"
end
resource "Cheetah" do
url "https://pypi.python.org/packages/source/C/Cheetah/Cheetah-2.4.4.tar.gz"
sha1 "c218f5d8bc97b39497680f6be9b7bd093f696e89"
end
def startup_script; <<-EOS.undent
#!/bin/bash
export PYTHONPATH="#{libexec}/lib/python2.7/site-packages:$PYTHONPATH"
python "#{libexec}/Headphones.py" --datadir="#{etc}/headphones" "$@"
EOS
end
def install
# TODO - strip down to the minimal install
prefix.install_metafiles
libexec.install Dir["*"]
ENV["CHEETAH_INSTALL_WITHOUT_SETUPTOOLS"] = "1"
ENV.prepend_create_path "PYTHONPATH", libexec+"lib/python2.7/site-packages"
install_args = [ "setup.py", "install", "--prefix=#{libexec}" ]
resource("Markdown").stage { system "python", *install_args }
resource("Cheetah").stage { system "python", *install_args }
(bin+"headphones").write(startup_script)
end
plist_options :manual => "headphones"
def plist; <<-EOS.undent
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/$
<plist version="1.0">
<dict>
<key>Label</key>
<string>#{plist_name}</string>
<key>ProgramArguments</key>
<array>
<string>#{opt_bin}/headphones</string>
<string>-q</string>
<string>-d</string>
<string>--nolaunch</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
EOS
end
def caveats
"Headphones defaults to port 8181."
end
end