Table of Contents

Ubuntu — Mirror Configuration

The local mirror covers Ubuntu 20.04 (Focal Fossa), Ubuntu 22.04 (Jammy Jellyfish), Ubuntu 24.04 (Noble Numbat), Ubuntu 26.04 LTS (Resolute Raccoon) for amd64. Security updates, backports, and all components (main, restricted, universe, multiverse) are included.

<WRAP important> Now matches the real Ubuntu archive layout. The mirror uses a single shared root (/ubuntu/dists/, /ubuntu/pool/) across every release, exactly like archive.ubuntu.com. Point your client at https://mirror.nplab.bth.se/ubuntu/ the same way you would at the upstream archive — just swap the host. No per-release path segment, and nothing to reconfigure when a new release is added. </WRAP>

Recommended: shared-root configuration

Ubuntu 24.04+ (Noble, Resolute) — deb822 format. Replace /etc/apt/sources.list.d/ubuntu.sources:

Types: deb
URIs: https://mirror.nplab.bth.se/ubuntu/
Suites: <release> <release>-updates <release>-backports <release>-security
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Ubuntu 20.04 / 22.04 (Focal, Jammy) — classic sources.list format. Replace /etc/apt/sources.list:

deb https://mirror.nplab.bth.se/ubuntu <release> main restricted universe multiverse
deb https://mirror.nplab.bth.se/ubuntu <release>-updates main restricted universe multiverse
deb https://mirror.nplab.bth.se/ubuntu <release>-backports main restricted universe multiverse
deb https://mirror.nplab.bth.se/ubuntu <release>-security main restricted universe multiverse

Replace <release> with focal, jammy, noble, or resolute — same URL for all of them. This is exactly what the downloadable config files below contain.

Legacy: per-release URLs (outdated)

<WRAP alert> Outdated — do not use for new installs. Kept only so nodes already configured against the old per-release URLs (e.g. /ubuntu/jammy/dists/…) keep working. An nginx rewrite transparently maps these onto the shared root above, so the content is identical and always current — but new installs should use the shared-root configuration instead. </WRAP>

Types: deb
URIs: https://mirror.nplab.bth.se/ubuntu/<release>/
Suites: <release> <release>-updates <release>-backports <release>-security
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Release Reference

Codename Version Format Shared-root URL (recommended) Config File
focal 20.04 LTS sources.list https://mirror.nplab.bth.se/ubuntu/ focal.list
jammy 22.04 LTS sources.list https://mirror.nplab.bth.se/ubuntu/ jammy.list
noble 24.04 LTS deb822 https://mirror.nplab.bth.se/ubuntu/ noble.sources
resolute 26.04 LTS deb822 https://mirror.nplab.bth.se/ubuntu/ resolute.sources

Download and apply (run as root):

Focal / Jammy:

curl -o /etc/apt/sources.list https://mirror.nplab.bth.se/configs/ubuntu/jammy.list
apt-get update

Noble / Resolute:

curl -o /etc/apt/sources.list.d/ubuntu.sources https://mirror.nplab.bth.se/configs/ubuntu/noble.sources
apt-get update

Notes