blob: 6ecbcdeff77d91b12bba441936b35371b85f3506 [file] [log] [blame]
# load configuration information from $HOME/.whimsy
require 'yaml'
module ASF
class Config
@home = ENV['HOME'] || Dir.pwd
@config = YAML.load_file("#@home/.whimsy") rescue {}
# default :svn and :git
@config[:svn] ||= '/srv/svn/*'
@config[:git] ||= '/srv/git/*'
@config[:lib] ||= []
# add gems to lib
(@config[:gem] || {}).to_a.reverse.each do |name, version|
begin
gem = Gem::Specification.find_by_name(name, version)
@config[:lib] += Dir[gem.lib_dirs_glob]
rescue Gem::LoadError
end
end
# add libraries to RUBYLIB, load path
(@config[:lib] || []).reverse.each do |lib|
next unless File.exist? lib
lib = File.realpath(lib)
ENV['RUBYLIB']=([lib] + ENV['RUBYLIB'].to_s.split(':')).uniq.join(':')
$LOAD_PATH.unshift lib.untaint unless $LOAD_PATH.include? lib
end
def self.get(value)
@config[value]
end
end
end