X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=libopkg%2Fopkg.h;h=b39f7fbe32b1beb5c0ecd82bfb37d1d927c2bcaf;hb=72d53fc301af46caffe7752e020dfe853c3f35a5;hp=d399948e567a6e530467353ddaeaec6b6255bee6;hpb=8261c5aeb2e39f0bda4f30a53b34303f151a4da3;p=oweals%2Fopkg-lede.git diff --git a/libopkg/opkg.h b/libopkg/opkg.h index d399948..b39f7fb 100644 --- a/libopkg/opkg.h +++ b/libopkg/opkg.h @@ -15,12 +15,47 @@ General Public License for more details. */ -typedef struct _opkg_t opkg_t; - -opkg_t* opkg_new (); -void opkg_free (opkg_t *opkg); -int opkg_install_package (opkg_t *opkg, char *package_name); -int opkg_remove_package (opkg_t *opkg, char *package_name); -int opkg_upgrade_package (opkg_t *opkg, char *package_name); -int opkg_upgrade_all (opkg_t *opkg); -int opkg_update_package_lists (opkg_t *opkg); +#ifndef OPKG_H +#define OPKG_H + +#include "pkg.h" +#include "opkg_message.h" + +typedef struct _opkg_progress_data_t opkg_progress_data_t; + +typedef void (*opkg_progress_callback_t) (const opkg_progress_data_t *progress, void *user_data); +typedef void (*opkg_package_callback_t) (pkg_t *pkg, void *user_data); + +enum _opkg_action_t +{ + OPKG_INSTALL, + OPKG_REMOVE, + OPKG_DOWNLOAD +}; + +struct _opkg_progress_data_t +{ + int percentage; + int action; + pkg_t *pkg; +}; + +int opkg_new (void); +void opkg_free (void); +int opkg_re_read_config_files (void); +void opkg_get_option (char *option, void **value); +void opkg_set_option (char *option, void *value); + +int opkg_install_package (const char *package_name, opkg_progress_callback_t callback, void *user_data); +int opkg_remove_package (const char *package_name, opkg_progress_callback_t callback, void *user_data); +int opkg_upgrade_package (const char *package_name, opkg_progress_callback_t callback, void *user_data); +int opkg_upgrade_all (opkg_progress_callback_t callback, void *user_data); +int opkg_update_package_lists (opkg_progress_callback_t callback, void *user_data); + +int opkg_list_packages (opkg_package_callback_t callback, void *user_data); +int opkg_list_upgradable_packages (opkg_package_callback_t callback, void *user_data); +pkg_t* opkg_find_package (const char *name, const char *version, const char *architecture, const char *repository); + +int opkg_repository_accessibility_check(void); + +#endif /* OPKG_H */