// SPDX-License-Identifier: LGPL-2.1-or-later import cockpit from "cockpit"; import '../lib/patternfly/patternfly-6-cockpit.scss'; document.addEventListener("DOMContentLoaded", () => { const proxy = cockpit.dbus(null, { bus: "internal" }).proxy("cockpit.Packages", "/packages"); let manifests; function update(str) { const new_m = JSON.parse(str); if (manifests) { for (const p in new_m) { if (!manifests[p]) console.log("ADD", p); else if (manifests[p].checksum !== new_m[p].checksum) console.log("CHG", p); } for (const p in manifests) { if (!new_m[p]) console.log("REM", p); } } manifests = new_m; } const debug_manifest_changes = false; proxy.wait(function () { document.body.removeAttribute("hidden"); if (debug_manifest_changes) { update(proxy.Manifests); proxy.addEventListener("changed", () => update(proxy.Manifests)); } document.getElementById("reload").addEventListener("click", () => { proxy.Reload() .catch(error => console.log("ERROR", error)); }); }); });