module ActiveScripts module Packages class RubyBuild < ActiveScripts::Packages::Base # INFO: ActiveScripts::Packages::RubyBuild contains code that # execute the ruby-build package. private def install if package_installed?(includes: "ruby-build") notify_package_exists! else case $operating_system when :macosx, :linux execute_command!("brew install ruby-build") say_ok(" Installation complete!") else notify_package_unavailable! end end end def upgrade if package_installed?(includes: "ruby-build") case $operating_system when :macosx, :linux output = execute_command!("brew upgrade ruby-build") say_warning(" [!] #{output.squish}") unless option_dry_run? || package_output?(output, includes: "Error:") say_ok(" Upgrade complete!") else notify_package_unavailable! end else notify_package_missing! end end def uninstall if package_installed?(includes: "ruby-build") case $operating_system when :macosx, :linux execute_command!("brew remove ruby-build") say_ok(" Uninstallation complete!") else notify_package_unavailable! end else notify_package_missing! end end end end end