razor_transaction_remove_package(trans, package);
razor_package_iterator_destroy(pi);
- if (!option_nodeps) {
- if (razor_transaction_describe(trans) > 0) {
- printf("unsatisfied dependencies.\n");
- exit(1);
- }
+ if (!option_nodeps && razor_transaction_describe(trans) > 0) {
+ printf("unsatisfied dependencies.\n");
+ exit(1);
}
if (option_test)
}
static void
+install_package(const char *name,
+ const char *old_version, const char *new_version,
+ const char *arch, void *data)
+{
+ if (new_version)
+ printf("install %s-%s.%s\n", name, new_version, arch);
+}
+
+static void
command_install(int argc, const char *argv[])
{
struct razor_set *set, *upstream, *next;
razor_transaction_install_package(trans, package);
razor_package_iterator_destroy(pi);
- razor_transaction_describe(trans);
+ if (!option_nodeps && razor_transaction_describe(trans) > 0) {
+ printf("unsatisfied dependencies.\n");
+ exit(1);
+ }
+
+ if (option_test)
+ exit(0);
+
next = razor_transaction_finish(trans);
+
+ if (!option_justdb)
+ razor_set_diff(set, next, install_package, NULL);
+
razor_set_destroy(set);
razor_set_destroy(upstream);
}
static void
+update_package(const char *name,
+ const char *old_version, const char *new_version,
+ const char *arch, void *data)
+{
+ if (old_version)
+ printf("remove %s-%s.%s\n", name, old_version, arch);
+ if (new_version)
+ printf("install %s-%s.%s\n", name, new_version, arch);
+}
+
+static void
command_update(int argc, const char *argv[])
{
struct razor_set *set, *upstream, *next;
razor_transaction_update_package(trans, package);
razor_package_iterator_destroy(pi);
- razor_transaction_describe(trans);
+ if (!option_nodeps && razor_transaction_describe(trans) > 0) {
+ printf("unsatisfied dependencies.\n");
+ exit(1);
+ }
+
+ if (option_test)
+ exit(0);
+
next = razor_transaction_finish(trans);
+
+ if (!option_justdb)
+ razor_set_diff(set, next, update_package, NULL);
+
razor_set_destroy(set);
razor_set_destroy(upstream);