diff options
author | Timo Teräs <timo.teras@iki.fi> | 2020-02-14 13:49:41 +0200 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2020-02-14 16:49:55 +0200 |
commit | 60b87557e57ca4e23126bf8c25b1cb978e380dfd (patch) | |
tree | ca2469a61c3badb5f4054f387b7059c2bb6c5db7 /src/app_update.c | |
parent | 72be8139303d55463e470ee608a27eb4af950aff (diff) | |
download | apk-tools-60b87557e57ca4e23126bf8c25b1cb978e380dfd.tar.gz apk-tools-60b87557e57ca4e23126bf8c25b1cb978e380dfd.tar.bz2 apk-tools-60b87557e57ca4e23126bf8c25b1cb978e380dfd.tar.xz apk-tools-60b87557e57ca4e23126bf8c25b1cb978e380dfd.zip |
rename all applets sources to app_*.c
Diffstat (limited to 'src/app_update.c')
-rw-r--r-- | src/app_update.c | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/app_update.c b/src/app_update.c new file mode 100644 index 0000000..bbb2b09 --- /dev/null +++ b/src/app_update.c @@ -0,0 +1,57 @@ +/* app_update.c - Alpine Package Keeper (APK) + * + * Copyright (C) 2005-2008 Natanael Copa <n@tanael.org> + * Copyright (C) 2008-2011 Timo Teräs <timo.teras@iki.fi> + * All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. See http://www.gnu.org/ for details. + */ + +#include <stdio.h> +#include "apk_defines.h" +#include "apk_applet.h" +#include "apk_database.h" +#include "apk_version.h" +#include "apk_print.h" + +static int update_main(void *ctx, struct apk_database *db, struct apk_string_array *args) +{ + struct apk_repository *repo; + int i; + char buf[32] = "OK:"; + + if (apk_verbosity < 1) + return db->repo_update_errors; + + for (i = 0; i < db->num_repos; i++) { + repo = &db->repos[i]; + + if (APK_BLOB_IS_NULL(repo->description)) + continue; + + apk_message(BLOB_FMT " [%s]", + BLOB_PRINTF(repo->description), + db->repos[i].url); + } + + if (db->repo_update_errors != 0) + snprintf(buf, sizeof(buf), "%d errors;", + db->repo_update_errors); + apk_message("%s %d distinct packages available", buf, + db->available.packages.num_items); + + return db->repo_update_errors; +} + +static struct apk_applet apk_update = { + .name = "update", + .open_flags = APK_OPENF_WRITE, + .forced_force = APK_FORCE_REFRESH, + .command_groups = APK_COMMAND_GROUP_SYSTEM, + .main = update_main, +}; + +APK_DEFINE_APPLET(apk_update); + |