Class: Pkgr::Distributions::Debian
- Inherits:
-
Base
- Object
- Base
- Pkgr::Distributions::Debian
show all
- Defined in:
- lib/pkgr/distributions/debian.rb
Overview
Contains the various components required to make a packaged app integrate well with a Debian system.
Direct Known Subclasses
Ubuntu
Instance Method Summary
collapse
Methods inherited from Base
#build_dependencies, #buildpacks, #check, #default_buildpack_list, #dependencies, #initialize, #initializers_for, #os, #postinstall_file, #preinstall_file, #slug, #templates
Instance Method Details
#fpm_args(build_dir, config) ⇒ Object
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# File 'lib/pkgr/distributions/debian.rb', line 30
def fpm_args(build_dir, config)
args = []
args << "-t deb"
args << "-s dir"
args << "--verbose"
args << "--force"
args << %{-C "#{build_dir}"}
args << %{-n "#{config.name}"}
args << %{--version "#{config.version}"}
args << %{--iteration "#{config.iteration}"}
args << %{--url "#{config.homepage}"}
args << %{--provides "#{config.name}"}
args << %{--deb-user "root"}
args << %{--deb-group "root"}
args << %{--license "#{config.license}"} unless config.license.nil?
args << %{-a "#{config.architecture}"}
args << %{--description "#{config.description}"}
args << %{--maintainer "#{config.maintainer}"}
args << %{--template-scripts}
args << %{--before-install #{preinstall_file(config)}}
args << %{--after-install #{postinstall_file(config)}}
dependencies(config.dependencies).each{|d| args << "-d '#{d}'"}
args
end
|
#fpm_command(build_dir, config) ⇒ Object
26
27
28
|
# File 'lib/pkgr/distributions/debian.rb', line 26
def fpm_command(build_dir, config)
%{fpm #{fpm_args(build_dir, config).join(" ")} .}
end
|
#package_install_command(packages) ⇒ Object
22
23
24
|
# File 'lib/pkgr/distributions/debian.rb', line 22
def package_install_command(packages)
"sudo apt-get update && sudo apt-get install --force-yes -y #{packages.map{|package| "\"#{package}\""}.join(" ")}"
end
|
#package_test_command(package) ⇒ Object
18
19
20
|
# File 'lib/pkgr/distributions/debian.rb', line 18
def package_test_command(package)
"dpkg -s '#{package}' > /dev/null 2>&1"
end
|
#release ⇒ Object
10
11
12
|
# File 'lib/pkgr/distributions/debian.rb', line 10
def release
@release[/^[0-9]+/]
end
|
#runner ⇒ Object
14
15
16
|
# File 'lib/pkgr/distributions/debian.rb', line 14
def runner
@runner ||= Runner.new("sysv", "lsb-3.1")
end
|