|
1a6ab271
»
|
David Okeby |
2009-01-13 |
renamed Pkg to FreebsdPkg a... |
1 |
module Sprinkle |
| |
2 |
module Installers |
| |
3 |
# = FreeBSD Package Installer |
| |
4 |
# |
| |
5 |
# The Pkg package installer installs FreeBSD packages. |
| |
6 |
# |
| |
7 |
# == Example Usage |
| |
8 |
# |
| |
9 |
# Installing the magic_beans package. |
| |
10 |
# |
| |
11 |
# package :magic_beans do |
| |
12 |
# freebsd_pkg 'magic_beans' |
| |
13 |
# end |
| |
14 |
# |
| |
15 |
# You may also specify multiple packages as an array: |
| |
16 |
# |
| |
17 |
# package :magic_beans do |
| |
18 |
# freebsd_pkg %w(magic_beans magic_sauce) |
| |
19 |
# end |
| |
20 |
class FreebsdPkg < Installer |
| |
21 |
attr_accessor :packages #:nodoc: |
| |
22 |
|
| |
23 |
def initialize(parent, packages, &block) #:nodoc: |
| |
24 |
super parent, &block |
| |
25 |
packages = [packages] unless packages.is_a? Array |
| |
26 |
@packages = packages |
| |
27 |
end |
| |
28 |
|
| |
29 |
protected |
| |
30 |
|
| |
31 |
def install_commands #:nodoc: |
| |
32 |
"pkg_add -r #{@packages.join(' ')}" |
| |
33 |
end |
| |
34 |
|
| |
35 |
end |
| |
36 |
end |
| |
37 |
end |