class Monero < Formula desc "Official monero wallet and cpu miner" homepage "https://getmonero.org/" url "https://github.com/monero-project/monero.git", :tag => "v0.14.1.0", :revision => "29a505d1c1cfd3baa7d3a0c4433db8d7b043e341" bottle do cellar :any sha256 "456d168b790f2bbb8a4adb78d0955852cec3d9330365242853ba5c8d3e1afd2a" => :mojave sha256 "d7b84ba071399407d913c27f8f26a1d57d070b1ccbe6c6601a5b2f928e2a136a" => :high_sierra sha256 "ad1ffedb76c125f6f01ad2f45e6c4703c3f90361a30c51bffce2b28ce827c0ea" => :sierra end depends_on "cmake" => :build depends_on "pkg-config" => :build depends_on "boost" depends_on "libsodium" depends_on "openssl" depends_on "readline" depends_on "unbound" depends_on "zeromq" resource "cppzmq" do url "https://github.com/zeromq/cppzmq/archive/v4.3.0.tar.gz" sha256 "27d1f56406ba94ee779e639203218820975cf68174f92fbeae0f645df0fcada4" end def install (buildpath/"cppzmq").install resource("cppzmq") system "cmake", ".", "-DZMQ_INCLUDE_PATH=#{buildpath}/cppzmq", "-DReadline_ROOT_DIR=#{Formula["readline"].opt_prefix}", *std_cmake_args system "make", "install" # Avoid conflicting with miniupnpc # Reported upstream 25 May 2018 https://github.com/monero-project/monero/issues/3862 rm lib/"libminiupnpc.a" rm_rf include/"miniupnpc" end plist_options :manual => "monerod" def plist; <<~EOS Label #{plist_name} ProgramArguments #{opt_bin}/monerod --non-interactive RunAtLoad EOS end test do cmd = "yes '' | #{bin}/monero-wallet-cli --restore-deterministic-wallet " \ "--password brew-test --restore-height 1 --generate-new-wallet wallet " \ "--electrum-seed 'baptism cousin whole exquisite bobsled fuselage left " \ "scoop emerge puzzled diet reinvest basin feast nautical upon mullet " \ "ponies sixteen refer enhanced maul aztec bemused basin'" \ "--command address" address = "4BDtRc8Ym9wGzx8vpkQQvpejxBNVpjEmVBebBPCT4XqvMxW3YaCALFraiQibejyMAxUXB5zqn4pVgHVm3JzhP2WzVAJDpHf" assert_equal address, shell_output(cmd).lines.last.split[1] end end