require "formula" class DBus < Formula homepage "http://www.freedesktop.org/wiki/Software/dbus" url "http://dbus.freedesktop.org/releases/dbus/dbus-1.8.6.tar.gz" sha1 "ad7cb87cdce66533479a9d7c1c956bdb0243ad87" bottle do sha1 "080efb67d648af00124b263fbdfe1e99a53831c4" => :mavericks sha1 "96220a126a73a3d78db9fc5e213e54e366cef912" => :mountain_lion sha1 "d59965651e893a73e610aa166333c6b77f56482a" => :lion end # Upstream fix for O_CLOEXEC portability # http://cgit.freedesktop.org/dbus/dbus/commit/?id=5d91f615d18629eaac074fbde2ee7e17b82e5472 patch do url "http://cgit.freedesktop.org/dbus/dbus/patch/?id=5d91f615d18629eaac074fbde2ee7e17b82e5472" sha1 "ebb383abb86eeafbe048dbb8b77d83bdf0b7c9bb" end def install # Fix the TMPDIR to one D-Bus doesn't reject due to odd symbols ENV["TMPDIR"] = "/tmp" system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}", "--localstatedir=#{var}", "--sysconfdir=#{etc}", "--disable-xml-docs", "--disable-doxygen-docs", "--enable-launchd", "--with-launchd-agent-dir=#{prefix}", "--without-x", "--disable-tests" system "make" ENV.deparallelize system "make install" (prefix+"org.freedesktop.dbus-session.plist").chmod 0644 end def post_install # Generate D-Bus's UUID for this machine system "#{bin}/dbus-uuidgen", "--ensure=#{var}/lib/dbus/machine-id" end def caveats; <<-EOS.undent If this is your first install, automatically load on login with: mkdir -p ~/Library/LaunchAgents cp #{prefix}/org.freedesktop.dbus-session.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist If this is an upgrade and you already have the org.freedesktop.dbus-session.plist loaded: launchctl unload -w ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist cp #{prefix}/org.freedesktop.dbus-session.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist EOS end end