Running Linux servers has made me suspicious of the single “Update” button. Before every major self-hosted application upgrade, I want an operator-readable permission and dependency diff: new outbound destinations, telemetry, Linux capabilities, background services, changed volumes or permissions, database migrations, and added or removed third-party dependencies.
A small Nextcloud homelab server is a good example. If an upgrade includes database and app migrations, I should see that clearly and be reminded that a current backup matters—not discover it halfway through a maintenance window. Today, the practical pattern is often approving first and learning about changed behavior afterward.
I realize maintaining accurate manifests would burden small open-source projects, especially when dependencies and container settings move quickly. But even a limited, machine-readable declaration would be better than silence. Should this become a packaging standard, a project best practice, or is it unnecessary bureaucracy?