fpm 0.3.11 → 0.4.0pre1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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:
|