keg-only: provide more info about system dupes
System duplicates can now provide more information about why they are included in Homebrew.
This commit is contained in:
parent
9995f9a651
commit
63846c7a92
@ -1,7 +1,7 @@
|
|||||||
require 'download_strategy'
|
require 'download_strategy'
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
|
|
||||||
|
# Defines a URL and download method for a stable or HEAD build
|
||||||
class SoftwareSpecification
|
class SoftwareSpecification
|
||||||
attr_reader :url, :specs, :using
|
attr_reader :url, :specs, :using
|
||||||
|
|
||||||
@ -46,6 +46,31 @@ class SoftwareSpecification
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
# Used to annotate formulae that duplicate OS X provided software
|
||||||
|
# :provided_by_osx
|
||||||
|
class KegOnlyReason
|
||||||
|
attr_reader :reason, :explanation
|
||||||
|
|
||||||
|
def initialize reason, explanation=nil
|
||||||
|
@reason = reason
|
||||||
|
@explanation = explanation
|
||||||
|
end
|
||||||
|
|
||||||
|
def to_s
|
||||||
|
if @reason == :provided_by_osx
|
||||||
|
<<-EOS.chomp
|
||||||
|
Mac OS X already provides this program and installing another version in
|
||||||
|
parallel can cause all kinds of trouble.
|
||||||
|
|
||||||
|
#{@explanation}
|
||||||
|
EOS
|
||||||
|
else
|
||||||
|
@reason
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
# Derive and define at least @url, see Library/Formula for examples
|
# Derive and define at least @url, see Library/Formula for examples
|
||||||
class Formula
|
class Formula
|
||||||
include FileUtils
|
include FileUtils
|
||||||
@ -648,8 +673,8 @@ EOF
|
|||||||
puts "detected as an alias for the target formula."
|
puts "detected as an alias for the target formula."
|
||||||
end
|
end
|
||||||
|
|
||||||
def keg_only reason
|
def keg_only reason, explanation=nil
|
||||||
@keg_only_reason = reason
|
@keg_only_reason = KegOnlyReason.new(reason, explanation.chomp)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user