#include #include #include #include #include #include #include #include #include int main(int argc, char* argv[]) { pkgInitConfig(*_config); pkgInitSystem(*_config, _system); if (_system == 0) { std::cerr << "apt-pkg not initialized\n"; return 1; } // Open the package cache. pkgCacheFile *cache = new pkgCacheFile(); OpProgress progress; if (!cache || cache->Open(&progress, false) == false) { std::cerr << "Error: could not open APT cache.\n"; return 1; } pkgApplyStatus(*cache); std::vector package_names(argv + 1, argv + argc); if (package_names.empty()) return 0; for (std::string package_name : package_names) { pkgCache::PkgIterator it = cache->GetPkgCache()->FindPkg(package_name); if (!it.end()) std::cout << package_name << " "; } std::cout << "\n"; cache->Close(); return 0; }