epm

Материал из ALT Linux Wiki


epm — единая команда управления пакетами, разработанная в компании Etersoft[1]. Основное предназначение: унифицировать управление пакетами в дистрибутивах с разными пакетными менеджерами. Кроме того, сейчас в epm заскриптованы некоторые типовые операции, которые, например, в случае использования apt в ALT потребовали бы ввода более чем одной команды.

Посредством epm можно попытаться установить в систему чужой пакет (предназначенный для другой ОС на базе Linux). Пакет при этом конвертируется в пригодный формат, но:

Внимание!
  1. При установке чужих пакетов (не из репозитория дистрибутива) не предоставляется никаких гарантий.
  2. Для перепаковки чужих пакетов есть некие общие моменты, которые epm может сделать автоматически. Если это получилось, Вам повезло.
  3. Если не повезло, то конкретно под какие-то чужие пакеты можно написать вспомогательные скрипты. Их надо класть в /etc/eepm/, там уже есть некоторые скрипты, кем-то (в основном автором epm) написанные ранее и добавленные в пакет eepm. Скрипт может устареть: мало ли как разработчик соберёт пакет с очередной версией.
  4. Если вспомогательные скрипты скачивают чужие пакеты, они их скачивают не из какого-то общего репозитория, а с сайтов разработчиков этих пакетов.


Установка в ALT Linux:

su -
apt-get install eepm

Описание на сайте разработчика

Пополнения рецептов принимаются по pull request.

Команды

Описание операции Команда epm Альтернативная команда epm Команда ALT Linux
Установка пакета по названию в систему epmi (package) epm install (package)
apt-get install (package)
Установка пакета с конвертацией epmi --repack epm install --repack (package)
Установка файла пакета в систему epmi (package file) epm install (package file) apt-get install (package file)
Удаление пакета из системы epme (package) epm remove (package) apt-get remove (package)
Поиск пакета в репозитории epms (text) epm search (text) apt-cache search (text)
Проверка наличия пакета в системе epmq (package) epm installed (package) rpm -qa (pipe) grep (package)
Список установленных пакетов epmqa epm packages или epm list rpm -qa
Поиск по названиям установленных пакетов epmqp <word> grep <word>
Принадлежность файла к (установленному) пакету epmqf (file) rpm -qf (file) или rpmqf из etersoft-build-utils
Поиск, в каком пакете есть указанный файл epmsf <file> epm filesearch apf search <file>
Список файлов в (установленном) пакете epmql (package) epm filelist <package> rpm -ql (package)
Вывести информацию о пакете epmqi (package) epm info (package) apt-cache show (package)
Обновить дистрибутив epm upgrade epm dist-upgrade apt-get dist-upgrade
Обновить систему[2] и ядро epm full-upgrade apt-get dist-upgrade && update-kernel
Добавить i586-пакеты в систему epm play i586-fix См. biarch
Показать доступные к установке пакеты epm play GUI в Р10 и выше - appinstall[1]

Обновить epm с сервера Etersoft epm ei

Пример использования

Конкретный случай:

epm play sublime
 # bash /etc/eepm/play.d/sublime.sh --run
 # /usr/bin/wget -q -O- https://www.sublimetext.com/download
FATAL: Can't get package URL

Должно было скачать и установить пакет sublime, но что-то пошло не так.

Идём на сайт; поменялся URL архива или ещё что-то, но wget не скачивает.

Скачиваем со странички загрузки и смотрим в скрипте /etc/eepm/play.d/sublime.sh, что должно было скачаться — файл с tar.xz; скачиваем (прямая ссылка) и затем делаем:

epm repack /...путь_до.../sublime_text_build_4126_x64.tar.xz 

Устанавливаем перепакованный пакет:

epmi /..путь../sublime_text_build-4126-alt1.repacked.with.epm.2.x86_64.rpm

Пример установки Яндекс-браузера

Установка Яндекс-браузера с помощью epm (и из репозитория)

Примечания