]> git.ipfire.org Git - pakfire.git/commitdiff
update: Try to update all packages if none are given on CLI
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 4 Jul 2021 11:23:03 +0000 (11:23 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Sun, 4 Jul 2021 11:23:03 +0000 (11:23 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/include/pakfire/request.h
src/libpakfire/pakfire.c
src/libpakfire/request.c
src/pakfire/cli.py

index cafb7bfcfc49f60539d891ecb392be56bb2d7d2c..71bee559334cf893d35ce9451c321b9227e5c384 100644 (file)
@@ -59,7 +59,7 @@ int pakfire_request_erase_package(struct pakfire_request* request, struct pakfir
 int pakfire_request_update(struct pakfire_request* request, const char* what, int flags);
 int pakfire_request_update_package(struct pakfire_request* request, struct pakfire_package* package);
 
-int pakfire_request_update_all(struct pakfire_request* request);
+int pakfire_request_update_all(struct pakfire_request* request, int flags);
 int pakfire_request_sync(struct pakfire_request* request, int flags);
 
 int pakfire_request_lock(struct pakfire_request* request, const char* what);
index 410d19b11c3e1e60024f2501b77bca9237bc312b..19f6372e5a6cbbabe5f61ca57fa86eadc499f60a 100644 (file)
@@ -1684,12 +1684,6 @@ PAKFIRE_EXPORT int pakfire_erase(Pakfire pakfire, const char** packages,
                locks, flags, changed);
 }
 
-PAKFIRE_EXPORT int pakfire_update(Pakfire pakfire, const char** packages,
-               const char** locks, int flags, int* changed) {
-       return pakfire_perform_transaction(pakfire, pakfire_request_update, packages,
-               locks, flags, changed);
-}
-
 static int pakfire_perform_transaction_simple(Pakfire pakfire,
                int (*action)(struct pakfire_request* request, int flags),
                int flags, int* changed) {
@@ -1771,6 +1765,18 @@ ERROR:
        return r;
 }
 
+PAKFIRE_EXPORT int pakfire_update(Pakfire pakfire, const char** packages,
+               const char** locks, int flags, int* changed) {
+       // If no packages are being passed, we will try to update everything
+       // XXX add locks
+       if (!packages)
+               return pakfire_perform_transaction_simple(
+                       pakfire, pakfire_request_update_all, flags, changed);
+
+       return pakfire_perform_transaction(pakfire, pakfire_request_update, packages,
+               locks, flags, changed);
+}
+
 static int pakfire_verify(Pakfire pakfire, int *changed) {
        return pakfire_perform_transaction_simple(pakfire, pakfire_request_verify, 0, changed);
 }
index 7857390e6fe45c2cef505b270b6099f7e7ccedaf..6d372500643e769e09a6b526ea23c858c317d08a 100644 (file)
@@ -538,8 +538,8 @@ PAKFIRE_EXPORT int pakfire_request_update_package(
        return pakfire_request_add_package(request, SOLVER_UPDATE, package, 0);
 }
 
-PAKFIRE_EXPORT int pakfire_request_update_all(struct pakfire_request* request) {
-       queue_push2(&request->jobs, SOLVER_SOLVABLE_ALL|SOLVER_UPDATE, 0);
+PAKFIRE_EXPORT int pakfire_request_update_all(struct pakfire_request* request, int flags) {
+       queue_push2(&request->jobs, SOLVER_SOLVABLE_ALL|SOLVER_UPDATE|erase_flags(flags), 0);
 
        return 0;
 }
index b52a3acd6d1b94ed1adb337a6e08b1aa7cd8cc63..271424f24faa12c6608e706d9aad91228dca68ac 100644 (file)
@@ -261,8 +261,8 @@ class Cli(object):
                p.update(
                        ns.package,
                        excludes=ns.exclude,
-                       allow_archchange=ns.allow_archchange,
-                       allow_vendorchange=ns.allow_vendorchange,
+                       #allow_archchange=ns.allow_archchange,
+                       #allow_vendorchange=ns.allow_vendorchange,
                )
 
        def handle_sync(self, ns):