Новый формат DEB822 для источников APTС выходом Debian 13 многие пользователи могли заметить новый формат источников APT – DEB822, еще раньше с ним столкнулись пользователи Ubuntu, где он применяется начиная с Ubuntu 24.04.
Почему DEB822? Название происходит от RFC 822, который описывает текстовый формат структуры ключ-значение.
Новый формат предусматривает описание источников APT в файлах
.source расположенных в
/etc/apt/sources.list.d и теперь записи в них выглядят так:
Types: deb deb-src
URIs: http://deb.debian.org/debian/
Suites: trixie
Components: main non-free-firmware contrib non-free
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Это пример записи для Debian 13, разберем основные опции нового формата:
🔹
Types: - тип репозитория, может принимать два значения: deb и deb-src, бинарные пакеты и исходный код.
🔹
URIs: адреса репозиториев, поддерживается HTTP(S), FTP и файловая система (для репозиториев на диске или в папке).
🔹
Suites: выпуск, указываем кодовое имя дистрибутива, для Debian можно также использовать stable, testing и т.д.
🔹
Components: компоненты репозитория. Тут тоже все понятно.
👆 Эти четыре опции
обязательны. Остальные могут добавляться по желанию и необходимости.
🔹
Signed-By: ключ для проверки подписей репозитория. К этому все идет уже давно, дистрибутивы отказываются от apt-key и переходят к персональным подписям. Это правильно, так как серьезно повышает безопасность.
❓ Какие еще опции могут оказаться полезны?
🔹
Enabled – по умолчанию имеет значение
yes, но вы можете указать явно
no чтобы выключить источник, не комментируя и не удаляя строки.
🔹
Trusted – позволяет сделать источник доверенным (
yes), что может пригодиться для собственных локальных репозиториев. Если установить его в значение
no, то репозиторий перестанет считаться доверенным, даже если мы успешно проверили его подпись. По умолчанию не задан.
🔹
Architectures – определят для каких архитектур источника будут загружены индексные файлы, если эта опция явно не указана, то используются все доступные архитектуры. Может быть полезна если вы подключили какой-то специфический источник и вам оттуда нужны только, скажем,
i386 пакеты.
🔹
Check-Valid-Until – контролирует срок действия загруженных индексных файлов, что позволяет избежать атак класса
Replay Attacks однако для ряда репозиториев которые не обновляются (например, архивные репозитории Debian) эту опцию следует отключить (по умолчанию включена).
🔹
Valid-Until-Min / Valid-Until-Max – задают минимальный и максимальный срок «годности» репозитория, используются совместно с
Check-Valid-Until, могут быть полезны для редко обновляющихся репозиториев или тех, кто не указывает «срок годности».
🔹
X-Repolib-Name – используется только графическими инструментами и позволяет указать человекопонятное имя источника.
На первый взгляд данный формат может выглядеть непривычно, но он улучшает читабельность и упрощает управление источниками.
DEB822 поддерживается начиная с Debian 9 и Ubuntu 20.04, однако по умолчанию применяется начиная c Debian 13 и Ubuntu 24.04, в современных системах для конвертации источников в новый формат можно выполнить команду:
apt modernize-sources
✅ Более подробно со всеми опциями формата вы можете ознакомиться на официальной MAN-странице:
https://manpages.debian.org/stretch/apt/sources.list.5.en.html