Sha256: 9ee41a97513400aded7ad285d612b9d0e8b9931783d64e5c1cb81adc4de29891

Contents?: true

Size: 641 Bytes

Versions: 5

Compression:

Stored size: 641 Bytes

Contents

class Arson
	class << self
		# Thanks for the cleaned up version, Gigamo! Here I go dirtying
		# it up, however. ;)
		#
		# Calls `pacman -Qm', and given each line, finds upgrades for
		# that package.
		def check_upgrades
			upgradable = Hash.new

			::IO.popen('pacman -Qm', ::IO::RDONLY) {|pm| pm.read.lines}.each do |line|
				name, version = line.chomp.split
				result = find_exact(name)

				if result
					if ::VersionNumber.new(result['Version']) > ::VersionNumber.new(version)
						upgradable[line] = result['Version']
					end
				end
			end

			upgradable#.any? ? download(upgradable) : say('Nothing to update')
		end

	end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
evaryont-arson-2.0.0 lib/arson/upgrade.rb
evaryont-arson-2.0.1 lib/arson/upgrade.rb
evaryont-arson-2.0.2 lib/arson/upgrade.rb
evaryont-arson-2.1.1 lib/arson/upgrade.rb
evaryont-arson-2.1.2 lib/arson/upgrade.rb