Skip to content

Instantly share code, notes, and snippets.

@alk
Created July 31, 2010 19:47
Show Gist options
  • Save alk/502538 to your computer and use it in GitHub Desktop.
Save alk/502538 to your computer and use it in GitHub Desktop.
#!/usr/bin/ruby
require 'set'
infos = IO.read('/var/lib/dpkg/available').split("\n\n")
to_delete = IO.popen("dpkg -l '*'") {|f| f.readlines.grep(/^un/).map {|l| l.split(/\s+/)[1]}}
to_delete = to_delete.map {|n| "Package: #{n}"}.to_set
new_infos = infos.reject do |entry|
first_line = entry.split("\n", 2)[0]
to_delete.include? first_line
end
STDOUT << new_infos.join("\n\n") << "\n\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment