Method: Sunshine::Apt#initialize

Defined in:
lib/sunshine/package_managers/apt.rb

#initialize(name, options = {}, &block) ⇒ Apt

Returns a new instance of Apt.



16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/sunshine/package_managers/apt.rb', line 16

def initialize(name, options={}, &block)
  super(name, options) do
    pkg_name = build_pkg_name @pkg.dup, options

    install    "apt-get install -y #{pkg_name}"
    uninstall  "apt-get remove -y #{pkg_name}"

    @pkg = "#{@pkg}-#{options[:version]}" if options[:version]
    check_test "apt-cache search ^#{@pkg} | grep -c ^#{@pkg}", '-ge 1'

    instance_eval(&block) if block_given?
  end
end