Fix "The repository '...' does not have a Release file" in apt

Quick fix

Find the repository named in the error and remove or fix it. It is usually a PPA or third-party repo that has no packages for your release:

lsb_release -cs                         # your release codename
grep -ril 'ppa.launchpadcontent.net/OWNER' /etc/apt/sources.list.d/
sudo add-apt-repository --remove ppa:OWNER/NAME
sudo apt update

If the failing URL is the official archive (archive.ubuntu.com or deb.debian.org), your release is probably end-of-life. Upgrade it, or point it at the archive server as shown below.

What the error means

Ign:6 https://ppa.launchpadcontent.net/someone/tool/ubuntu resolute InRelease
Err:7 https://ppa.launchpadcontent.net/someone/tool/ubuntu resolute Release
  404  Not Found [IP: 185.125.190.80 443]
E: The repository 'https://ppa.launchpadcontent.net/someone/tool/ubuntu resolute Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Every APT repository publishes a Release (or signed InRelease) file per release that lists and checksums its package indexes. apt asks for dists/CODENAME/InRelease at the URL in your sources. A 404 means that path does not exist: the repository has nothing for that codename, the URL is wrong, or it was taken down. apt then disables the repository, so apt update fails while everything else still works.

The variant no longer has a Release file means apt had a Release file from this URL before and now it is gone, which points at an end-of-life release or a deleted repository.

Cause 1: a PPA that does not support your release

Very common right after upgrading to a new Ubuntu release such as 26.04 "resolute": PPA owners take time to build for new series, and some never do. Check the PPA's Launchpad page for resolute. If it is not there:

ls /etc/apt/sources.list.d/
sudo add-apt-repository --remove ppa:someone/tool
# or delete the file directly
sudo rm /etc/apt/sources.list.d/someone-ubuntu-tool-resolute.sources
sudo apt update

Then install the official package, a Flatpak, or a Snap instead. Packages you installed from the PPA stay installed; ppa-purge can revert them to official versions before you remove the PPA.

Cause 2: a wrong codename or URL in your sources

A typo, a codename from another distribution, or a vendor repo that uses a fixed suite name. Mint users hit this when they put Mint's codename (zena) into an Ubuntu repo line instead of noble. Check every source:

grep -rh -E '^(URIs|Suites|deb )' /etc/apt/sources.list /etc/apt/sources.list.d/ 2>/dev/null

Open the repository URL in a browser and browse to dists/: the folder names there are the valid suites. Many vendor repos use stable or a single name rather than your codename. Fix the Suites: line (deb822) or the third field of a deb line, then sudo apt update.

Cause 3: your Ubuntu release is end-of-life

E: The repository 'http://archive.ubuntu.com/ubuntu questing Release' no longer has a Release file.

Canonical removes interim releases from the main mirrors after end of life. Ubuntu 25.10 "questing" reached EOL in July 2026, so a 25.10 system now gets this error for the main archive and security pockets. The right fix is to upgrade to a supported release (26.04 LTS). To do that, or to keep the system limping along briefly, first point apt at old-releases.ubuntu.com:

sudo sed -i -e 's|http://[a-z.]*archive.ubuntu.com|http://old-releases.ubuntu.com|g' \
  -e 's|http://security.ubuntu.com|http://old-releases.ubuntu.com|g' \
  /etc/apt/sources.list.d/ubuntu.sources
sudo apt update
sudo apt install update-manager-core
sudo do-release-upgrade

On older systems the file is /etc/apt/sources.list instead of ubuntu.sources. The Ubuntu upgrade guide covers the upgrade itself, and Linux release cycles lists support dates. Note that an EOL release gets no security updates even from old-releases.

Cause 4: an old Debian release moved to archive.debian.org

Debian moves releases to archive.debian.org after their LTS period ends. Old images still pointing at deb.debian.org for, say, stretch (Debian 9) fail with "does not have a Release file". Change the URLs and remove any -updates or -backports lines:

deb http://archive.debian.org/debian stretch main contrib non-free
deb http://archive.debian.org/debian-security stretch/updates main contrib non-free

Then plan an upgrade: Debian 13 "trixie" is current stable and Debian 12 "bookworm" is in LTS. See upgrading Debian 12 to 13.

Cause 5: a network, proxy or mirror problem

If the official archive fails on a supported release, the problem is on the path to it: a mirror mid-sync, a captive portal returning an HTML page, a proxy, or a broken local mirror (xx.archive.ubuntu.com). Test the exact URL:

curl -sI http://archive.ubuntu.com/ubuntu/dists/resolute/InRelease | head -1

Example output when the archive is fine:

HTTP/1.1 200 OK

If you get a 404 from a country mirror but 200 from archive.ubuntu.com, switch mirrors in the URIs: line. If curl cannot connect at all, check DNS and the network first.

  • Release file for ... is not valid yet (invalid for another 3h): your clock is wrong. Run sudo timedatectl set-ntp true.
  • Repository '...' changed its 'Suite' value from 'testing' to 'stable': a Debian release happened. Accept it with sudo apt update and answer y, or sudo apt-get update --allow-releaseinfo-change.
  • NO_PUBKEY or Missing key: the Release file exists but its signing key is missing; see fixing NO_PUBKEY errors.

How to prevent it

  • Before a release upgrade, remove PPAs and check that each third-party repo supports the new release.
  • Stay on LTS or supported releases; interim Ubuntu releases get only nine months of updates.
  • Prefer vendor repos that publish a *-keyring package and a stable suite name, so release upgrades do not break them.
  • Fedora and openSUSE report the same situation differently; on Fedora see "Failed to download metadata for repo".

Frequently asked questions

What does "no longer has a Release file" mean?

The repository used to exist for your release but has been removed. For the official Ubuntu archive that means your release is end-of-life and has moved to old-releases.ubuntu.com; for a PPA it means the owner deleted that series.

How do I check if a PPA supports my Ubuntu version?

Open the PPA's Launchpad page and look at the package list filter or the "Technical details about this PPA" section; it lists the series it has packages for, such as resolute or noble.

Can I point a PPA at an older Ubuntu codename?

It sometimes works for simple packages, but the packages were built against the older release's libraries and can cause dependency problems. Prefer waiting for the PPA to add your release, or use a Flatpak or Snap.

What about "Release file ... is not valid yet"?

That is a clock problem: your system time is behind the repository's timestamp. Enable time sync with sudo timedatectl set-ntp true and retry.

Spotted a mistake or a command that no longer works? Send a correction — pages are re-checked when reports come in.