78 lines
2.7 KiB
Ruby
78 lines
2.7 KiB
Ruby
class Rsyslog < Formula
|
|
desc "Enhanced, multi-threaded syslogd"
|
|
homepage "https://www.rsyslog.com/"
|
|
url "https://www.rsyslog.com/files/download/rsyslog/rsyslog-8.2108.0.tar.gz"
|
|
sha256 "4826c2b6d081a9c95f469fb0115be3f9512065297d3de00ec513758cdb30b1d9"
|
|
license all_of: ["Apache-2.0", "GPL-3.0-or-later", "LGPL-3.0-or-later"]
|
|
|
|
livecheck do
|
|
url "https://www.rsyslog.com/downloads/download-v8-stable/"
|
|
regex(/href=.*?rsyslog[._-]v?(\d+(?:\.\d+)+)\.t/i)
|
|
end
|
|
|
|
bottle do
|
|
sha256 arm64_big_sur: "5a2bd0e1c8c321f824b2c21966806b9d6f8560f9bba66ddc747dca2df739e632"
|
|
sha256 big_sur: "55e7e39978a311be72cd54de21fcc00a182268fc8f61de7cbb87693bd6456b6c"
|
|
sha256 catalina: "842d1c90109ebec93dcfff1aeee09a1431fa46f77276690e494f74984f32ed7a"
|
|
sha256 mojave: "e90e5da3642cde821babbb04977c6ecd964e7fbc0981bfa4410251ccbb679ff9"
|
|
sha256 x86_64_linux: "222146343434c31749e3d351a47446dde3f2ef01cc051d640eadb58342c932a7"
|
|
end
|
|
|
|
depends_on "pkg-config" => :build
|
|
depends_on "libestr"
|
|
|
|
uses_from_macos "curl"
|
|
uses_from_macos "zlib"
|
|
|
|
resource "libfastjson" do
|
|
url "https://download.rsyslog.com/libfastjson/libfastjson-0.99.9.tar.gz"
|
|
sha256 "a330e1bdef3096b7ead53b4bad1a6158f19ba9c9ec7c36eda57de7729d84aaee"
|
|
end
|
|
|
|
def install
|
|
resource("libfastjson").stage do
|
|
system "./configure", "--disable-dependency-tracking",
|
|
"--disable-silent-rules",
|
|
"--prefix=#{libexec}"
|
|
system "make", "install"
|
|
end
|
|
|
|
ENV.prepend_path "PKG_CONFIG_PATH", libexec/"lib/pkgconfig"
|
|
|
|
system "./configure", "--prefix=#{prefix}",
|
|
"--disable-dependency-tracking",
|
|
"--enable-imfile",
|
|
"--enable-usertools",
|
|
"--enable-diagtools",
|
|
"--disable-uuid",
|
|
"--disable-libgcrypt"
|
|
system "make"
|
|
system "make", "install"
|
|
|
|
(etc/"rsyslog.conf").write <<~EOS
|
|
# minimal config file for receiving logs over UDP port 10514
|
|
$ModLoad imudp
|
|
$UDPServerRun 10514
|
|
*.* /usr/local/var/log/rsyslog-remote.log
|
|
EOS
|
|
end
|
|
|
|
def post_install
|
|
mkdir_p var/"run"
|
|
end
|
|
|
|
plist_options manual: "rsyslogd -f #{HOMEBREW_PREFIX}/etc/rsyslog.conf -i #{HOMEBREW_PREFIX}/var/run/rsyslogd.pid"
|
|
|
|
service do
|
|
run [opt_sbin/"rsyslogd", "-n", "-f", etc/"rsyslog.conf", "-i", var/"run/rsyslogd.pid"]
|
|
keep_alive true
|
|
error_log_path var/"log/rsyslogd.log"
|
|
log_path var/"log/rsyslogd.log"
|
|
end
|
|
|
|
test do
|
|
result = shell_output("#{opt_sbin}/rsyslogd -f #{etc}/rsyslog.conf -N 1 2>&1")
|
|
assert_match "End of config validation run", result
|
|
end
|
|
end
|