static int opkg_list_installed_cmd(opkg_conf_t *conf, int argc, char **argv);
static int opkg_list_upgradable_cmd(opkg_conf_t *conf, int argc, char **argv);
static int opkg_remove_cmd(opkg_conf_t *conf, int argc, char **argv);
-static int opkg_purge_cmd(opkg_conf_t *conf, int argc, char **argv);
static int opkg_flag_cmd(opkg_conf_t *conf, int argc, char **argv);
static int opkg_files_cmd(opkg_conf_t *conf, int argc, char **argv);
static int opkg_search_cmd(opkg_conf_t *conf, int argc, char **argv);
{"status", 0, (opkg_cmd_fun_t)opkg_status_cmd},
{"install", 1, (opkg_cmd_fun_t)opkg_install_cmd},
{"remove", 1, (opkg_cmd_fun_t)opkg_remove_cmd},
- {"purge", 1, (opkg_cmd_fun_t)opkg_purge_cmd},
{"configure", 0, (opkg_cmd_fun_t)opkg_configure_cmd},
{"files", 1, (opkg_cmd_fun_t)opkg_files_cmd},
{"search", 1, (opkg_cmd_fun_t)opkg_search_cmd},
return 0;
}
-static int opkg_purge_cmd(opkg_conf_t *conf, int argc, char **argv)
-{
- int i;
- pkg_t *pkg;
-
- global_conf = conf;
- signal(SIGINT, sigint_handler);
-
- pkg_info_preinstall_check(conf);
-
- for (i=0; i < argc; i++) {
- if (conf->restrict_to_default_dest) {
- pkg = pkg_hash_fetch_installed_by_name_dest(&conf->pkg_hash,
- argv[i],
- conf->default_dest);
- } else {
- pkg = pkg_hash_fetch_installed_by_name(&conf->pkg_hash, argv[i]);
- }
-
- if (pkg == NULL) {
- opkg_message(conf, OPKG_ERROR,
- "Package %s is not installed.\n", argv[i]);
- continue;
- }
- opkg_purge_pkg(conf, pkg);
- }
-
- write_status_files_if_changed(conf);
- return 0;
-}
-
static int opkg_flag_cmd(opkg_conf_t *conf, int argc, char **argv)
{
int i;
( strcmp(flags,"user")==0)||( strcmp(flags,"ok")==0)) {
pkg->state_flag = pkg_state_flag_from_str(flags);
}
-/* pb_ asked this feature 03292004 */
-/* Actually I will use only this two, but this is an open for various status */
+
+ /*
+ * Useful if a package is installed in an offline_root, and
+ * should be configured by opkg-cl configure at a later date.
+ */
if (( strcmp(flags,"installed")==0)||( strcmp(flags,"unpacked")==0)){
pkg->state_status = pkg_state_status_from_str(flags);
}
+
opkg_state_changed++;
opkg_message(conf, OPKG_NOTICE,
"Setting flags for package %s to %s\n",