The Forced Update Frustration
Unlike traditional APT packages (where you control exactly when sudo apt upgrade runs), Canonical designed the Snap package manager to aggressively update software in the background automatically. By default, the snapd daemon checks for updates four times a day. If an update is found, it downloads and installs it silently. While this ensures you always have the latest security patches, it can break your workflow. If a developer pushes a buggy update to a critical tool you rely on, Snap will force that broken update onto your machine without asking, potentially ruining your workday.
How to Delay Snap Updates
Canonical intentionally removed the ability to completely disable Snap updates forever, but you can use the terminal to heavily restrict the update window or delay updates for months at a time.
To restrict updates to a specific time (e.g., Sunday at 2:00 AM so it never interrupts your work):
1. Open your terminal.
2. Type the following command and press Enter:sudo snap set system refresh.timer=sun,02:00
To pause all Snap updates entirely for the maximum allowed limit (90 days):
1. In the terminal, type this command and press Enter:sudo snap set system refresh.hold="$(date --date='+90 days' +%Y-%m-%dT%H:%M:%S%:z)"
Managing Specific App Versions
If you absolutely need a specific application (like a database tool or a development IDE) to remain on an older, stable version indefinitely, the best solution is to completely remove the Snap version and install the traditional APT package or download an AppImage. Because Snap is fundamentally designed as an always-updating rolling release system, fighting its update daemon is a constant, losing battle. Using traditional package managers gives you complete, absolute control over your software versions.