Debian packages: Работа с пакетами [Мозаика системного администрирования]
Работа с пакетами [Мозаика системного администрирования]
Debian Backports
Установка
1. Нужно добавить репозиторий в /etc/apt/sources.list
, подробности: deb-multimedia
- etc/apt/sources.list.d/deb-multimedia.list
# deb http://www.deb-multimedia.org stable main non-free deb http://www.deb-multimedia.org stable-backports main
2. Обновить список пакетов:
apt-get -u update apt-get install deb-multimedia-keyring
dpkg --add-architecture i386 && apt update
Файл: /etc/apt/apt.conf
APT::Get::Show-Upgraded "true"; | Для того, чтобы всегда перечислять обновляемые пакеты и запрашивать подтверждение у пользователя |
Acquire::http::Proxy "http://proxy:3128"; | Работа через прокси |
Локальная документация: /usr/share/doc/Debian/apt-howto
Основной файл: /etc/apt/sourcs.list
Области:
main
contrib
non-free
— для «несвободных» пакетов, например для пакетов с драйверами, прошивками
wheezy
- sourcs.list
# deb http://mirror.mephi.ru/debian wheezy-backports main contrib non-free deb-src http://mirror.mephi.ru/debian wheezy-backports main contrib non-free deb http://ftp.ru.debian.org/debian/ wheezy main contrib non-free deb-src http://ftp.ru.debian.org/debian/ wheezy main contrib non-free deb http://security.debian.org/ wheezy/updates main contrib non-free deb-src http://security.debian.org/ wheezy/updates main contrib non-free deb http://ftp.ru.debian.org/debian/ wheezy-updates main contrib non-free deb-src http://ftp.ru.debian.org/debian/ wheezy-updates main contrib non-free
31 мая 2018 перекрещена поддержка Debian Wheezy, поэтому необходимо изменить адреса серверов обновлений:
- sourcs.list
deb http://archive.debian.org/debian/ wheezy main deb-src http://archive.debian.org/debian/ wheezy main deb http://security.debian.org/ wheezy/updates main contrib deb-src http://security.debian.org/ wheezy/updates main contrib
и выполнить обновление списка пакетов командой:
apt-get -u update
Debian прекратили поддержку Debian 7 Wheezy | Web hosting software
jessie
- sources.list
# deb http://ftp.ru.debian.org/debian/ jessie main contrib non-free deb-src http://ftp.ru.debian.org/debian/ jessie main contrib non-free deb http://security.debian.org/ jessie/updates main contrib non-free deb-src http://security.debian.org/ jessie/updates main contrib non-free deb http://ftp.ru.debian.org/debian/ jessie-proposed-updates main contrib non-free deb-src http://ftp.ru.debian.org/debian/ jessie-proposed-updates main contrib non-free deb http://ftp.ru.debian.org/debian/ jessie-backports main contrib non-free deb-src http://ftp.ru.debian.org/debian/ jessie-backports main contrib non-free
Вариант работы с архивом:
- sources.list
# deb http://archive.debian.org/debian/ jessie main deb-src http://archive.debian.org/debian/ jessie main deb http://security.debian.org/ jessie/updates main contrib deb-src http://security.debian.org/ jessie/updates main contrib
stretch
- sources.list
# deb http://ftp.ru.debian.org/debian/ stretch main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch main contrib non-free deb http://security.debian.org/ stretch/updates main contrib non-free deb-src http://security.debian.org/ stretch/updates main contrib non-free deb http://ftp.ru.debian.org/debian/ stretch-proposed-updates main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch-proposed-updates main contrib non-free deb http://ftp.ru.debian.org/debian/ stretch-backports main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch-backports main contrib non-free deb http://ftp.ru.debian.org/debian/ stretch-backports-sloppy main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch-backports-sloppy main contrib non-free
buster
- sources.list
# deb http://mirror.yandex.ru/debian buster main deb-src http://mirror.yandex.ru/debian buster main deb http://mirror.yandex.ru/debian buster-updates main deb-src http://mirror.yandex.ru/debian buster-updates main deb http://security.debian.org/ buster/updates main deb-src http://security.debian.org/ buster/updates main
Список URL
Список URL, например для работы через Squid
security.debian.org security-cdn.debian.org ftp.ru.debian.org http.us.debian.org us.debian.org keys.gnupg.net mirror.mephi.ru cdn.debian.net debian.nsu.ru mirror.yandex.ru
apt-get install debian-keyring debian-archive-keyring apt-key update
apt-get -u upgrade
Команда обновляет все установленные пакеты, но не удаляет пакеты для разрешения зависимостей
apt-get -u dist-upgrade
Обновление всех установленных пакетов с удалением или установкой пакетов по мере необходимости для разрешения всех зависимостей
apt-get update apt-get -u upgrade
apt-get install ИМЯ_ПАКЕТА
Установка только самого пакета, без рекомендованных других пакетов:
apt-get install ИМЯ_ПАКЕТА --no-install-recommends
apt-get -t ИМЯ_РЕПОЗИТОРИЯ install ИМЯ_ПАКЕТА
apt-get remove ИМЯ_ПАКЕТА
apt-get autoclean apt-get autoremove
Удаление всех пакетов из папки /var/cache/apt/archives
apt-get clean
apt-cache show ИМЯ_ПАКЕТА|grep Version
dpkg-reconfigure ИМЯ_ПАКЕТА
С версиями и описанием:
dpkg -l
Список только названий:
dpkg --get-selections
apt-cache search ИМЯ_ПАКЕТА
В случае возникновения ошибки:
E: Пакет <имя пакета> нуждается в переустановке, но найти архив для него не удалось
Нужно удалить информацию от этом пакете в файле /var/lib/dpkg/status
Проблема с обновлением jessie 2019-03
Установка пакета
dpkg -i ИМЯ_ПАКЕТА.deb
Если в процессе установки появится ошибка, что нет необходимых пакетов, то запускаем команду:
apt-get install -f или apt-get --fix-broken install или aptitude -f install |
после этого нужно выполнить установку пакета повторно.
Удаление пакета
dpkg -r ИМЯ_ПАКЕТА.deb
debian/packages.txt · Последние изменения: 2020-09-07 11:25 — GreyWolf
Список установленных пакетов Debian | Losst
Иногда возникают ситуации, когда нужно узнать какие пакеты установлены в системе. Это может понадобиться если вы хотите сделать резервную копию установленных пакетов, проверить их целостность, перенести все пакеты в другую систему и для решения многих других задач. В Debian для этого можно использовать несколько методов.
В сегодняшней статье мы рассмотрим как посмотреть список установленных пакетов Debian с помощью терминала, в интерфейсе curses, а также в графическом интерфейсе. Такие списки можно использовать не только для резервного копирования, но и для того, чтобы просто перебрать и удалить ненужные программы, тем самым очистив систему от мусора.
Содержание статьи:
Список установленных пакетов Debian
Самый первый способ посмотреть установленные пакеты Debian, это утилита dpkg. Она может применяться не только в Debian, а во всех, основанных на нем дистрибутивах:
dpkg --get-selections | grep -v deinstall
Полученный список можно сразу же сохранить в файл, чтобы потом его использовать:
dpkg --get-selections | grep -v deinstall > mylist.txt
Можно также убрать всю лишнюю информацию и сохранить только имена пакетов:
dpkg -l | grep ^ii | awk '{ print $2}' > mylist.txt
Следующий способ решения этой задачи — использование утилиты dpkg-query. Она похожа на предыдущий вариант, но немного проще. Такая команда отобразит все установленные пакеты вместе с информацией о них:
dpkg-query -l
Здесь тоже можно выбрать только имена пакетов с помощью опции -f:
dpkg-query -f '${binary:Package}\n' -W
Третий метод — это утилита apt, которой мы привыкли пользоваться для установки приложений, она имеет команду list:
apt list --installed
Далее, можно отфильтровать только пакеты, имя которых содержит определенные символы:
apt list --installed | grep python
Мы более подробно рассматривали apt в статье установка пакетов в Debian. Еще одна интересная возможность apt — посмотреть какие пакеты были установлены вручную. Для этого наберите:
apt-mark showmanual
И еще один вариант с использованием apt:
apt-cache pkgnames
Утилита для управления пакетами aptitude тоже позволяет вывести список установленных пакетов:
aptitude search '~i!~M'
Также aptitude может работать в режиме curses, что очень удобно:
Последний способ посмотреть список установленных пакетов — это файл /var/lib/apt/extended_states. Это база данных, в которой содержится установленные программы debian в таком формате:
Package: имя_пакета
Architecture: архитектура
Auto-Installed: 0_или_1
cat /var/lib/apt/extended_states
Восстановление списка установленных пакетов
Многие пользователи создают список пакетов не просто чтобы посмотреть, а для будущего восстановления. Если вы делали список с помощью dpkg, то его можно очень просто восстановить в системе с помощью аналогичной команды:
sudo dpkg --clear-selections
$ sudo dpkg --set-selections < mylist.txt
Все очень просто. Чтобы установить пакеты после добавления их в список используйте команду:
sudo apt dselect-upgrade
Если же у вас просто есть список имен пакетов, то восстанавливать его нужно немного по-другому. Просто передайте все эти имена команде apt для установки:
xargs < mylist.txt apt install -y
Выводы
В этой статье мы рассмотрели как посмотреть список установленных пакетов Debian. Это может быть очень полезно и выполняется достаточно просто. Надеюсь, эта информация была полезной для вас.
На завершение видео про установку и удаление пакетов:
Оцените статью:
Загрузка…
Шпаргалка начинающего Debian/Ubuntu администратора по управлению пакетами / Хабр
Долгое время меня глодало незнание того, как сделать некоторые элементарные вещи в дебиановских менеджерах пакетов, но, как часто бывает, спросить рядом было не у кого, а до написания куда-либо руки не доходили. И вот наконец вопросы вызрели и я написал
свой вопрос
в
дебиановскую рассылку
. Естественно оказалось что пропустил что-то очевидное, но и узнал много неочевидных полезностей, посему решил набросать шпаргалку, авось кому пригодится.
Краткая справка Debian администратора
Основное и общеизвестное
Получение информации о новых/обновлённых пакетах
sudo aptitude update
Обновление
sudo aptitude safe-upgrade
Поиск пакета по именам пакетов
aptitude search key_word
Поиск пакета по точному названию
aptitude search "^name$"
Поиск по описанию
aptitude search "?description("key_word")"
Информация о пакете
aptitude show package_name
Установка
sudo aptitude install package_name
Удаление
sudo aptitude remove package_name
Полное удаление (вместе с конфигами)
sudo aptitude purge package_name
Очистить кэш загруженных пакетов (освободить место)
aptitude autoclean # удалятся только пакеты неактуальных версий
aptitude clean # очистится весь кэш
Установка отдельно скачанного/созданного пакета (для создания пакета из сторонних исходников нужно использовать утилиту
checkinstall
с флагом -D)
sudo dpkg -i /path/to/package.deb
Для получения доп информации
man aptitude
sudo aptitude install aptitude-doc-en
и смотрим документацию (/usr/share/doc/aptitude/html/en/index.html), кому быструю справку по поисковым шаблонам, тому сюда — /usr/share/doc/aptitude/html/en/ch02s04.html. Если лень ставить доку, то в сети она
есть
.
Вводная на Debian Wiki:
wiki.debian.org/Aptitude
А теперь то что не очевидно или требует полного прочтения документации
1. Как после update посмотреть какие пакеты будут обновлены?
aptitude search ?upgradable
также можно юзать (если поставить)
sudo daptup
но после его установки точно также будет себя вести и обычный update
2. Как узнать что изменилось в пакетах которые будут обновлены?
Можно пробовать
sudo aptitude changelog package_name
для каждого пакета.
Но лучше поставить apt-listchanges, тогда перед любой установкой обновлений будет показан список изменений, по умолчанию настройки не очень удобные, поэтому лучше перенастроить под себя, например, выбрать формат вывода (пока использую текст, при больших обновлениях наверно pager лучше), не слать писем, спрашивать подтверждения, выводить всю информацию. Для этого нужно запустить
sudo dpkg-reconfigure apt-listchanges
3. Что делать если обновление что-то поломало и нужно откатиться?
Отката нет, можно попробовать найти предыдущую версию пакета
sudo aptitude version package_name
и установить её
sudo aptitude install package_name=version
4. Как найти все пакеты установленные вручную?
есть вариант команды (aptitude search ‘~i!~M’), но к сожалению он не даёт желаемого результата, так что вопрос остаётся открытым, есть куча способов основанных на анализе логов
/var/log/aptitude (+ ротированные куски)
/var/log/installer/initial-status.gz
/var/log/dpkg.log (+ ротированные куски)
но простого и готового решения нет, да информация теоретически может быть потеряна при ротациях, нужно конфигурить
5. Как посмотреть список файлов в пакете?
если пакет установлен
dpkg -L package_name
для любых пакетов поставить apt-file и
apt-file list package_name
6. Как посмотреть какому пакету принадлежит файл?
dpkg -S file_name
7. Как удалить все пакеты, где есть key в названии пакета?
sudo aptitude purge ~ikey
8. Как удалить оставшиеся конфиги от удалённых пакетов?
sudo aptitude purge ~c
9. Как найти пакет пакет, в котором содержится файл lib.so:
apt-file search lib.so
10. Как сконвертировать rpm пакет в deb?
alien --to-deb /path/to/file.rpm
11. Как найти список установленных ядер?
dpkg --list linux-* | grep ii
12. Как установить пакет из testing или experimental?
На эту тему нужно писать отдельно (
например так
), но если кратко, то команды для этого есть
sudo aptitude -t testing package_name
или
sudo aptitude package_name/testing
13. Как удалить метапакет, но оставить одну из зависимостей?
придётся почитать документацию про ключ unmarkauto или глянуть
сюда
.
14. Как узнать что попало в файловую систему мимо системы управления пакетами?
Есть утилита cruft, хотя вопрос интерпретации результатов (файла report) пока открыт
sudo cruft -d / -r report --ignore /home --ignore /var --ignore /tmp
15. Какие есть дополнительные репозитории?
Debian —
wiki.debian.org/UnofficialRepositories
Ubuntu — множество всяких
PPA
16. Что есть ещё?
apt-cdrom
apt-spy
auto-apt. заметка на хабре
apt-key
apt-add-repository
Некоторые вещи умеет только apt-get
Есть альтернативные утилиты для управления пакетами, например wajig, который пытается вобрать в себя функционал всех остальных утилит.
17. Как найти пакеты зависящие от данного
apt-cache rdepends package_name
также может пригодится
aptitude why package_name
Благодарю всех кто помог своими советами в рассылке, жж (JackYF) и хабре ( run4way, sledopit, nazarpc, AgaFonOff, amarao, traaance, adrianopol, Karamax). Замечания и дополнения приветствуются.
🍄 Простой способ создать пакет Debian и локальный репозиторий пакетов — Information Security Squad
В этой статье описывается простой способ создать домашний пакет Debian и включить его в локальный репозиторий пакетов.
Хотя мы могли бы использовать существующий пакет Debian / Ubuntu, мы начнем с нуля, создав и упаковав наше собственное тривиальное приложение.
Как только наш пакет будет готов, мы включим его в наш локальный репозиторий пакетов.
Эта статья иллюстрирует очень упрощенный подход, однако он может служить шаблоном во многих различных сценариях.
В этом уроке вы узнаете:
- Как создать простой пакет Debian
- Как создать локальный репозиторий Debian
- Как добавить репозиторий в список программных источников
Создание двоичного исполняемого файла
Первое, что нам нужно сделать, это создать простую программу на C ++, скомпилировать ее и протестировать.
Наша программа больше ничего не делает, просто печатает «itsecforu.ru» на экране.
Вот код:
#include <iostream>
int main() {
using namespace std;
cout << "itsecforu.ru\n";
}
Сохраните приведенный выше код как itsecforu.cc.
Для компиляции программы нам нужен компилятор g ++, который предоставляется пакетом build-essential.
Мы можем установить его, запустив:
$ sudo apt-get install build-essential
Для компиляции кода мы используем следующую команду linux:
$ g++ itsecforu.cc -o itsecforu
$ ./itsecforu
itsecforu.org
Все выглядит хорошо.
На этом этапе у нас должен быть исполняемый файл itsecforu, который выводит некоторую строку на экран.
Создание пакета Debian
Теперь, когда у нас есть небольшая программа, готовая в виде исполняемого двоичного файла, мы можем создать пакет debian.
Для этого мы используем инструмент dpkg-deb
Прежде всего, нам нужно создать структуру пакета debian.
Единственные файлы, необходимые для сборки пакета debian:
- DEBIAN/control
- пользовательские файлы, которые будут частью пакета (не обязательно)
Сначала создайте каталог с именем itsecforu.
Этот каталог будет содержать все необходимые файлы пакета:
$ mkdir itsecforu
Затем создайте каталог DEBIAN и управляющий файл:
$ mkdir itsecforu/DEBIAN
$ vi itsecforu/DEBIAN/control
Внутри файла control мы вводим следующую информацию:
Package: itsecforu.ru
Version: 1.0
Section: custom
Priority: optional
Architecture: all
Essential: no
Installed-Size: 1024
Maintainer:itsecforu.ru
Description: Вывод itsecforu.ru на экран
Отлично, единственное, чего не хватает, так это нашей программы itsecforu.
Внутри каталога itsecforu мы создаем дерево каталогов, которое представляет путь, по которому наша программа будет установлена в системе, и копируем в него исполняемый файл:
$ mkdir -p itsecforu/usr/bin/
$ cp /path/to/itsecforu itsecforu/usr/bin/
На данный момент мы готовы создать пакет:
$ dpkg-deb --build itsecforu
dpkg-deb: building package `itsecforu' in `itsecforu.deb'. $ ls itsecforu itsecforu.deb
Возможно, вы захотите изменить имя пакета, чтобы оно включало версию программы и архитектуру пакета. Например:
$ mv itsecforu.deb itsecforu-1.0_amd64.deb
Все сделано ! Наш пакет готов! (ПРИМЕЧАНИЕ: это всего лишь пример, создание официальных пакетов требует намного больше работы).
Настройка локального репозитория пакетов
В этом случае мы будем предполагать использование Apache с настройками по умолчанию.
Чтобы установить веб-сервер Apache, все, что нам нужно сделать, это запустить:
$ sudo apt-get install apache2
После установки, чтобы убедиться, что веб-сервер работает, мы можем перейти к IP-адресу машины (или к «http://localhost», если запущен браузер на самой машине), который в нашем случае является http://10.1.1.4. Мы должны увидеть знаменитое сообщение от Apache.
Программное обеспечение веб-сервера работает, но контент еще не добавлен.
DocumentRoot Apache VirtualHost по умолчанию — / var / www / html: здесь мы создадим наш репозиторий.
Давайте создадим каталог «debian» внутри /var/www/html и скопируем в него пакет linuxconfig-1.0_amd64.deb:
$ sudo mkdir /var/www/html/debian
$ sudo cp /path/to/linuxconfig-1.0_amd64.deb /var/www/html/debian/
Следующий шаг заключается в создании списка пакетов.
Мы переходим в каталог debian и используем утилиту dpkg-scanpackages для выполнения этой задачи.
Вам может потребоваться установить пакет dpkg-dev на случай, если команда dpkg-scanpackages отсутствует:
$ dpkg-scanpackages . | gzip -c9 > Packages.gz
dpkg-scanpackages: info: Wrote 1 entries to output Packages file.
Наш локальный репозиторий уже готов.
Добавление репозитория к программным источникам
На этом этапе, чтобы иметь возможность установить наш пакет из локального репозитория, который мы создали, нам нужно отредактировать файл /etc/apt/sources.list, добавить запись относительно него (измените IP-адрес, чтобы он соответствовал адресу вашего компьютера), и синхронизировать репозитории:
echo "deb [trusted=yes] http://10.1.1.4/debian ./" | tee -a /etc/apt/sources.list > /dev/null
Обязательно добавьте выше [trust = yes], чтобы избежать следующего сообщения об ошибке:
Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default.
Синхронизируйте репозитории:
$ sudo apt-get update Ign:1 http://10.1.1.4/debian ./ InRelease Ign:2 http://10.1.1.4/debian ./ Release Ign:3 http://10.1.1.4/debian ./ Packages Ign:3 http://10.1.1.4/debian ./ Packages Ign:3 http://10.1.1.4/debian ./ Packages Get:3 http://10.1.1.4/debian ./ Packages [303 B]
Чтобы установить наш пакет, теперь мы можем использовать инструмент apt-get:
$ sudo apt-get install linuxconfig
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
linuxconfig
0 upgraded, 1 newly installed, 0 to remove and 8 not upgraded.
Need to get 3174 B of archives.
After this operation, 1,049 kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
linuxconfig
Install these packages without verification [y/N]? y
Выполните:
$ itsecforu
itsecforu.ru
Чтобы удалить пакет из системы, просто запустите:
$ sudo apt-get remove linuxconfig
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
linuxconfig
0 upgraded, 0 newly installed, 1 to remove and 3 not upgraded.
After this operation, 1049 kB disk space will be freed.
Do you want to continue? [Y/n] y
Debian — программные пакеты в «buster»
Debian — программные пакеты в «buster»
- 0ad (0.0.23.1-2)
- Стратегия в реальном времени о древней войне
- 0ad-данные (0.0.23.1-1)
- Стратегия древних войн в реальном времени (файлы данных)
- 0ad-данные-общие (0.0.23.1-1)
- Стратегия в реальном времени о древних войнах (общие файлы данных)
- 0установить (2.12.3-2)
- система кросс-распределительной упаковки
- 0install-core (2.12.3-2)
- кросс-распределительная система упаковки (части без графического интерфейса)
- 0xffff (0.8-1)
- Открыть бесплатную прошивку Fiasco Firmware Flasher
- 2048-кварт (0.1.6-1 + b1)
- математическая игра-головоломка
- 2ping (4.3-1)
- Утилита Ping для определения направленной потери пакетов
- 2to3 (3.7.3-1)
- 2to3 двоичный файл с использованием python3
- 2vcard (0,6-1)
- Perl-скрипт для преобразования адресной книги в формат файла VCARD
- 3270-общий (3.6ga4-3 + b1)
- Общие файлы для эмуляторов IBM 3270 и pr3287
- 389-дс (1.4.0.21-1)
- 389 Набор серверов каталогов — метапакет
- 389-ds-base (1.4.0.21-1)
- 389 Набор серверов каталогов — сервер
- 389-ds-base-dev (1.4.0.21-1)
- 389 Набор серверов каталогов — файлы для разработки
- 389-ds-base-legacy-tools (1.4.0.21-1)
- Устаревшие утилиты для 389 Directory Server
- 389-ds-base-библиотеки (1.4.0.21-1)
- 389 Набор серверов каталогов — библиотеки
- 3dchess (0.8.1-20)
- Играйте в шахматы на 3-х досках!
- 3depict (0.0.21-1)
- визуализация и анализ однозначных точечных данных
- 4 цифры (1.1.4-1 + b1)
- игра по угадыванию чисел, известная как «Быки и коровы»
- 4g8 (1.0-3.2)
- Захват и перехват пакетов для коммутируемых сетей
- 4панель (5.0-2)
- четырехпанельный файловый менеджер с подробным списком
- 4 этажа (1.1.6 + 20151109-2 + b3)
- Хранилище баз данных RDF и механизм запросов — демон базы данных
- 4ti2 (1.6.9 + DS-1)
- набор математических инструментов для задач на линейных пространствах — инструменты
- 4ti2-doc (1.6.9 + ds-1)
- для задач на линейных пространствах — руководство пользователя
- 6 тоннель (1: 0.12-1)
- TCP-прокси для приложений, не поддерживающих IPv6
- 7kaa (2.15.1 + dfsg-1)
- Seven Kingdoms Ancient Adversaries: стратегия в реальном времени
- 7kaa-data (2.15.1 + dfsg-1)
- Древние противники семи королевств — игровые данные
- 9base (1: 6-7 + b1)
- Инструменты пользователя Plan 9
- (1.9-2)
- Создает X меню из оболочки
- 9монтаж (1.3 + hg20170412-1)
- Plan 9 filesystem (v9fs) пользовательские утилиты монтирования
- 9wm (1.4.1-1)
- X11, вдохновленный Rio
- a2jmidid (8 ~ dfsg0-3)
- Демон для демонстрации устаревшего ALSA MIDI в системах JACK MIDI
- a2ps (1: 4.14-4)
- GNU a2ps — конвертер ‘Anything to PostScript’ и красивый принтер
- a52dec
- виртуальный пакет, предоставляемый liba52-0.7.4-dev
- a52dec-dev
- виртуальный пакет, предоставляемый liba52-0.7.4-dev
- a56 (1.3 + dfsg-9)
- Монтажник Motorola DSP56001
- a7xpg (0.11.dfsg1-10)
- игра в погоню
- a7xpg-данные (0.11.dfsg1-10)
- игра в погоню — игровые данные
- aa3d (1.0-8 + b2)
- Генератор художественных стереограмм ASCII
- aac-enc (0.1.6-1) [ non-free ]
- Библиотека кодеков Fraunhofer FDK AAC — двоичный интерфейс внешнего интерфейса
- аайм (0.4-9 + b2)
- ASCII художественная версия Jugglemaster
- aalib-bin
- виртуальный пакет, предоставляемый libaa-bin
- aalib1
- виртуальный пакет, предоставляемый libaa1
- фото (0.45-1)
- Auto Adjust Photo, автоматическая цветокоррекция фотографий
- aapt (1: 8.1.0 + r23-3)
- Средство упаковки активов Android
- aapt
- виртуальный пакет, предоставляемый google-android-build-tools-installer
- абаки (1.3.1-5)
- закрыть пробелы в геномном выравнивании из коротких чтений
- abcde (2.9.3-1)
- Улучшенный кодировщик компакт-дисков
- abci (0.0 ~ git20170124.0.f94ae5e-2 + b33)
- Серверный API блокчейна Tendermint
- abcm2ps (8.14.2-0.2)
- Переводит файлы описания музыки ABC в PostScript
- abcmidi (201
- -1)
Конвертер
- из формата ABC в формат MIDI и обратно
- abe (1.1 + dfsg-3)
- игра «Удивительное приключение Эйба» с боковой прокруткой
- abe-data (1.1 + dfsg-3)
- игра «Удивительное приключение Эйба» с боковой прокруткой — данные
- отменить (1.1.9-1)
- Модуль шумоподавления LV2
- проверка соответствия требованиям abi (2.3-0.2)
- для сравнения совместимости с ABI общих библиотек C / C ++ версий
- Аби-самосвал (1.1-1)
- инструмент для дампа ABI объекта ELF, содержащего отладочную информацию DWARF
- abi-монитор (1.12-2)
- монитор ABI разделяемых библиотек
- abi-трекер (1.11-1)
- визуализировать изменения ABI библиотеки C / C ++
- абичек (1.2-5)
- средство проверки двоичной совместимости
- abigail-doc (1.5-1)
- ABI Generic Analysis and Instrumentation Library (документация)
- Abigail-инструменты (1.5-1)
- Библиотека общего анализа и инструментовки ABI (инструменты)
- абинит (8.8.4-2)
- пакет для расчета электронной структуры
- abinit-data (8.8.4-2)
- для расчета электронной структуры (файлы данных)
- abinit-doc (8.8.4-2)
- Пакет для расчета электронной структуры (Документация)
- abisip-find (1.3.0-2)
- Утилита командной строки для поиска BTS
- abiword (3.0.2-8)
- эффективный, многофункциональный текстовый процессор с совместной работой
- abiword-common (3.0.2-8)
- эффективный многофункциональный текстовый процессор с возможностью совместной работы — общие файлы
- abiword-plugin-грамматика (3.0.2-8)
- для AbiWord
- таблетка-ссылка-dev (3.0,2 + dfsg-1)
- синхронизирует музыкальные приложения на нескольких устройствах — разработка
- утилиты-ссылки-ссылки (3.0.2 + dfsg-1)
- синхронизирует музыкальные приложения на нескольких устройствах — cmdline utils
- способ-ссылка-утилит-графический интерфейс (3.0.2 + dfsg-1)
- синхронизирует музыкальные приложения на нескольких устройствах — утилиты GUI
- abntex (0.9 ~ beta2-5.1)
- Класс LaTeX для написания документов в стандарте ABNT
- abook (0.6.1-1 + b2)
- текстовая адресная книга ncurses
- abootimg (0.6-1 + b2)
- Инструмент для чтения / записи / обновления образов загрузки Android
- abr2gbr (1: 1.0.2-2 + b2)
- Преобразует кисти PhotoShop в GIMP
- Направляющая абс (10-3)
- Расширенное руководство по созданию сценариев на Bash
- abw2epub (0.9.6-2)
- Конвертер формата AbiWord в EPUB
- abw2odt (0.9.6-2)
- Конвертер AbiWord в OpenDocument
- abx (0,0 ~ b1-1 + b1)
- программа для тестирования аудио ABX
- бездна (2.1.5-7)
- de novo, параллельный, ассемблер последовательностей для коротких чтений
- accerciser (3.22.0-7)
- интерактивный обозреватель специальных возможностей Python для рабочего стола GNOME
- бухгалтерия (0.6.45-2)
- запрашивать и изменять информацию учетной записи пользователя
- accountwizard (4: 18.08.3-1)
- мастер настройки учетной записи приложений KDE PIM
- аккт (6.6.4-2)
- Утилиты GNU Accounting для учета процессов и входа в систему
- ace (0,0.5-3 + b11)
- HTML-шаблонизатор для Go (инструмент командной строки)
- ace-gperf (6.4.5 + dfsg-1 + b12)
- Генератор идеальных хэш-функций ACE
- ace-netsvcs (6.4.5 + dfsg-1 + b12)
- Реализации сетевых сервисов ACE
- туза пингвинов (1.5 ~ rc2-3)
- пасьянсы на тему пингвинов
- acedb-прочее (4.9.39 + dfsg.02-4)
- извлечение последовательностей ДНК или белков
- acedb-other-belvu (4.9.39 + dfsg.02-4)
- переходной пакет для белву
- acedb-other-belvu
- виртуальный пакет, предоставленный belvu
- acedb-other-dotter (4.9.39 + dfsg.02-4)
- переходной пакет для доттера
- acedb-other-dotter
- виртуальный пакет, предоставленный dotter
- туза3 (3.0.8-6)
- Расширенные концепции электронной структуры III
- aces3-data (3.0.8-6)
- Расширенные концепции электронной структуры III
- ацетонизо (2,4-3)
- многофункциональное приложение для монтирования и управления образами CD и DVD
- акфакс (981011-17 + b1)
- Получение факсов с помощью радио и звуковой карты
- чек (0.5,7)
- Проверить типичные ошибки локализации
- чек-правил (0.3.3)
- Основные правила проверки
- Ахиллес (2-9)
- Симулятор искусственной жизни и эволюции
- ак (2.24-1)
- grep-подобная программа специально для больших деревьев исходных текстов
- ack-grep
- виртуальный пакет, предоставляемый ack
- акл (2.2.53-4)
- список контроля доступа — утилиты
- acl-dev
- виртуальный пакет, предоставляемый libacl1-dev
- acl2 (8.0dfsg-1 + b1 [armel], 8.0dfsg-1 [amd64, arm64, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x])
- Вычислительная логика для прикладного Common Lisp: основной двоичный файл
- acl2-books (8.0dfsg-1 + b1 [armel], 8.0dfsg-1 [amd64, arm64, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x])
- Computational Logic for Applicative Common Lisp: скомпилированные библиотеки
- acl2-книги-сертификаты (8.0dfsg-1)
- Computational Logic for Applicative Common Lisp: сертификаты библиотеки
- acl2-books-source (8.0dfsg-1)
- Вычислительная логика для прикладного Common Lisp: исходники библиотеки
- acl2-doc (8.0dfsg-1)
- Computational Logic for Applicative Common Lisp: документация
- acl2-emacs (8.0dfsg-1)
- Вычислительная логика для прикладного Common Lisp: интерфейс emacs
- acl2-infix (8.0dfsg-1 + b1 [armel], 8.0dfsg-1 [amd64, arm64, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x])
- Вычислительная логика для аппликативного Common Lisp: интерфейс infix
- acl2-infix-source (8.0dfsg-1)
- Вычислительная логика для аппликативного Common Lisp: инфиксный источник
- acl2-источник (8.0dfsg-1)
- Computational Logic for Applicative Common Lisp: исходные файлы
- aclock.app (0.4.0-2 + b1)
- Аналоговые часы dockapp для GNUstep
- акм (5,0-29,2)
- Многопользовательский классический симулятор воздушного боя
- акме (1: 0.96.2-1)
- Мультиплатформенный кросс-ассемблер для CPU 6502/6510/65816
- acme-tiny (1: 4.0,4-1 + деб10у1)
- letsencrypt крошечный клиент Python
- acmetool (0.0.62-3 + b11)
- инструмент автоматического получения сертификата для Let’s Encrypt
- aconnectgui (0.9.0rc2-1-10)
- графический диспетчер соединений секвенсора ALSA
- желудь-диск (3.0.6-10)
- редактор разделов для компьютеров Acorn / RISC OS
- акустический дактилоскопический сканер (0,6-6 + b1)
- Дактилоскопический прибор Acoustid
- acpi (1,7–1,1)
- отображает информацию об устройствах ACPI
- acpi-call
- виртуальный пакет, предоставляемый acpi-call-dkms
- acpi-call-dkms (1.1.0-5)
- Модуль ядра, позволяющий вызывать методы ACPI
- acpi-fakekey (0.142-8 + b1)
- инструмент для генерации ложных ключевых событий
- acpi-modules
- виртуальный пакет, предоставляемый acpi-modules-4.19.0-11-amd64-di, acpi-modules-4.19.0-10-686-di, acpi-modules-4.19.0-11-686- di, acpi-модули-4.19.0-11-686-pae-di, acpi-modules-4.19.0-10-686-pae-di, acpi-modules-4.19.0-10-amd64-di
- acpi-модули-4.19.0-10-686-di (4.19.132-1)
- Модули поддержки ACPI
- acpi-модули-4.19.0-10-686-паэ-ди (4.19.132-1)
- Модули поддержки ACPI
- acpi-модули-4.19.0-10-amd64-di (4.19.132-1)
- Модули поддержки ACPI
- acpi-модули-4.19.0-11-686-di (4.19.146-1)
- Модули поддержки ACPI
- acpi-модули-4.19.0-11-686-паэ-ди (4.19.146-1)
- Модули поддержки ACPI
- acpi-модули-4.19.0-11-amd64-di (4.19.146-1)
- Модули поддержки ACPI
- поддержка acpi (0,142-8)
- скриптов для обработки многих событий ACPI
- acpi-support-base (0.142-8)
- скриптов для обработки базовых событий ACPI, таких как кнопка питания
- инструменты acpica (20181213-1)
- Инструменты ACPICA для разработки и отладки таблиц ACPI
- акпид (1: 2.0.31-1)
- Демон событий Advanced Configuration and Power Interface
- acpidump
- виртуальный пакет, предоставляемый acpica-tools
- acpitail (0,1-4 + b1)
- Показать информацию ACPI в виде хвоста
- акпинструмент (0.5.1-4 + b4)
- клиент ACPI командной строки
- acpitool-dbg (0.5.1-4 + b4)
- клиент ACPI командной строки (отладка)
- акр (1.7.2-1)
- autoconf как инструмент
- действиеa (3.10.0-1)
- имитирует человеческую деятельность с помощью мощного графического интерфейса и JavaScript
- экшназ (3.10.0-1)
- манекен переходный
- актив.мкв. (5.15.8-2)
- — сервер
- журнал действий-менеджер (0.8.0-1.2)
- для Zeitgeist
- ada-reference-manual-2005 (1: 2012.3-2)
- Стандарт языка Ada 2005
- ada-справочник-руководство-2012 (1: 2012.3-2)
- Стандарт языка Ada 2012
- adabrowse (4.0.3-10)
- Генератор HTML для спецификаций модуля библиотеки Ada 95
- adacontrol (1.20r7-3)
- Контроллер правил Ada
- adacontrol-doc (1.20r7-3)
- Контроллер правил Ada (документация)
- адапта-GTK-тема (3.95.0.11-1)
- Адаптивная тема Gtk +
- адапта-кде (20180828-2)
- Порт популярной темы Gtk Adapta для рабочего стола Plasma 5
- снятие адаптера (2.2.3-1)
- быстрая обрезка адаптеров, идентификация и считывание последовательностей генов
- Примеры снятия переходника (2.2.3-1)
- быстрая обрезка адаптера, идентификация и считывание слияния (пример данных)
- адб (1: 8.1.0 + r23-5)
- Мост отладки Android
- adcli (0.8.2-1 + b1)
- Инструмент для выполнения действий в домене Active Directory
- адресов-вкусностей-для-gnustep (0.4.8-3 + b1)
- Персональный менеджер адресов для GNUstep (полезности)
- адресный менеджер.приложение (0.4.8-3 + b1)
- Менеджер личных адресов для GNUstep
- приводной блок (3.118)
- добавлять и удалять пользователей и группы
- адекватно (0,15,2)
- Инструмент тестирования качества пакетов Debian
- adjtimex (1.29-10)
- Утилита конфигурации временных переменных ядра
- adlibtracker2 (2.4.24-1)
- удобный трекер для FM-чипа OPL3
- адмеш (0.98.3-3)
- Инструмент для обработки триангулированных твердых сеток.Двоичный
- администратор (4.7.1-1)
- Веб-инструмент для администрирования баз данных
- ADMS (2.3.6-2)
- Автоматический синтезатор модели устройства для Verilog-AMS
- adns-tools (1.5.0 ~ rc1-1.1)
- Клиентские утилиты DNS с поддержкой асинхронной работы
- кожух (0.3.8-1)
- 2D графическая ролевая игра
- adonthell-data (0.3.8-1)
- Файлы данных, необходимые для Adonthell
- адплей (1,7-4)
- Консольный аудиоплеер OPL2
- adplug-utils (2.2.1 + dfsg3-1)
- бесплатная звуковая библиотека AdLib (утилиты)
- adql-java (1.4-1)
- Анализируйте, обрабатывайте и переводите запросы ADQL с помощью Java
- adql-java-doc (1.4-1)
- Анализировать, обрабатывать и переводить запросы ADQL (API doc)
- адун-ядро (0.81-13)
- Молекулярный симулятор
- adun.app (0.81-13)
- Молекулярный симулятор для GNUstep (GUI)
- adv-17v35x-dkms (5.0.3.0-2)
- dkms для адаптеров Advantech PCI / PCIe серии ACOM
- advancecomp (2.1-2.1)
- сборник утилит рекомпрессии
- adventure
- виртуальный пакет, предоставленный bsdgames, colossal-cave-adventure
- адви (1.10.2-4)
- активный предварительный просмотр и докладчик DVI
- адви-примеров (1.10.2-4)
- пример презентаций для Active-DVI (advi)
- adwaita-icon-theme (3.30.1-1)
- тема значков по умолчанию для GNOME
- adwaita-qt (1.0-2)
- Порт Qt 5 темы Адвайта GNOME
- эгейский (0.16.0 + dfsg-1)
- набор инструментов для интегрированного анализа генома
- aegisub (3.2.2 + dfsg-4 + deb10u1)
- расширенный редактор субтитров
- aegisub-l10n (3.2.2 + dfsg-4 + deb10u1)
- языковых пакетов aegisub
- эол (0.9.5-1)
- Эмулятор синтезированного органа
- афея (12-248-3)
- текстовый редактор для HTML
- aes2501-wy (0,1-5 + b2)
- для usb-сканера отпечатков пальцев aes2501
- aesfix (1.0,1-6)
- инструмент для исправления битовых ошибок в расписании ключей AES
- aeskeyfind (1: 1.0-5)
- инструмент для поиска ключей AES в захваченном образе памяти
- эскулап (0.2.2-beta2 + git20180219.8787e95-2)
- и сетевой клиент DICOM
- aeson-pretty (0.8.7-3 + b2 [armel], 0.8.7-3 + b1 [amd64, arm64, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x])
- Инструмент красивой печати JSON
- aespipe (2.4d-1 + b1)
- Инструмент шифрования AES с поддержкой loop-AES
- аэвол (5.0-2 + b1)
- для проведения экспериментов по эволюции in silico
- aewan (1.0.01-4.1 + b2 [mips64el], 1.0.01-4.1 + b1 [amd64, arm64, armel, armhf, i386, mips, mipsel, ppc64el, s390x])
- Редактор ASCII-art без имени
- авм (1.3.12-3)
- минималистичный оконный менеджер для X11
- aewm ++ (1.1.2-5.1)
- минимальный оконный менеджер, написанный на C ++
- aewm ++ — вкусности (1.0-10)
- утилит для дополнения минимального оконного менеджера
- afew (1.3.0-1)
- Скрипт тегов для не очень большой почты
- affiche.app (0.6.0-10 + b1)
- Приложение для «наклеивания» заметок на рабочий стол
- afflib-tools (3.7.17-5)
- Advanced Forensics Format Library (утилиты)
- affs-modules
- виртуальный пакет, предоставляемый affs-modules-4.19.0-10-loongson-3-di, affs-modules-4.19.0-11-loongson-3-di, affs-modules-4.19.0- 10-октеон-ди, affs-модули-4.19.0-11-5kc-мальта-ди, affs-модули-4.19.0-10-4kc-мальта-ди, affs-модули-4.19.0-11-октеон-ди, affs-модули-4.19.0-11-4kc-мальта-ди, affs-модули-4.19.0-10-5kc-мальта-ди
- affs-modules-4.19.0-10-4kc-malta-di (4.19.132-1)
- Поддержка файловой системы Amiga
- affs-modules-4.19.0-10-5kc-malta-di (4.19.132-1)
- Поддержка файловой системы Amiga
- affs-modules-4.19.0-10-loongson-3-di (4.19.132-1)
- Поддержка файловой системы Amiga
- affs-модули-4.19.0-10-октеон-ди (4.19.132-1)
- Поддержка файловой системы Amiga
- affs-modules-4.19.0-11-4kc-мальта-ди (4.19.146-1)
- Поддержка файловой системы Amiga
- affs-modules-4.19.0-11-5kc-malta-di (4.19.146-1)
- Поддержка файловой системы Amiga
- affs-modules-4.19.0-11-loongson-3-di (4.19.146-1)
- Поддержка файловой системы Amiga
- affs-модули-4.19.0-11-октеон-ди (4.19.146-1)
- Поддержка файловой системы Amiga
- afio (2.5.1.20160103 + gitc8e4317-1) [ non-free ]
- программа для работы с архивными файлами
- afl (2.52б-5)
- инструментальный фаззер для двоичных форматов
- afl-clang (2.52b-5)
- инструментальный фаззер для двоичных форматов — поддержка clang
- afl-cov (0.6.2-1)
- для afl (American Fuzzy Lop)
- afl-doc (2.52b-5)
- инструментальный фаззер для двоичных форматов — документация
- афникс (2.8.1-2)
- Компилятор и среда выполнения для языка программирования AFNIX
- afnix-doc (2.8.1-2)
- Компилятор и среда выполнения для языка программирования AFNIX (документация)
- на корме (2: 5.098-4)
- Система подготовки документов «произвольной формы»
- после шага (2.2.12-12)
- оконный менеджер в стиле NEXTSTEP
- afterstep-data (2.2.12-12)
- файлов данных для оконного менеджера AfterStep
- предохранитель (0.4.1-1 + b3)
- реализовано автоматическое монтирование файловой системы в пользовательском пространстве с помощью FUSE
- agda (2.5.4.1-3)
- функциональный язык программирования с зависимой типизацией
- агда-бункер (2.5.4.1-3 + b1)
- интерфейс командной строки для Agda
- agda-mode (2.5.4.1-3)
- переходной фиктивный пакет для elpa-agda2-mode
- agda-mode
- виртуальный пакет, предоставляемый elpa-agda2-mode
- agda-stdlib (0.17-1)
- стандартная библиотека для Agda
- agda-stdlib-doc (0.17-1)
- для Agda — документация
- ageu (9723-1 + b1)
- Утилита Unix для отслеживания неиспользуемого дискового пространства
- повестка дня.приложение (0.44-2 + b1)
- Менеджер календаря для GNUstep
- агент-переводчик (0,43-3)
- скопируйте секретный ключ из gpg-agent GnuPG в ssh-agent OpenSSH
- агрегат (1.6-7 + b1)
- агрегатор префиксов cidr ipv4
- агерманн (1.1.2-2)
- Руководитель эксперимента по исследованию сна
- aglfn (1.7-3)
- Список Adobe Glyph для новых шрифтов
- соглашение (4.17-9.1) [ non-free ]
- с поддержкой приблизительных шаблонов
- agtl (0.8.0.3-1.1)
- Инструмент для безбумажного геокэшинга
- ага (0,5-1)
- Конвертер цвета ANSI в HTML
- ахкпд (0,53-2 + b1)
- Протокол конфигурации Ad-Hoc
- Корасик (0.6.9-1)
- Быстрый поиск нескольких подстрок с помощью конечных автоматов
- помощник (0.16.1-1)
- Расширенная среда обнаружения вторжений — статический двоичный код
- aide-binary
- виртуальный пакет, предоставленный aide, aide-xen, aide-dynamic
- адъютант (0.16.1-1)
- Расширенная среда обнаружения вторжений — общие файлы
- помощник-динамик (0.16.1-1)
- Расширенная среда обнаружения вторжений — динамический двоичный код
- помощник-ксен (0.16.1-1)
- Advanced Intrusion Detection Environment — статический двоичный код для XEN
- помощник (1: 8.1.0 + r23-1)
- Генератор биндера интерфейсов AIDL
- аиксаурус (1.2.1 + dev-0.12-6.3)
- Этот пакет содержит англоязычный тезаурус (утилита)
- датчик качества воздуха (0.1.4.2-1)
- для монитора AppliedSensor Indoor Air Monitor
- aircrack-ng (1: 1.5.2-3)
- Утилиты для взлома беспроводных сетей WEP / WPA
- аэрограф-нг (1: 1.5.2-3)
- Инструмент для графического отображения файлов txt, созданных aircrack-ng
- аэропорт-утилиты (2-6)
- для базовых станций Apple AirPort
- аэродинамический (1.0.9-3)
- Миниатюрный и эффективный программно-конфигурируемый радиоприемник — утилиты
- авиаудар (0.99 + 1.0pre6a-9)
- Двухмерный воздушный бой в традициях «Бипланов» и «БИП»
- авиаудары обыкновенные (0.99 + 1.0pre6a-9)
- Двумерный воздушный бой — файлы данных
- aiscm (0,18.1-1 + b1)
- Числовые массивы Guile и тензорное расширение
- проход между рядами (1: 3.22.7-2)
- Коллекция карточных пасьянсов GNOME
- aj-снимок (0.9.8-1)
- делать снимки JACK-соединений
- ajaxterm (0.10-13)
- Веб-терминал, написанный на Python
- akonadi-backend-mysql (4:18.08.3-7 ~ deb10u1)
- Серверная часть хранилища MySQL для Akonadi
- akonadi-backend-postgresql (4: 18.08.3-7 ~ deb10u1)
- PostgreSQL для Akonadi
- akonadi-backend-sqlite (4: 18.08.3-7 ~ deb10u1)
- SQLite для Akonadi
- akonadi-контакты-данные (4: 18.08.3-1)
- Библиотека доступа к контактам Akonadi — файлы данных
- мастер импорта-akonadi (4: 18.08.3-1)
- Мастер импорта данных PIM
- akonadi-mime-data (4:18.08.3-1)
- Библиотека обработки MIME Akonadi — файлы данных
- akonadi-server (4: 18.08.3-7 ~ deb10u1)
- Akonadi PIM Storage Service
- аконадиконсоль (4: 18.08.3-1)
- для akonadi
- akqml (8.5.0 + dfsg-2)
- полнофункциональное приложение для захвата изображений с веб-камеры — модуль qml
- акрегатор (4: 18.08.3-2)
- Агрегатор RSS / Atom каналов
- alacarte (3.11.91-4)
- простой инструмент для редактирования меню GNOME
- аладин (10.076 + dfsg-1)
- Интерактивный атлас неба для астрономических изображений и наборов данных
- albatross-gtk-theme (1.7.4-1)
- темная и светлая тема GTK + от Shimmer Project
- альбом (4.15-1) [ non-free ]
- Генератор фотоальбомов HTML с поддержкой тем
- альдо (0.7.7-1 + b4)
- Программа обучения азбуке Морзе
- эль (0.9.0.3-3)
- синтетический движок захвата и рендерер
- перегонный куб (1.0.0-3)
- облегченный инструмент миграции базы данных для SQLAlchemy
- алевт (1: 1.6.2-5.1 + b2)
- X11 Браузер телетекста / видеотекста
- alevt
- виртуальный пакет, предоставляемый dvb-apps
- alex (3.2.4-4 + b1 [armel], 3.2.4-4 [amd64, arm64, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x])
- для Haskell
- alex4 (1.1-8)
- Alex the Allegator 4 — платформер в стиле ретро
- alex4-data (1.1-8)
- Alex the Allegator 4 — игровые данные
- альфа (1.0-3 + b1)
- Алгоритм автоматической подгонки линии
- альфред (2018.2-1)
- Всемогущий облегченный демон удаленного обмена фактами
- алгоритм (1.0.2 + dfsg-2)
- — французский интерфейс
- алгол68г (2.8.4-1)
- Внедрение Алгола 68, как определено в Пересмотренном отчете
- Алиса (0,19-2)
- IRC-клиент на основе веб-браузера (WebKit или Gecko)
- инопланетянин (8.95)
- конвертировать и устанавливать rpm и другие пакеты
- alien-arena (7.66 + dfsg-5) [ contrib ]
- Автономный 3D-шутер онлайн от первого лица
- чужие-арена-данные (7.66-3) [ платный ]
- Файлы игровых данных для Alien Arena
- чужой-арена-сервер (7.66 + dfsg-5) [ contrib ]
- Выделенный сервер для Alien Arena
- инопланетянин-охотник (1.7-7)
- Интерполированные мотивы переменного порядка для идентификации горизонтально полученной ДНК
- alienblaster (1.1.0-10)
- Классическая 2D стрелялка
- alienblaster-data (1.1.0-10)
- Игровые данные для Alien Blaster
- алики (0.3.0-3 + b1 [mips64el], 0.3.0-3 [amd64, arm64, armel, armhf, i386, mips, mipsel, ppc64el, s390x])
- Инструмент для измерения импульсных характеристик
- всезнающий-dns (1.7-2)
- крошечный DNS-сервер для обратного DNS IPv6
- allegro4-doc (2: 4.4.2-13)
- документация для библиотеки Allegro
- allegro5-doc (2: 5.2.4.0-3)
- документация для библиотеки Allegro 5
- альянс (5.1.1-3)
- Инструменты САПР для СБИС
- alljoyn-daemon-1504 (15.04b + dfsg.1-3)
- Служба демона AllJoyn
- alljoyn-daemon-1509 (15.09a + dfsg.1-3)
- Служба демона AllJoyn
- alljoyn-daemon-1604 (16.04a + dfsg.1-3)
- Служба демона AllJoyn
- alljoyn-gateway-1504 (15.04 ~ git20160606-4)
- Агент шлюза AllJoyn для 1504
- alljoyn-services-1504 (15.04-8)
- Базовые услуги AllJoyn для 1504
- alljoyn-services-1509 (15.09-6)
- Базовые услуги AllJoyn для 1509
- alljoyn-services-1604 (16.04-5)
- Базовые услуги AllJoyn для 1604
- alljoyn-тонкий-клиент-1504 (15.04b-3)
- Тонкий клиент AllJoyn для 1504
- alljoyn-тонкий-клиент-1509 (15.09a-3)
- Тонкий клиент AllJoyn для 1509
- alljoyn-тонкий-клиент-1604 (16.04-3)
- Тонкий клиент AllJoyn для 1604
- allure (0.8.3.0-3 + b1 [armel], 0.8.3.0-3 [amd64, arm64, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x])
- Научно-фантастическая рогалик из будущего и тактическая командная игра
- альманах (0.11.1-2 + b1)
- Приложение для облегчения ведения личного дневника
- много (0.8.1-1 + deb10u1)
- Текстовый режим MUA с использованием небольшого количества почты
- alot-doc (0.8.1-1 + deb10u1)
- Текстовый режим MUA с использованием notmuch mail — документация
- альпийский (2.21 + dfsg1-1.1)
- Текстовый почтовый клиент, удобный для новичков, но мощный
- alpine-doc (2.21 + dfsg1-1.1)
- Документация для текстового почтового клиента
- альпийский пико (2.21 + dfsg1-1.1)
- Простой текстовый редактор от Alpine, текстовый почтовый клиент
- алкалам (0,2-8)
- Макросы набора Корана для TeX / LaTeX
- alsa-firmware-loaders (1.1.7-1) [ contrib ]
- Загрузчики программного обеспечения ALSA для специального оборудования
- alsa-oss (1.1.8-1)
- Оболочка ALSA для приложений OSS
- инструменты alsa (1.1.7-1)
- Консольные утилиты ALSA для определенного оборудования
- alsa-tools-gui (1.1.7-1)
- Утилиты ALSA на основе графического интерфейса пользователя для конкретного оборудования
- alsa-utils (1.1.8-2)
- Утилиты для настройки и использования ALSA
- alsa-utils-udeb (1.1.8-2)
- Утилиты для настройки и использования ALSA (udeb)
- alsamixergui (0.9.0rc2-1-10)
- для драйвера звуковой карты ALSA
- alsaplayer
- виртуальный пакет, предоставляемый alsaplayer-common
- alsaplayer-alsa (0.99.81-2)
- Модуль вывода alsaplayer для ALSA
- alsaplayer-common (0.99.81-2)
- аудиоплеер (общие файлы)
- alsaplayer-daemon (0.99.81-2)
- демон alsaplayer
- alsaplayer-gtk (0.99.81-2)
- интерфейс alsaplayer gtk
- alsaplayer-interface
- виртуальный пакет, предоставляемый alsaplayer-xosd, alsaplayer-text, alsaplayer-daemon, alsaplayer-gtk
- alsaplayer-jack (0.99.81-2)
- Модуль вывода alsaplayer для JACK
- alsaplayer-nas (0.99.81-2)
- Модуль вывода alsaplayer для NAS
- alsaplayer-oss (0.99.81-2)
- Модуль вывода alsaplayer для OSS
- alsaplayer-output
- виртуальный пакет, предоставляемый alsaplayer-nas, alsaplayer-alsa, alsaplayer-jack, alsaplayer-oss
- alsaplayer-text (0.99.81-2)
- текстовый интерфейс alsaplayer
- alsaplayer-xosd (0.99.81-2)
- модуль дисплея alsaplayer XOSD
- alsoft-conf (1.4.3-2)
- Утилита настройки OpenAL-Soft
- альт-эрго (2.0.0-3)
- Автоматическое доказательство теорем, предназначенное для проверки программ
- alter-sequence-alignment (1.3.4-2)
- геномных последовательностей, выравнивание, трансформация, среда
- altermime (0.3.10-9 + b1 [mips64el], 0.3.10-9 [amd64, arm64, armel, armhf, i386, mips, mipsel, ppc64el, s390x])
- , используемая для изменения почтовых пакетов, закодированных в MIME
- альтов (1.9-3)
- Прошивка и утилиты Altus Metrum
- альтернативное дерево (1.3.1-7 + b1)
- программа для выполнения анализа ассоциаций и локализации на основе филогении
- альтернативных примеров (1.3.1-7)
- файлов примеров для ALTree
- альттаб (1.3.0-1)
- для минималистичных WM или автономных X-сессий
- alure-doc (1.2-6)
- AL Utilities REtooled (документация)
- alure-utils (1.2-6 + b1)
- AL Утилиты REtooled (инженерные сети)
- аманда-клиент (1: 3.5.1-2 + b2)
- Advanced Maryland Automatic Network Disk Archiver (Клиент)
- аманда-обыкновенная (1: 3.5.1-2 + b2)
- Расширенный автоматический архиватор сетевых дисков Мэриленда (библиотеки)
- аманда-сервер (1: 3.5.1-2 + b2)
Набор математических инструментов
Оконный менеджер
из Plan 9
Инструмент
Пакет
, совместимого с ip.access
Плагин проверки грамматики
Брокер сообщений Java
Пользовательский интерфейс настройки черного списка
Источники драйверов
Программное обеспечение
Программа просмотра медицинских изображений
Цифровая генетическая модель
Покрытие кода
Стандартная библиотека
Инструмент поиска текста
Драйвер пространства пользователя
Утилиты настройки и управления
Серверная часть хранилища
Серверная часть хранилища
Консоль управления и отладки
Генератор лексического анализатора
Введение в алгоритмику
Графический микшер звуковой карты
Утилита
Переключатель задач
.
пакетов конфигурации Debian
пакетов конфигурации Debian
На этой странице описывается
config-package-dev пакет, система, которая
позволяет легко и эффективно создавать пакеты конфигурации Debian.
Пакеты конфигурации — это пакеты, цель которых — настроить
Система Debian, а не добавление нового программного обеспечения.
config-package-dev состоит из расширения Debhelper, а также набора
модулей для Общего
Система сборки Debian. Система config-package-dev была
первоначально созданный Андерсом Касеоргом и Тимом Эбботтом в рамках проекта MIT Debathena; Поддержка Debhelper была добавлена
Джеффри Томас.
Содержание
Установить config-package-dev
config-package-dev включен в Debian и Ubuntu (и должен
поэтому быть в последующих дистрибутивах). Вы можете просто
установите пакет config-package-dev с вашим пакетом
управляющий делами.
Обзор исходного кода и примеров
Исходный код config-package-dev хранится в git:
git clone git: //debathena.mit.edu/config-package-dev.git
Если ваши репозитории apt правильно настроены, apt-get
source config-package-dev также будет работать, чтобы загрузить исходный код
для версии вашего дистрибутива config-package-dev.
Вы также можете просмотреть
код онлайн через gitweb. Отчеты об ошибках, комментарии и исправления
добро пожаловать в [email protected].
Несколько простых примеров есть в примерах /
каталог в источнике. См. Ниже еще несколько примеров с аннотациями, например
а также транк / дебатена / конфиг
в репозитории Debathena Subversion для нескольких производственных пакетов
используя config-package-dev. (Большинство из них все еще используют CDBS,
хотя мы будем конвертировать наш собственный репозиторий в стиль Debhelper 7
rules файлы в ближайшее время.)
Обзор системы
config-packge-dev поддерживает три операции:
смещение , преобразование и
скрыть . Все они используют dpkg-divert
операция по перемещению упакованных файлов в альтернативные места.
Операция displace состоит из перемещения упакованного
файл в сторону и предоставив другую версию этого файла. Например,
debathena-nsswitch-config вытесняет
/etc/nsswitch.conf в /etc/nsswitch.conf.debathena-orig,
устанавливает свою индивидуальную конфигурацию в
/ etc / nsswitch.conf.debathena и разместите символическую ссылку из
nsswitch.conf в настроенную версию.
В дополнение к файлам конфигурации обычно используется для установки
сценарий оболочки для исполняемого файла. debathena-pidgin-config, для
например, заменяет / usr / bin / pidgin и предоставляет оболочку
скрипт, который настраивает MIT Jabber в домашнем каталоге пользователя, а затем
запускает /usr/bin/pidgin.debathena-orig. Потому как
dpkg-divert, обновленные версии Pidgin по-прежнему
безопасно установлен в / usr / bin / pidgin.дебатена-ориг.
Операция преобразования является частным случаем
смещение операции.
Во время сборки к исходному источнику применяется «сценарий преобразования»,
и результат используется как замена в операции смещения. А
обычно это используется для изменения одного значения в файле конфигурации без
необходимость перепечатать весь файл конфигурации (и риск бит-гниль). По факту,
debathena-nsswitch-config использует трехстрочное преобразование Perl
скрипт для добавления ссылок на определенные серверные части NSS, которые Дебатена
потребности, оставив остальную часть файла, соответствующую исходному потоку по умолчанию
конфигурация используемого дистрибутива.
Операция hide — еще один частный случай
операция смещения, а именно отсутствие замены или символической ссылки.
Вместо этого файл перенаправляется на уникальный путь в целевой системе.
специфичен для пакета, выполняющего операцию скрытия (а именно в
/ usr / share / package ) вместо того, чтобы оставлять его в
тот же каталог. Обычно это используется для подавления файла фрагмента в
каталог конфигурации, например /etc/cron.d. Стандартный смещение
механизм оставит три файла, выполняемых cron (символическая ссылка,
.файл .debathena и .debathena-orig), побеждая
цель его настройки. Использование операции скрытия и установка
crontab с другим именем оставляет только один файл, запущенный cron, так как
предназначены.
Во всех этих операциях используется расширение смещения , которое
по умолчанию используется точка, за которой следует первое слово, разделенное дефисом
имя пакета. В этих примерах, поскольку все пакеты начинаются с
debathena-, расширение смещения было
.debathena. Мы рекомендуем вам следовать этому соглашению об именах, но
его можно настроить (см. описание
debian / , пакет .смещение-расширение ниже). Обратите внимание, что
система не обрабатывает изменение этого расширения при обновлении.
Что нужно для начала
Вам нужно будет загрузить и установить
config-package-dev по ссылке выше.
Если вы не знакомы с процессом строительства
Пакеты Debian, вы можете посмотреть Debian
руководство по упаковке [PDF].
Мы рекомендуем использовать config-package-dev с sbuild
и schroot, pbuilder или другой фреймворк для
создание пакетов Debian в чистой среде.
В этой статье описан интерфейс Debhelper для
config-package-dev, используя файлы правил в стиле Debhelper 7. В
Интерфейс CDBS версии 4 и более ранних все еще присутствует, но будет
не получить дальнейшего развития внимания. Некоторая документация для этого есть
присутствует в исходном коде. Мы считаем, что интерфейс Debhelper проще
понять и использовать, и побудить вас перейти с CDBS, если вы
иметь существующие пакеты, использующие эту систему.
Интерфейс
Чтобы начать использовать модуль расширения config-package-dev с
секвенсор dh, просто передайте
—with = config-package.Например, простой
файл debian / rules — в большинстве случаев достаточно —
будет
#! / Usr / bin / make -f %: dh $ @ --with = пакет конфигурации
Как и другие команды Debhelper, система config-package-dev
управляется через файлы в подкаталоге debian каталога
пакет. Эти файлы обычно называются
debian / , пакет . тип (например,
debian / debathena-kerberos-config.displace), хотя для
одинарные двоичные пакеты, их можно просто назвать
debian / введите .
- пакет debian / .displace
- Список абсолютных путей к перенаправляемым файлам, по одному в строке. Каждый
путь должен содержать расширение смещения как подстроку хотя бы один раз
(только последний экземпляр расширения смещения в имени файла будет
быть раздетым). Обратите внимание, что это не установит файл замены.
автоматически; если вы хотите, вы должны сделать это сами (возможно,
используя пакет debian / .install через
dh_install), и вы должны установить ее по пути, который вы
указано.config-package-dev создаст символическую ссылку из
путь без расширения смещения. - пакет debian / . Скрыть
- Список абсолютных путей к файлам, которые будут преобразованы в уникальный путь в
/ usr / share / пакет /. Обратите внимание, что это не установит
замена файла автоматически; если вы хотите один, вы должны сделать это
сами (возможно, используя dh_install), и вы должны дать ему
другое имя, чем у исходного файла. - пакет debian / .transform
Каждая строка в файле определяет преобразование.Преобразование
состоит из двух полей, разделенных пробелами: полный путь к
целевой файл, включая расширение смещения и преобразование
сама команда. Преобразование может быть либо отдельной оболочкой
команду или исполняемый файл в каталоге debian. В
преобразование берет исходный источник файла на стандартный ввод и печатает
его преобразование на стандартный вывод. Преобразования обычно выполняются
на perl, sed или awk, но нет ограничений на то, что можно использовать как
преобразование.Например, чтобы преобразовать /etc/school.conf, заменив все
появления слова «Гарвард» со словом «Массачусетский технологический институт», вы можете
укажите следующую строку:/etc/school.conf.debathena sed -e 's / Harvard / MIT / g'
Или, сохраняя команду в отдельном скрипте (который был единственным
вариант доступен с CDBS):/etc/school.conf.debathena debian / transform_school.conf.debathena
Если сценарий преобразования завершается неудачно, сборка пакета завершается ошибкой.Вы можете использовать
это, например, Синтаксис Perl или die, чтобы убедиться, что исходный код
файл преобразования не изменился по сравнению с ожидаемым.При нормальной работе источник (прошел
на stdin) для преобразования — это целевой файл без
расширение смещения. В некоторых случаях вы можете захотеть использовать другой
источник (например, образец файла конфигурации в / usr / share / doc). Вы можете
укажите этот источник как дополнительное поле между целью
имя файла и преобразование. Это поле должно начинаться с символа ‘<' сразу за ним следует полный путь к источнику.Принимая пример выше, мы можем изменить его следующим образом:/etc/school.conf.debathena
Обратите внимание, что нет операции «непреобразование». Потому что преобразование
операция - это частный случай операции смещения, «несмещение»
операция - это правильный способ удаления ненужного
преобразование в будущих версиях пакета.- пакет debian / .undisplace
- Список абсолютных путей к файлам, которые были перемещены в старых версиях
этого пакета, но чьи операции смещения должны быть отменены, когда
эта версия пакета установлена.Каждый файл должен быть указан как
это было в пакете debian / .displace, а именно полный путь
включая расширение смещения. Это в первую очередь полезно для удаления
теперь ненужное перемещение или преобразование из пакета при обновлении. - пакет debian / .unhide
- То же, что и предыдущее, но для отмены операций скрытия.
- пакет debian / .displace-extension
- Укажите расширение смещения явно. Мы рекомендуем вам имя
ваши пакеты, чтобы они могли использовать значения по умолчанию (например,г., вся конфигурация Debathena
пакеты называются debathena- что-то -config, что
вызывает значение по умолчанию .debathena) и пропускает этот файл. Но если ты
необходимо использовать другое соглашение об именах для вашего пакета, вы можете
поместите фактическое расширение смещения, которое вы хотите использовать в этом файле.
Примеры
Пакет config-package-dev содержит ряд простых
примеры готовы к модификации. Мы подробно объясняем один здесь.
Lynx - это веб-браузер в текстовом режиме, домашнюю страницу которого можно настроить в
рысь.cfg глобальный файл конфигурации. Мы бы хотели по умолчанию
домашнюю страницу Массачусетского технологического института, а не веб-сайт Lynx.
Можно реализовать пакет config-package-dev для
реализовать это изменение следующим образом (части файлов, относящиеся к
config-package-dev выделены зеленым ):
debian / контроль:
Источник: debathena-transform-example Раздел: config Приоритет: экстра Майнтейнер: Geoffrey ThomasBuild-Depends: debhelper (> = 7.0,0 ~), config-package-dev (> = 5,0) , рысь Стандарты версии: 3.9.2 Пакет: debathena-transform-example Архитектура: все Зависит: $ {misc: Depends}, lynx Предоставляет: $ {diverted-files} Конфликты: $ {diverted-files} Описание: Пример пакета config-package-dev Это пример пакета config-package-dev.
debian / правила:
#! / Usr / bin / make -f %: dh $ @ --with = пакет конфигурации
debian / debathena-transform-example.#STARTFILE:. * $ | $ & \ NSTARTFILE: http: //web.mit.edu/ | m or die '
Полученный пакет при установке будет перенаправлять
/etc/lynx-cur/lynx.cfg и замените его (символической ссылкой на) a
файл, идентичный исходному lynx.cfg, распространяемому Debian,
кроме случаев, когда для домашней страницы установлено значение http://web.mit.edu/.
Вы можете просмотреть примеры в
config-package-dev здесь.
Мотивация и философия
Конфигурационные пакеты имеют ряд преимуществ перед другими
подходы (например, файл preseed
подход и Cfengine) для
распространение конфигурации сайта, такой как специфическая для MIT
конфигурации распространяются как часть Debathena.
- Локальный администратор машины может легко переопределить сайт
по умолчанию. - Система config-package-dev никогда не уничтожает информацию.
Пакеты конфигурации поддерживают удаление, что восстанавливает
машина в свою конфигурацию перед соответствующей конфигурацией pakcage
был установлен. - config-package-dev поддерживает установку
конфигурация на существующей машине с неизвестным состоянием, а также
поддерживает распространение обновлений конфигурации всего сайта для всех
запущенных машин через стандартный интерфейс apt-get. - Система config-package-dev может легко поддерживать несколько
выпускает одновременно Debian и Ubuntu: Debathena поддерживает
семь дистрибутивов на i386 и amd64. - config-package-dev предназначен для сохранения
несвязанные вверх по течению изменения (даже в комментариях) легко и автоматически.
В примерах
мы используем простые регулярные выражения для выполнения
любая модификация стандартного файла конфигурации
нужно.
Эти свойства делают пакеты конфигурации эффективными для
распространение конфигураций сайтов в организациях в масштабе
Университет.Они позволяют настроить параметры сайта по умолчанию, чтобы
взаимодействие с любыми сервисами сайта «просто работает», без ограничений
возможность отдельных пользователей на сайте контролировать свои
машина.
Обсуждения конфигурации
пакеты в Debian Wiki также могут быть интересны, как и
нить
на debian-devel, обсуждая слабые места системы и технические
мотивация для системы ..
Связанный проект, имеющий отношение к поддержке нескольких дистрибутивов:
система сборки Debathena, которая позволяет использовать одну пару пакет-версия
появиться в репозитории apt несколько раз (мы добавляем теги
например ~ ubuntu7.04 на номер версии во время сборки). Это также
содержит код для автоматизации процесса сборки пакетов для многих
разные архитектуры; однако это не задокументировано для выпуска.
Если вы хотите, чтобы мы выпустили его, отправьте нам письмо по адресу
[email protected].
Архитектура
Система config-package-dev использует dpkg-divert для
переместите в сторону файлы конфигурации. dpkg-divert является стандартным
Функция Debian, которая настраивает dpkg, пакет Debian
менеджер, чтобы переместить любой файл, упакованный для установки по заданному пути, в
другое место.Использование dpkg-divert для настройки
файлы означает, что когда Debian апстрим обновляет соответствующие
файл конфигурации, они не будут отменять изменения сайта. Это также
означает, что все обновления Debian будут сохранены, если
пакет конфигурации когда-либо удаляется.
Использование здесь символической ссылки вместо прямой замены — это
необходимо по техническим причинам, связанным с тем, как Debian распаковывает файлы.
Система переадресации в config-package-dev была тщательно
протестированы на поддержку удаления, обновления и чистого восстановления
когда вы нажимаете ^ C во время установки чего-либо
(или установка не удалась по какой-либо другой причине).
Наша система конфигурации реализована в едином Debhelper
команда, dh_configpackage. В то время как
модуль расширения секвенсора config-package автоматически, запускается
его можно использовать непосредственно в
файлы правил Debhelper в старом стиле. Вы также можете использовать условное
override_dh_configpackage: цель Makefile с помощью debhelper
(> = 7.0.50 ~) для вызова dh_configpackage с параметрами.
Все операции (смещение, скрытие, преобразование, удаление, отображение), выполняемые
по умолчанию в каждой строке файла
debian / , пакет . операция . Для
смещения и скрытия операций, и для их отмены эти файлы являются
список путей, по одному в строке; операция преобразования имеет дополнительные
синтаксис для указания преобразования. Списки также могут быть предоставлены на
командную строку, предоставив аргументы для
— операция опция. Каждый раз
— операция указывается с аргументом, это
интерпретируется, как если бы это была строка в
debian / , пакет . операция файл. Если любой из
эти параметры командной строки присутствуют, тогда файлы в
debian / игнорируются при этом запуске
dh_configpackage.
Операция смещения
Если в этом списке присутствует файл .debathena, то на
postinst, файл будет перенаправлен на
файл .debathena-orig и символическая ссылка
файл -> файл .debathena будет
установлен. После использования нашей системы для вытеснения
/etc/ldap/ldap.conf, состояние системы будет:
$ ls -l /etc/ldap/ldap.conf* lrwxrwxrwx 1 root root 19 13.08.2007 17:07 /etc/ldap/ldap.conf -> ldap.conf.debathena -rw-r - r-- 1 root root 347 15.08.2007 17:58 /etc/ldap/ldap.conf.debathena -rw-r - r-- 1 root root 333 13.08.2007 17:27 /etc/ldap/ldap.conf.debathena-orig $ / usr / sbin / dpkg-divert --list | grep ldap перенаправление /etc/ldap/ldap.conf на /etc/ldap/ldap.conf.debathena-orig с помощью debathena-ldap-config
Обратите внимание, что расширение смещения может появляться в любом месте
имя файла. Таким образом, /usr/share/man/man1/manpage.1.gz будет
перенаправлен на /usr/share/man/man1/manpage.debathena-orig.1.gz
и создана символическая ссылка, указывающая
/usr/share/man/man1/manpage.1.gz в
/usr/share/man/man1/manpage.debathena.1.gz, так что человек
manpage.debathena-orig , man manpage.debathena и
man manpage все ведут себя так, как ожидалось.
Также обратите внимание, что при перемещении файлов вам понадобится
для создания и установки файла замены
файл .debathena (возможно, используя
dh_install) самостоятельно. Посмотреть примеры
package .install файлы ниже, чтобы узнать, как это сделать.
Операция скрытия
Описанная система не подходит для замены файлов в
каталоги, такие как /etc/cron.d, где все файлы в
справочник — в случае перенаправления
/etc/cron.daily/lprng, исходное задание cron
запустить, и новое задание cron будет выполнено дважды. Вы можете
прогоните такие файлы в / usr / share / , пакет с
скрыть операцию. Fo
Например, в Debian etch пакет lprng содержал ошибку
cron работа. После скрытия файла в пакете с именем
lprng-no-cron, у одного:
$ / usr / sbin / dpkg-divert --list | grep cron отвлечение / etc / cron.daily / lprng на /usr/share/lprng-no-cron/etc++cron.daily++lprng от lprng-no-cron
Если вы хотите вместо этого заменить задание cron другим,
вам просто нужно установить новый cron, просто используя dh_install
(или в случае cron, вероятно, лучше использовать
dh_installcron, назвав ваш новый файл cron
debian / foo.cron.daily). Не давать на замену cron работу
то же имя, что и исходное, вместо этого дайте ему другое имя,
например /etc/cron.daily/lprng.divert. Если вы используете то же самое
имя, невозможно будет установить ваш пакет в том же
вызов apt, который устанавливает пакет, содержащий
оригинальная работа cron.
Кодировка имени файла с использованием символов +, показанных в последнем
пример также используется для обеспечения того, чтобы два пакета перенаправляли один и тот же файл
конфликт; если оба пакета перенаправляют /etc/cron.daily/lprng, они
будет и Provides:, и Conflicts:
настраивает-etc ++ cron.daily ++ lprng. Кодировка, используемая в обоих
case — это взаимно однозначная карта между законными именами файлов ASCII и именами пакетов.
Чтобы включить это, вам нужно добавить $ {diverted-files} в свой
Предоставляет и конфликтует строки вашего файла debian / control; видеть
приведенные ниже примеры для подробностей.
Операция преобразования
Операция преобразования основана на операции смещения. Есть
три части в каждой строке: имя файла формы
путь / файл .debathena, необязательный исходный файл для
преобразование с добавленным ‘<' и команда для запуска для
трансформация. dh_configpackage проверит, что
путь / файл неизменен (при необходимости проверит
происхождение диверсий, поэтому его можно использовать, даже если
путь / файл на данный момент смещен).Тогда это будет
преобразовать немодифицированный файл конфигурации, пропустив его через
команду трансформации и установите результат как
путь / файл .debathena. Наконец, он вытеснит
путь / файл как обычно. Если необязательный исходный файл
задано, то операция преобразования будет использовать этот файл в качестве входных данных для
команда трансформации.
Общие проблемы
- Запуск кода в сценарии postinst
- Если вы хотите запустить какой-либо другой код в сценарии postinst вашего
пакет конфигурации, просто напишите обычный сценарий postinst,
но включите где-нибудь в сценарии строку# DEBHELPER #
Эта строка будет заменена автоматически созданным кодом postinst для
пакет, включая код переадресации, сгенерированный config-package-dev.Пример сценария
/usr/share/debhelper/dh_make/debian/postinst.ex
(входит в пакет dh-make) использует эту директиву, но
обратите внимание, что в некоторых случаях вы захотите переместить строку перед вашим
код конфигурации, например, если вы хотите перезапустить демон
используя новую конфигурацию. Код в postinst перед
# DEBHELPER # линия будет работать до переадресации в
место. - пакетов Debian, использующих debconf (или иначе
автоматическое создание файлов конфигурации) - Некоторые пакеты
автоматически генерировать свои файлы конфигурации при установке, чтобы
файлы конфигурации не управляются dpkg.Кто-то должен
внимательно прочитайте и проверьте сценарии сопровождающего этого пакета (особенно
postinst), чтобы убедиться, что они не отменяют наши
dpkg-divert и механизм символических ссылок при обновлении пакетов
(в противном случае вам, вероятно, следует отправить отчет об ошибке). Также такие
пакеты могут не предоставлять чистый файл конфигурации восходящего потока; Однако,
часто можно извлечь чистую конфигурацию восходящего потока из
/ var / lib / dpkg / info / пакет .postinst. - Пакеты Debian с использованием ucf
- В некоторых пакетах используется
ucf, чтобы проверить, отправлен ли файл конфигурации
пакет был изменен, чтобы решить, заменять ли его.Идеально,
ucf следует изменить так, чтобы он следовал за dpkg-divert, когда
ищу файлы конфигурации (это Debian # 477773).
По состоянию на весну 2013 года наш список рассылки — [email protected]. Вы также можете
присоединиться
список или просмотреть архив через Mailman.
Kaseorg и значительно обновлено для Debhelper Джеффри Томасом,
с некоторым текстом, взятым из страницы руководства Джонатана Рида для
dh_configpackage.
.