homebrew-core/Formula/sleepwatcher.rb
2015-06-05 14:47:57 +01:00

57 lines
1.7 KiB
Ruby

require 'formula'
class Sleepwatcher < Formula
desc "Monitors sleep, wakeup, and idleness of a Mac"
homepage 'http://www.bernhard-baehr.de/'
url 'http://www.bernhard-baehr.de/sleepwatcher_2.2.tgz'
sha1 'd4e4abb0bf0e1b3db9166d1eae38b8701fc28bf8'
def install
# Adjust Makefile to build native binary only
inreplace "sources/Makefile" do |s|
s.gsub! /^(CFLAGS)_PPC.*$/, "\\1 = #{ENV.cflags} -prebind"
s.gsub! /^(CFLAGS_X86)/, "#\\1"
s.change_make_var! "BINDIR", "$(PREFIX)/sbin"
s.change_make_var! "MANDIR", "$(PREFIX)/share/man"
s.gsub! /^(.*?)CFLAGS_PPC(.*?)[.]ppc/, "\\1CFLAGS\\2"
s.gsub! /^(.*?CFLAGS_X86.*?[.]x86)/, "#\\1"
s.gsub! /^(\t(lipo|rm).*?[.](ppc|x86))/, "#\\1"
s.gsub! "-o root -g wheel", ""
end
# Build and install binary
cd "sources" do
system "mv", "../sleepwatcher.8", "."
system "make", "install", "PREFIX=#{prefix}"
end
# Write the sleep/wakeup scripts
(prefix + 'etc/sleepwatcher').install Dir["config/rc.*"]
# Write the launchd scripts
inreplace Dir["config/*.plist"] do |s|
s.gsub! "/usr/local/sbin", HOMEBREW_PREFIX/'sbin'
end
inreplace 'config/de.bernhard-baehr.sleepwatcher-20compatibility.plist' do |s|
s.gsub! "/etc", (etc + 'sleepwatcher')
end
prefix.install Dir["config/*.plist"]
end
def caveats; <<-EOS.undent
For SleepWatcher to work, you will need to read the following:
#{prefix}/ReadMe.rtf
Ignore information about installing the binary and man page,
but read information regarding setup of the launchd files which
are installed here:
#{Dir["#{prefix}/*.plist"].join("\n ")}
These are the examples provided by the author.
EOS
end
end