fpm 0.3.11 → 0.4.0pre1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELIST +15 -0
- data/bin/fpm +2 -15
- data/lib/fpm.rb +5 -12
- data/lib/fpm/command.rb +323 -0
- data/lib/fpm/errors.rb +1 -0
- data/lib/fpm/namespace.rb +2 -11
- data/lib/fpm/package.rb +255 -100
- data/lib/fpm/package/deb.rb +367 -0
- data/lib/fpm/package/dir.rb +86 -0
- data/lib/fpm/package/gem.rb +162 -0
- data/lib/fpm/{source → package}/npm.rb +3 -3
- data/lib/fpm/package/pear.rb +41 -0
- data/lib/fpm/{target → package}/puppet.rb +1 -3
- data/lib/fpm/{source → package}/pyfpm/__init__.py +0 -0
- data/lib/fpm/package/pyfpm/__init__.pyc +0 -0
- data/lib/fpm/{source → package}/pyfpm/get_metadata.py +15 -3
- data/lib/fpm/package/pyfpm/get_metadata.pyc +0 -0
- data/lib/fpm/package/python.rb +125 -0
- data/lib/fpm/package/rpm.rb +132 -0
- data/lib/fpm/{target → package}/solaris.rb +3 -2
- data/lib/fpm/package/tar.rb +62 -0
- data/lib/fpm/util.rb +56 -7
- data/templates/deb.erb +12 -12
- data/templates/rpm.erb +32 -38
- data/templates/solaris.erb +1 -1
- metadata +119 -78
- data/lib/fpm/builder.rb +0 -220
- data/lib/fpm/flags.rb +0 -20
- data/lib/fpm/program.rb +0 -273
- data/lib/fpm/rubyfixes.rb +0 -11
- data/lib/fpm/source.rb +0 -155
- data/lib/fpm/source/dir.rb +0 -59
- data/lib/fpm/source/gem.rb +0 -162
- data/lib/fpm/source/python.rb +0 -137
- data/lib/fpm/source/rpm.rb +0 -28
- data/lib/fpm/source/tar.rb +0 -50
- data/lib/fpm/target/deb.rb +0 -184
- data/lib/fpm/target/rpm.rb +0 -68
- data/lib/rpm/header.rb +0 -89
- data/lib/rpm/lead.rb +0 -48
- data/lib/rpm/namespace.rb +0 -1
- data/lib/rpm/rpmfile.rb +0 -81
- data/lib/rpm/tag.rb +0 -304
@@ -6,7 +6,7 @@ require "fpm/util"
|
|
6
6
|
|
7
7
|
# TODO(sissel): Add dependency checking support.
|
8
8
|
# IIRC this has to be done as a 'checkinstall' step.
|
9
|
-
class FPM::
|
9
|
+
class FPM::Package::Solaris < FPM::Package
|
10
10
|
def architecture
|
11
11
|
case @architecture
|
12
12
|
when nil, "native"
|
@@ -59,7 +59,8 @@ class FPM::Target::Solaris < FPM::Package
|
|
59
59
|
prototype.puts("i postinstall") if self.scripts["post-install"]
|
60
60
|
|
61
61
|
# TODO(sissel): preinstall/postinstall
|
62
|
-
|
62
|
+
# strip @prefix, since BASEDIR will set prefix via the pkginfo file
|
63
|
+
IO.popen("pkgproto data/#{@prefix}=").each_line do |line|
|
63
64
|
type, klass, path, mode, user, group = line.split
|
64
65
|
# Override stuff in pkgproto
|
65
66
|
# TODO(sissel): Make this tunable?
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require "backports" # gem backports
|
2
|
+
require "fpm/package"
|
3
|
+
require "fpm/util"
|
4
|
+
require "fileutils"
|
5
|
+
require "fpm/package/dir"
|
6
|
+
|
7
|
+
class FPM::Package::Tar < FPM::Package
|
8
|
+
def input(input_path)
|
9
|
+
# use part of the filename as the package name
|
10
|
+
self.name = File.basename(input_path).split(".").first
|
11
|
+
|
12
|
+
# Unpack the tarball to the build path before ultimately moving it to
|
13
|
+
# staging.
|
14
|
+
args = ["-xf", input_path, "-C", build_path]
|
15
|
+
|
16
|
+
# Add the tar compression flag if necessary
|
17
|
+
with(tar_compression_flag(input_path)) do |flag|
|
18
|
+
args << flag unless flag.nil?
|
19
|
+
end
|
20
|
+
|
21
|
+
safesystem("tar", *args)
|
22
|
+
|
23
|
+
# use dir to set stuff up properly, mainly so I don't have to reimplement
|
24
|
+
# the chdir/prefix stuff special for tar.
|
25
|
+
dir = convert(FPM::Package::Dir)
|
26
|
+
if attributes[:chdir]
|
27
|
+
dir.attributes[:chdir] = File.join(build_path, attributes[:chdir])
|
28
|
+
else
|
29
|
+
dir.attributes[:chdir] = build_path
|
30
|
+
end
|
31
|
+
|
32
|
+
cleanup_staging
|
33
|
+
# Tell 'dir' to input "." and chdir/prefix will help it figure out the
|
34
|
+
# rest.
|
35
|
+
dir.input(".")
|
36
|
+
@staging_path = dir.staging_path
|
37
|
+
dir.cleanup_build
|
38
|
+
end # def input
|
39
|
+
|
40
|
+
def output(output_path)
|
41
|
+
# Unpack the tarball to the staging path
|
42
|
+
args = ["-cf", output_path, "-C", staging_path, "."]
|
43
|
+
with(tar_compression_flag(output_path)) do |flag|
|
44
|
+
args << flag unless flag.nil?
|
45
|
+
end
|
46
|
+
|
47
|
+
safesystem("tar", *args)
|
48
|
+
end # def output
|
49
|
+
|
50
|
+
def tar_compression_flag(path)
|
51
|
+
case path
|
52
|
+
when /\.tar\.bz2$/
|
53
|
+
return "-j"
|
54
|
+
when /\.tar\.gz$|\.tgz$/
|
55
|
+
return "-z"
|
56
|
+
when /\.tar\.xz$/
|
57
|
+
return "-J"
|
58
|
+
else
|
59
|
+
return nil
|
60
|
+
end
|
61
|
+
end # def tar_compression_flag
|
62
|
+
end # class FPM::Package::Tar
|
data/lib/fpm/util.rb
CHANGED
@@ -1,7 +1,56 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
1
|
+
require "fpm/namespace"
|
2
|
+
|
3
|
+
# Some utility functions
|
4
|
+
module FPM::Util
|
5
|
+
# Raised if safesystem cannot find the program to run.
|
6
|
+
class ExecutableNotFound < StandardError; end
|
7
|
+
|
8
|
+
# Raised if a safesystem program exits nonzero
|
9
|
+
class ProcessFailed < StandardError; end
|
10
|
+
|
11
|
+
# Is the given program in the system's PATH?
|
12
|
+
def program_in_path?(program)
|
13
|
+
# Scan path to find the executable
|
14
|
+
# Do this to help the user get a better error message.
|
15
|
+
envpath = ENV["PATH"].split(":")
|
16
|
+
return envpath.select { |p| File.executable?(File.join(p, program)) }.any?
|
17
|
+
end # def program_in_path
|
18
|
+
|
19
|
+
# Run a command safely in a way that gets reports useful errors.
|
20
|
+
def safesystem(*args)
|
21
|
+
program = args[0]
|
22
|
+
|
23
|
+
# Scan path to find the executable
|
24
|
+
# Do this to help the user get a better error message.
|
25
|
+
if !program.include?("/") and !program_in_path?(program)
|
26
|
+
raise ExecutableNotFound.new(program)
|
27
|
+
end
|
28
|
+
|
29
|
+
@logger.debug("Running command", :args => args)
|
30
|
+
success = system(*args)
|
31
|
+
if !success
|
32
|
+
raise ProcessFailed.new("#{program} failed (exit code #{$?.exitstatus})" \
|
33
|
+
". Full command was:#{args.inspect}")
|
34
|
+
end
|
35
|
+
return success
|
36
|
+
end # def safesystem
|
37
|
+
|
38
|
+
# Get the recommended 'tar' command for this platform.
|
39
|
+
def tar_cmd
|
40
|
+
# Rely on gnu tar for solaris and OSX.
|
41
|
+
case %x{uname -s}.chomp
|
42
|
+
when "SunOS"
|
43
|
+
return "gtar"
|
44
|
+
when "Darwin"
|
45
|
+
return "gnutar"
|
46
|
+
else
|
47
|
+
return "tar"
|
48
|
+
end
|
49
|
+
end # def tar_cmd
|
50
|
+
|
51
|
+
# Run a block with a value.
|
52
|
+
# Useful in lieu of assigning variables
|
53
|
+
def with(value, &block)
|
54
|
+
block.call(value)
|
55
|
+
end # def with
|
56
|
+
end # module FPM::Util
|
data/templates/deb.erb
CHANGED
@@ -1,27 +1,27 @@
|
|
1
1
|
Package: <%= name %>
|
2
|
-
Version: <%= "#{epoch}:" if epoch %><%= version %><%=
|
2
|
+
Version: <%= "#{epoch}:" if epoch %><%= version %><%= "-" + iteration.to_s if iteration %>
|
3
|
+
License: <%= license %>
|
4
|
+
Vendor: <%= vendor %>
|
3
5
|
Architecture: <%= architecture %>
|
4
|
-
Maintainer: <%= maintainer
|
6
|
+
Maintainer: <%= maintainer %>
|
7
|
+
Installed-Size: <%= attributes[:deb_installed_size] %>
|
5
8
|
<% if !dependencies.empty? -%>
|
6
|
-
|
7
|
-
Depends: <%= properdeps.flatten.join(", ") %>
|
8
|
-
<% end -%>
|
9
|
-
<% if !pre_dependencies.empty? -%>
|
10
|
-
<% properpredeps = pre_dependencies.collect { |d| fix_dependency(d) }.flatten -%>
|
11
|
-
Pre-Depends: <%= properpredeps.flatten.join(", ") %>
|
9
|
+
Depends: <%= dependencies.join(", ") %>
|
12
10
|
<% end -%>
|
13
11
|
<% if !conflicts.empty? -%>
|
14
12
|
Conflicts: <%= conflicts.join(", ") %>
|
15
13
|
<% end -%>
|
14
|
+
<%# if !pre_dependencies.empty? -%>
|
15
|
+
<%# properpredeps = pre_dependencies.collect { |d| fix_dependency(d) }.flatten -%>
|
16
|
+
#Pre-Depends: <%#= properpredeps.flatten.join(", ") %>
|
17
|
+
<%# end -%>
|
16
18
|
<% if !provides.empty? -%>
|
17
19
|
Provides: <%= provides.join(", ") %>
|
18
20
|
<% end -%>
|
19
21
|
<% if !replaces.empty? -%>
|
20
|
-
|
21
|
-
Replaces: <%= properrepl.flatten.join(", ") %>
|
22
|
+
Replaces: <%= replaces.join(", ") %>
|
22
23
|
<% end -%>
|
23
|
-
|
24
|
-
Section: <%= category or "unknown" %>
|
24
|
+
Section: <%= category %>
|
25
25
|
Priority: extra
|
26
26
|
Homepage: <%= url or "http://nourlgiven.example.com/" %>
|
27
27
|
<% lines = (description or "no description given").split("\n") -%>
|
data/templates/rpm.erb
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
# Disable the stupid stuff rpm distros include in the build process by default:
|
2
|
+
<% %w(prep build install clean).each do |step| -%>
|
3
|
+
<%# These definitions have to be non-empty... I guess... -%>
|
4
|
+
# Disable any <%= step %> shell actions. replace them with simply 'true'
|
5
|
+
%define __spec_<%= step %>_post true
|
6
|
+
%define __spec_<%= step %>_pre true
|
7
|
+
<% end -%>
|
8
|
+
# Disable checking for unpackaged files ?
|
9
|
+
#%undefine __check_files
|
10
|
+
|
1
11
|
Name: <%= name %>
|
2
12
|
Version: <%= version %>
|
3
13
|
<% if epoch -%>
|
@@ -5,43 +15,18 @@ Epoch: <%= epoch %>
|
|
5
15
|
<% end -%>
|
6
16
|
Release: <%= iteration or 1 %>
|
7
17
|
<%# use the first line of the description as the summary -%>
|
8
|
-
Summary: <%= description.split("\n").first %>
|
18
|
+
Summary: <%= description.split("\n").first.empty? ? "_" : description.split("\n").first %>
|
9
19
|
BuildArch: <%= architecture %>
|
10
20
|
AutoReqProv: no
|
11
21
|
|
12
22
|
Group: <%= category %>
|
13
|
-
<%#
|
14
|
-
TODO: [Jay] rpms require a license
|
15
|
-
let's detect it intelligently
|
16
|
-
-%>
|
17
23
|
License: <%= license %>
|
24
|
+
Vendor: <%= vendor %>
|
18
25
|
URL: <%= url or "http://nourlgiven.example.com/" %>
|
19
|
-
|
20
|
-
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
26
|
+
Packager: <%= maintainer %>
|
21
27
|
|
22
|
-
<%
|
23
|
-
|
24
|
-
properdeps = dependencies.collect do |d|
|
25
|
-
# Convert gem ~> X.Y.Z to '>= X.Y.Z' and < X.Y+1.0
|
26
|
-
if d =~ /\~>/
|
27
|
-
name, version = d.gsub(/[()~>]/, "").split(/ +/)[0..1]
|
28
|
-
nextversion = version.split(".").collect { |v| v.to_i }
|
29
|
-
l = nextversion.length
|
30
|
-
nextversion[l-2] += 1
|
31
|
-
nextversion[l-1] = 0
|
32
|
-
nextversion = nextversion.join(".")
|
33
|
-
["#{name} >= #{version}", "#{name} < #{nextversion}"]
|
34
|
-
elsif d =~ /\d [<>]=? [0-9.+] [<>]=? \d/
|
35
|
-
# Convert gem >= A.B.C <= X.Y.Z to '>= A.B.C' and '<= X.Y.Z'
|
36
|
-
puts d
|
37
|
-
# split out version numbers with their equality sign
|
38
|
-
name, lower_version, upper_version = d.scan(/([\w-]+) ([<>]=? [\d\.]+) ([<>]=? [\d\.]+)/)[0]
|
39
|
-
["#{name} #{lower_version}", "#{name} #{upper_version}"]
|
40
|
-
else
|
41
|
-
d
|
42
|
-
end
|
43
|
-
end
|
44
|
-
-%>Requires: <%= properdeps.join(", ") %>
|
28
|
+
<% dependencies.each do |req| -%>
|
29
|
+
Requires: <%= req %>
|
45
30
|
<% end -%>
|
46
31
|
<% provides.each do |prov| -%>
|
47
32
|
Provides: <%= prov %>
|
@@ -62,13 +47,21 @@ Obsoletes: <%= repl %>
|
|
62
47
|
# noop
|
63
48
|
|
64
49
|
%install
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
50
|
+
<% files.each do |path| -%>
|
51
|
+
<% source = File.join(staging_path, path) -%>
|
52
|
+
<% # Copy to the build_path/BUILD/ to make rpmbuild happy -%>
|
53
|
+
<% target = File.join(build_path, "BUILD", path) -%>
|
54
|
+
<% dir = File.dirname(target) %>
|
55
|
+
mkdir -p "<%= dir %>"
|
56
|
+
if [ -f "<%= source %>" ] ; then
|
57
|
+
cp "<%= source %>" "<%= target %>"
|
58
|
+
elif [ -d "<%= source %>" ] ; then
|
59
|
+
mkdir "<%= target %>"
|
60
|
+
fi
|
61
|
+
<% end %>
|
69
62
|
|
70
63
|
%clean
|
71
|
-
|
64
|
+
# noop
|
72
65
|
|
73
66
|
<% if scripts["pre-install"] -%>
|
74
67
|
%pre
|
@@ -92,8 +85,9 @@ rm -rf $RPM_BUILD_ROOT
|
|
92
85
|
<% end -%>
|
93
86
|
%files
|
94
87
|
%defattr(-,root,root,-)
|
95
|
-
<%#
|
96
|
-
|
97
|
-
|
88
|
+
<%# Output config files and then regular files. -%>
|
89
|
+
<%= config_files.collect { |c| '%config ' + c }.join("\n") -%>
|
90
|
+
<%# list only files, not directories? %>
|
91
|
+
<%= files.reject { |f| File.directory?(File.join(staging_path, f)) }.collect { |f| "/#{f}" }.join("\n") %>
|
98
92
|
|
99
93
|
%changelog
|
data/templates/solaris.erb
CHANGED
metadata
CHANGED
@@ -1,116 +1,157 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: fpm
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 3
|
9
|
-
- 11
|
10
|
-
version: 0.3.11
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.4.0pre1
|
5
|
+
prerelease: 5
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Jordan Sissel
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-03-09 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: json
|
16
|
+
requirement: &14920820 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *14920820
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: cabin
|
27
|
+
requirement: &14920320 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ~>
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 0.4.2
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *14920320
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: backports
|
38
|
+
requirement: &14919820 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - =
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 2.3.0
|
44
|
+
type: :runtime
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *14919820
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: arr-pm
|
49
|
+
requirement: &14919440 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *14919440
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: rush
|
60
|
+
requirement: &14918980 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *14918980
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rspec
|
71
|
+
requirement: &14918560 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ! '>='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
77
|
+
type: :development
|
22
78
|
prerelease: false
|
23
|
-
|
79
|
+
version_requirements: *14918560
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: insist
|
82
|
+
requirement: &14918140 !ruby/object:Gem::Requirement
|
24
83
|
none: false
|
25
|
-
requirements:
|
26
|
-
- -
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
|
29
|
-
segments:
|
30
|
-
- 0
|
31
|
-
version: "0"
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
32
88
|
type: :runtime
|
33
|
-
|
34
|
-
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *14918140
|
91
|
+
description: Convert directories, rpms, python eggs, rubygems, and more to rpms, debs,
|
92
|
+
solaris packages and more. Win at package management without wasting pointless hours
|
93
|
+
debugging bad rpm specs!
|
35
94
|
email: jls@semicomplete.com
|
36
|
-
executables:
|
95
|
+
executables:
|
37
96
|
- fpm
|
38
97
|
- fpm-npm
|
39
98
|
extensions: []
|
40
|
-
|
41
99
|
extra_rdoc_files: []
|
42
|
-
|
43
|
-
files:
|
44
|
-
- lib/fpm.rb
|
45
|
-
- lib/rpm/lead.rb
|
46
|
-
- lib/rpm/namespace.rb
|
47
|
-
- lib/rpm/rpmfile.rb
|
48
|
-
- lib/rpm/tag.rb
|
49
|
-
- lib/rpm/header.rb
|
50
|
-
- lib/fpm/rubyfixes.rb
|
51
|
-
- lib/fpm/flags.rb
|
52
|
-
- lib/fpm/namespace.rb
|
53
|
-
- lib/fpm/program.rb
|
54
|
-
- lib/fpm/source/gem.rb
|
55
|
-
- lib/fpm/source/dir.rb
|
56
|
-
- lib/fpm/source/tar.rb
|
57
|
-
- lib/fpm/source/npm.rb
|
58
|
-
- lib/fpm/source/rpm.rb
|
59
|
-
- lib/fpm/source/pyfpm/get_metadata.py
|
60
|
-
- lib/fpm/source/pyfpm/__init__.py
|
61
|
-
- lib/fpm/source/python.rb
|
62
|
-
- lib/fpm/builder.rb
|
63
|
-
- lib/fpm/source.rb
|
64
|
-
- lib/fpm/package.rb
|
65
|
-
- lib/fpm/target/puppet.rb
|
66
|
-
- lib/fpm/target/deb.rb
|
67
|
-
- lib/fpm/target/solaris.rb
|
68
|
-
- lib/fpm/target/rpm.rb
|
69
|
-
- lib/fpm/util.rb
|
100
|
+
files:
|
70
101
|
- lib/fpm/errors.rb
|
102
|
+
- lib/fpm/util.rb
|
103
|
+
- lib/fpm/command.rb
|
104
|
+
- lib/fpm/package/pyfpm/get_metadata.py
|
105
|
+
- lib/fpm/package/pyfpm/__init__.pyc
|
106
|
+
- lib/fpm/package/pyfpm/get_metadata.pyc
|
107
|
+
- lib/fpm/package/pyfpm/__init__.py
|
108
|
+
- lib/fpm/package/python.rb
|
109
|
+
- lib/fpm/package/rpm.rb
|
110
|
+
- lib/fpm/package/npm.rb
|
111
|
+
- lib/fpm/package/deb.rb
|
112
|
+
- lib/fpm/package/gem.rb
|
113
|
+
- lib/fpm/package/tar.rb
|
114
|
+
- lib/fpm/package/pear.rb
|
115
|
+
- lib/fpm/package/dir.rb
|
116
|
+
- lib/fpm/package/puppet.rb
|
117
|
+
- lib/fpm/package/solaris.rb
|
118
|
+
- lib/fpm/package.rb
|
119
|
+
- lib/fpm/namespace.rb
|
120
|
+
- lib/fpm.rb
|
71
121
|
- bin/fpm-npm
|
72
122
|
- bin/fpm
|
73
|
-
- templates/rpm.erb
|
74
|
-
- templates/solaris.erb
|
75
123
|
- templates/puppet/package/remove.pp.erb
|
76
124
|
- templates/puppet/package.pp.erb
|
77
125
|
- templates/deb.erb
|
126
|
+
- templates/solaris.erb
|
127
|
+
- templates/rpm.erb
|
78
128
|
- LICENSE
|
79
129
|
- CONTRIBUTORS
|
80
130
|
- CHANGELIST
|
81
131
|
homepage: https://github.com/jordansissel/fpm
|
82
132
|
licenses: []
|
83
|
-
|
84
133
|
post_install_message:
|
85
134
|
rdoc_options: []
|
86
|
-
|
87
|
-
require_paths:
|
135
|
+
require_paths:
|
88
136
|
- lib
|
89
137
|
- lib
|
90
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
138
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
91
139
|
none: false
|
92
|
-
requirements:
|
93
|
-
- -
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
|
96
|
-
|
97
|
-
- 0
|
98
|
-
version: "0"
|
99
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
|
+
requirements:
|
141
|
+
- - ! '>='
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
version: '0'
|
144
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
100
145
|
none: false
|
101
|
-
requirements:
|
102
|
-
- -
|
103
|
-
- !ruby/object:Gem::Version
|
104
|
-
|
105
|
-
segments:
|
106
|
-
- 0
|
107
|
-
version: "0"
|
146
|
+
requirements:
|
147
|
+
- - ! '>'
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: 1.3.1
|
108
150
|
requirements: []
|
109
|
-
|
110
151
|
rubyforge_project:
|
111
|
-
rubygems_version: 1.8.
|
152
|
+
rubygems_version: 1.8.16
|
112
153
|
signing_key:
|
113
154
|
specification_version: 3
|
114
155
|
summary: fpm - package building and mangling
|
115
156
|
test_files: []
|
116
|
-
|
157
|
+
has_rdoc:
|