# File lib/fpm/package.rb, line 72 def initialize(source, params={}) @source = source @logger = Logger.new(STDERR) @logger.level = $DEBUG ? Logger::DEBUG : Logger::WARN @name = source[:name] # || fail # Default version is 1.0 in case nobody told us a specific version. @version = source[:version] || "1.0" @epoch = source[:epoch] @dependencies = source[:dependencies] || [] # Iteration can be nil. If nil, the fpm package implementation is expected # to handle any default value that should be instead. @iteration = source[:iteration] @url = source[:url] || "http://nourlgiven.example.com/no/url/given" @category = source[:category] || "default" @license = source[:license] || "unknown" #@maintainer = source[:maintainer] || "<#{ENV["USER"]}@#{Socket.gethostname}>" @maintainer = source[:maintainer] # Default maintainer if none given. if @maintainer.nil? or @maintainer.empty? # Reference # http://www.debian.org/doc/manuals/maint-guide/first.en.html # http://wiki.debian.org/DeveloperConfiguration # https://github.com/jordansissel/fpm/issues/37 if ENV.include?("DEBEMAIL") and ENV.include?("DEBFULLNAME") # Use DEBEMAIL and DEBFULLNAME as the default maintainer if available. @maintainer = "#{ENV["DEBFULLNAME"]} <#{ENV["DEBEMAIL"]}>" else # TODO(sissel): Maybe support using 'git config' for a default as well? # git config --get user.name, etc can be useful. # # Otherwise default to user@currenthost @maintainer = "<#{ENV["USER"]}@#{Socket.gethostname}>" end end # If @architecture is nil, the target package should provide a default. # Special 'architecture' values include "all" (aka rpm's noarch, debian's all) # Another special includes "native" which will be the current platform's arch. @architecture = source[:architecture] @description = source[:description] || "no description given" @provides = source[:provides] || [] @replaces = source[:replaces] || [] @conflicts = source[:conflicts] || [] @scripts = source[:scripts] @config_files = source[:config_files] || [] # Target-specific settings, mirrors :settings metadata in FPM::Source @settings = params[:settings] || {} end