+void
+package_list_callback (opkg_t *opkg, opkg_package_t *pkg, void *data)
+{
+ static install_count = 0;
+ static total_count = 0;
+
+ if (pkg->installed)
+ install_count++;
+
+ total_count++;
+
+ printf ("\rPackage count: %d Installed, %d Total Available", install_count, total_count);
+ fflush (stdout);
+
+ if (!find_pkg)
+ {
+ /* store the first package to print out later */
+ find_pkg = pkg;
+ }
+ else
+ opkg_package_free (pkg);
+}
+
+void
+package_list_upgradable_callback (opkg_t *opkg, opkg_package_t *pkg, void *data)
+{
+ printf ("%s - %s\n", pkg->name, pkg->version);
+}
+
+void
+print_package (opkg_package_t *pkg)
+{
+ printf (
+ "Name: %s\n"
+ "Version: %s\n"
+ "Repository: %s\n"
+ "Architecture: %s\n"
+ "Description: %s\n"
+ "Tags: %s\n"
+ "URL: %s\n"
+ "Size: %d\n"
+ "Installed: %s\n",
+ pkg->name,
+ pkg->version,
+ pkg->repository,
+ pkg->architecture,
+ pkg->description,
+ pkg->tags,
+ pkg->url,
+ pkg->size,
+ (pkg->installed ? "True" : "False")
+ );
+}