Skip to content

Weg für Apps finden, deren Übernahme Homebrew verweigert #11

Description

@trsdn

Sechs Apps des Referenzsystems bekommen ein erkanntes Update angezeigt, das OpenFreshr nicht ausführen kann:

Amazon Photos, Hermes, MediathekView, OpenSCAD, Raspberry Pi Imager, VueScan

Ursache

Diese Casks tragen auto_updates == false, und die installierte Version weicht von der Cask-Version ab. Homebrew verweigert dann die Übernahme mit einem CaskError — der Versionsvergleich über CFBundleShortVersionString und CFBundleVersion schlägt fehl.

Das ist eine Schutzfunktion, kein Hindernis: Homebrew kann nicht sicherstellen, dass die App auf der Platte wirklich die ist, für die es das Cask hält.

Mit --force liesse sich die Prüfung umgehen. Das kommt in diesem Code nicht vor und soll auch nicht kommen — es würde genau die Sicherheitsgarantie aushebeln, die den Copilot-Fehlmatch verhindert.

Aktueller Umgang

Die App sagt vorher, dass die Übernahme scheitern wird, statt den Nutzer in einen Fehlschlag laufen zu lassen, und verweist auf ein Update über den Hersteller.

Mögliche Wege

  • Prüfen, ob ein Sparkle-Feed dieser Apps einen sauberen Weg bietet — mehrere bringen einen mit
  • Prüfen, ob eine Neuinstallation nach vorheriger Deinstallation vertretbar ist, mit deutlicher Warnung und ohne Datenverlust
  • Deklarative Fallback-Rezepte nach dem Vorbild von chenasraf/OpenUpdater (check per JSON-Pfad oder HTML-Pattern, download, arch, channels)
  • Oder bewusst dabei bleiben, es nur anzuzeigen — das ist eine legitime Entscheidung

Die Entscheidung sollte messen, wie viele Apps real betroffen sind, bevor Aufwand hineinfliesst.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions