Как использовать исходные пакеты DEB для настройки установки программного обеспечения
Если вы используете одну из основных дистрибутивов Linux, таких как Ubuntu или Fedora, у вас будет менеджер пакетов, который позволяет легко устанавливать бинарные пакеты (DEB или RPM) в вашей системе. Однако, если вы планируете настроить программное обеспечение, которое вы устанавливаете, например, добавив дополнительные функции, то вам может понадобиться использовать исходные пакеты и скомпилировать их самостоятельно.
Существует несколько причин, по которым вы можете быть склонны попробовать это сделать самостоятельно:
- Когда вы компилируете что-то локально, вы получаете версию программного обеспечения, которая гораздо больше настроена под ваше оборудование, что может привести к некоторым приростам производительности (в отличие от предварительно скомпилированных бинарных файлов, которые часто нацелены на “наименее общий знаменатель” и могут не использовать возможности более мощных машин).
- Компиляция из исходников также дает вам возможность включать или отключать определенные функции программного обеспечения. Хотя в некоторых случаях это требует изменения кода, в некоторых случаях это так же просто, как добавление или удаление флага из команды сборки.
- Наконец, никогда не повредит, как членам сообщества свободного программного обеспечения, исследовать, как создаются все эти замечательные приложения. Хотя компиляция из архива оригинального исходного кода может быть за пределами того, что делает обычный пользователь, использование исходных пакетов дает возможность заглянуть в процесс разработки и компиляции для нас, простых смертных пользователей.
Структура исходных пакетов DEB
Когда вы загружаете исходный пакет DEB из репозитория, менеджер пакетов будет работать с тремя основными файлами (показанными в репозитории Ubuntu ниже):
- [имя пакета]_[номер версии].orig.tar.gz: Этот файл содержит исходный код от upstream, или от оригинальных разработчиков программы.
- [имя пакета]_[номер версии]build1.debian.tar.gz: Этот архив содержит код выше, с любыми изменениями, необходимыми для его совместимости с системами на основе DEB.
- [имя пакета]_[номер версии]build1.dsc: Описание файлов в пакете, которое также может включать подпись.

Установка исходных пакетов DEB
Система DEB и ее сопутствующие инструменты делают очень простым загрузку и компиляцию версий программного обеспечения из репозиториев APT. Следующие шаги описывают процесс:
Сначала вам нужно установить некоторое программное обеспечение, которое позволяет вам компилировать другое программное обеспечение. Выполните следующую команду в терминале:
sudo apt-get install build-essential
Также убедитесь, что у вас включены исходные репозитории.
Проверьте “Источники программного обеспечения” в вашем менеджере пакетов, чтобы подтвердить, что опция “Исходный код” отмечена.

В качестве альтернативы, проверьте файл “/etc/apt/sources.list” и подтвердите, что следующие строки появляются без знака “#” перед ними (если они есть, просто удалите его и сохраните файл):
deb-src http://us.archive.ubuntu.com/ubuntu/ precise universe deb-src http://us.archive.ubuntu.com/ubuntu/ precise multiverse
Инструмент apt-src — это версия “apt-get”, которая работает с исходными пакетами. Установите его с помощью следующей команды:
sudo apt-get install apt-src
Примечание: если вы сначала установите этот пакет, он также установит пакет build-essentials для вас
Далее, вам может понадобиться получить некоторые библиотеки или другое программное обеспечение, необходимое для сборки пакета, который вы хотите (это зависимость, но отличается от зависимости, с которой вы можете столкнуться при установке бинарных пакетов).
sudo apt-get build-dep [имя пакета]
Теперь вы можете загрузить пакет. Следующая команда загрузит пакет для вас, скомпилирует его и автоматически установит:
sudo apt-src --build install [пакет]
Если вы предпочитаете загрузить исходный пакет, чтобы заглянуть внутрь или внести некоторые изменения, вы можете загрузить его, а затем установить, когда он будет на вашей локальной системе, с помощью следующей команды:
sudo apt-src install [имя пакета]
(Это загрузит исходные файлы выше)
sudo apt-src build [имя пакета]
(Это соберет пакет из загруженных файлов)
sudo dpkg -i [имя файла(ов) пакета].deb
Исходные пакеты Debian и их сопутствующие инструменты — отличный способ начать изучение того, как создается свободное программное обеспечение. Как член сообщества, вы должны попробовать это и научиться ценить всю тяжелую работу, которую вложили разработчики.