class Archlinux::PackageClass
Public Class Methods
packages(*repos)
click to toggle source
# File lib/aur/packages.rb, line 7 def self.packages(*repos) pkgs=PackageList.new repos.each do |repo| npkg=case repo when "@db" Archlinux.config.db.packages when "@dbdir" Archlinux.config.db.dir_packages when ":local" LocalRepo.new.packages when /^@get/, /^@rget/ new=Archlinux.config.install_list m=repo.match(/^@r?get\((.*)\)/) l=m[1].split(',') #require 'pry'; binding.pry if repo =~ /^@rget/ new.rget(*l) else new.get(*l) end new else if (m=repo.match(/^:(.*)\Z/)) Repo.new(m[1]).packages else path=Pathname.new(repo) if path.file? PackageFiles.new(path).packages elsif path.directory? PackageFiles.from_dir(path).packages end end end if npkg.nil? SH.logger.warn "Unknown repo #{repo}" else pkgs.merge(npkg) end end pkgs end
packages_list(*repos)
click to toggle source
# File lib/aur/packages.rb, line 49 def self.packages_list(*repos) if repos.length == 2 pkg1=packages(*repos[0]) pkg2=packages(*repos[1]) else i=repos.index('::') unless i SH.logger.warn "Only one list given" i=0 end pkg1=packages(*repos[0...i]) pkg2=packages(*repos[i+1..-1]) end return pkg1, pkg2 end