В Arch Linux есть свой менеджер пакетов, и в прошлой статье, я писал уже об этом, но бывают случаи, что по какой-то причине нужно установить deb-пакет, и в этой статье мы посмотрим как это сделать.
Хотя pacman и крутой менеджер пакетов, а в дополнении с AUR, им вообще нету цены, но бывают такие приложения, которые запакованы только в deb-пакет, и даже нету исходников, а иногда из deb легче установить чем курить все эти исходники, и ломать голову из-за всех этих зависимостей которые требуются для сборки пакетов.
В ArchLinux есть несколько способов, для установки deb-пакетов, и ниже я покажу их.
deb — расширение имён файлов «бинарных» пакетов для распространения и установки программного обеспечения в ОС проекта Debian, и других, использующих систему управления пакетами dpkg. Deb — это часть слова Debian, в свою очередь, образованного от слов Debra — имени подруги (впоследствии — жены, ныне — бывшей) основателя Дебиана Яна Мердока и Ian от его собственного имени.
Установка deb пакета с помощью dpkg
dpkg — это программное обеспечение, являющееся основой системы управления пакетами в Debian и ряде других операционных систем, основанных на Debian, например Ubuntu. dpkg используется для установки, удаления, и получения информации о .deb пакетах. dpkg является довольно низкоуровневой утилитой.
Хотя это программное обеспечения предназначено в первую очередь для debian, но мы можем спокойно использовать его в ArchLinux.
Чтобы установить dpkg в arch, откройте терминал сочетанием клавиш Ctrl+Alt+T, и введите команду
yaourt -S dpkg
После минуты установки, вы сможете с легкостью устанавливать deb-пакеты
Например давайте возьмем приложение для прослушивания онлайн радио — ZVVOnlineRadio, которое поставляется только в deb-пакете, для этого перейдите по ссылке ниже, и прочитайте что из себя представляет это приложение
Если вы уже скачали, перейдите в директорию со скачанным файлом, и откройте терминал в этой директории.
Далее введите знакомую(если вы пользовались Debian подобными дистрибутивами) команду для установки приложения
sudo dpkg -i приложение.deb
[linuxthebest@fox-pc Изображения]$ sudo dpkg -i ZVVRadio09f2.deb (Чтение базы данных … на данный момент установлено 845 файлов и каталогов.) Подготовка к распаковке ZVVRadio09f2.deb … Распаковывается zvvradio (0.9.8) на замену (0.9.8) … dpkg: зависимости пакетов не позволяют настроить пакет zvvradio: zvvradio зависит от python3-pyqt5, однако: Пакет python3-pyqt5 не установлен. zvvradio зависит от vlc, однако: Пакет vlc не установлен. dpkg: ошибка при обработке пакета zvvradio (--install): проблемы зависимостей — оставляем не настроенным При обработке следующих пакетов произошли ошибки: zvvradio
Этот пакет требует некоторые зависимости, и показывает что есть ошибка, но если вы найдете и откроете это радио, то оно будет прекрасно работать.
С первым способом разобрались, перейдем ко второму.
Установка deb-пакета в ArchLinux с помощью debtap
debtap — скрипт для конвертации пакетов .deb в пакеты Arch Linux, ориентированные на точность. Не используйте его для конвертирования пакетов, которые уже существуют в официальных репозиториях или могут быть созданы из AUR!
Этот скрипт поможет вам установить .deb пакет в ArchLinux, но не в Manjaro
К сожалению в операционную систему Manjaro вы не сможете установить этот скрипт, ну а если вы используете обычный арч, тогда введите команду ниже для его установки
yaourt -S debtap
После установки, вы можете конвертировать .deb пакеты просто введя команду
debpap название_приложения.deb
Вас сразу-же попросит ввести имя приложения, и лицензию пакета.
==> Extracting package data... ==> Fixing possible directories structure differencies... ==> Generating .PKGINFO file... :: Enter Packager name: quadrapassel :: Enter package license (you can enter multiple licenses comma separated): GPL *** Creation of .PKGINFO file in progress. It may take a few minutes, please wait...
После этого вам всего лишь нужно ввести одну команду для установки приложения
sudo pacman -U название_приложения
Вот и весь второй способ. Перейдем к третьему и последнему способу
Как установить deb-пакет в Arch Linux с помощью PKGBUILD
PKGBUILD — это shell-скрипт, содержащий информацию, необходимую для сборки пакетов Arch Linux.
Пакеты в Arch Linux собираются при помощи утилиты makepkg . При запуске она ищет в текущем каталоге файл PKGBUILD и следует инструкциям из него, чтобы либо скомпилировать код, либо получить файлы для сборки пакета (имя_пакета.pkg.tar.xz). Готовый пакет содержит двоичные файлы и инструкции по установке, благодаря чему может быть легко установлен при помощи pacman.
Это наверное лучший способ установки deb пакетов, вам всего-лишь нужно немножко понимать суть этого скрипта. С помощью этого скрипта, также собирают пакеты для ArchLinux из исходников.
В своем примере я буду использовать приложение для просмотра IPTV телевидения — ZVVOnlineTV, которое поставляется только в .deb пакете.
Вы можете ознакомится с этим приложением, а также скачать его перейдя по ссылке ниже.
После скачивания, создайте новую директорию(с любым названием), и переместите файл туда.
Далее создайте файл с названием — «PKGBUILD», и поместите в него вот такое содержимое
# Maintainer: Вячеслав Зубик
pkgname=zvvonlinetv
pkgver=1
pkgrel=2
pkgdesc=»Простой IPTV плеер для просмотра ТВ»
arch=(‘i386’ ‘x86_64’)
url=»https://zvvubuntu.blogspot.com»
license=(‘custom’)
depends=(‘pyqt5-common’ ‘python-pyqt5’ ‘vlc’ ‘python-six’)
source=(«ZVVOnlineTV${pkgver}_${pkgrel}fix.deb»)
md5sums=(‘c363b47306767f4fbb4ba333b542656d’)package() {
cd «${srcdir}»
bsdtar -xf data.tar.xz -C «$pkgdir»
}
И если выйдет новая версия, и вы захотите ее установить, то измените строку — «pkgver= «, на новую версию, а «pkgrel= «, на новую подверсию, а также уберите в строке «source», слово «fix», если это не исправление.
Например, если выйдет версия ZVVOnlineTV1_3.deb, то вам нужно установить «pkgver=1», а «pkgrel=3», и убрать слово «fix».
Чтобы приступить к сборке и установке, открываем терминал в директории где находятся наши файлы и вводим команду
makepkg -si
После нескольких секунд, у вас будет установлено приложение.
Вот и все. Надеюсь статья была полезной, и если это так, то не забудьте поделиться ею в социальных сетях.
А каким вы пользуетесь способом? Напишите в комментариях ниже.
dpkg installs Debian package manager. This is useful for those who want to create/modify DEB files. However, *do not* use dpkg to install Debian packages in your ArchLinux machine. This will break your system! You will need to go back to Arch wiki and read the installation guide again. You've been warned!
Ну окей как бы.