diff --git a/update.yaml b/update.yaml
index 5b9bc1a7ca3e676d66cbde01c45a4e69764a94bb..dec31bb8b4e8bb331d5129f761364cbb8f90cfc5 100644
--- a/update.yaml
+++ b/update.yaml
@@ -29,27 +29,31 @@
           register: fwupdmgr
           changed_when: fwupdmgr.stdout_lines|length > 0
 
-        - name: Update Flatpaks appstream
-          command:
-            cmd: flatpak update --appstream
-          ignore_errors: true
-          changed_when: false
+        - name: Gather package facts
+          package_facts:
 
         - name: Update Flatpaks
-          command:
-            cmd: flatpak update --assumeyes
-          register: flatpak_update
-          ignore_errors: true
-          changed_when: |-
-            "Nothing to do" not in flatpak_update.stdout
-
-        - name: Remove unused Flatpaks
-          command:
-            cmd: flatpak uninstall --unused --assumeyes
-          register: flatpak_unused
-          ignore_errors: true
-          changed_when: |-
-            "Nothing" not in flatpak_unused.stdout
+          when: |-
+            'flatpak' in ansible_facts.packages
+          block:
+            - name: Update Flatpaks appstream
+              command:
+                cmd: flatpak update --appstream
+              changed_when: false
+
+            - name: Update Flatpaks
+              command:
+                cmd: flatpak update --assumeyes
+              register: flatpak_update
+              changed_when: |-
+                "Nothing to do" not in flatpak_update.stdout
+
+            - name: Remove unused Flatpaks
+              command:
+                cmd: flatpak uninstall --unused --assumeyes
+              register: flatpak_unused
+              changed_when: |-
+                "Nothing" not in flatpak_unused.stdout
 
         - name: Set reboot needed fact
           set_fact: