Astra linux dpkg repack

SYNOPSIS¶

dpkg-repack [option. ] package-name.

DESCRIPTION¶

dpkg-repack creates a .deb file out of a Debian package that has already been installed on your system.

If any changes have been made to the package while it was unpacked (e.g. conffiles files in /etc modified), the new package will inherit the changes. (There are exceptions to this, including changes to configuration files that are not conffiles, including those managed by ucf(1).)

This utility can make it easy to copy packages from one computer to another, or to recreate packages that are installed on your system, but no longer available elsewhere.

Note: dpkg-repack will place the created package in the current directory.

OPTIONS¶

-d, —deb-option=option Pass option as build argument to dpkg-deb. This option can be specified multiple times. —generate Generate a temporary directory suitable for building a package from, but do not actually create the package. This is useful if you want to move files around in the package before building it. The package can be built from this temporary directory by running «dpkg-deb —build dir .» as root (or by using fakeroot -u), where dir is the generated directory. none Tag nothing. This can be specified first to be augmented by more specific things. description Append a timestamped «Repackaged by dpkg-repack» tagline to the package’s control file Description field. This tag is enabled by default. version Append a «+repack» tag to the package version. all Tag everything.

BUGS¶

There is a tricky situation that can occur if you dpkg-repack a package that has modified conffiles. The modified conffiles are packed up. Now if you install the package, dpkg(1) does not realize that the conffiles in it are modified. So if you later upgrade to a new version of the package, dpkg(1) will believe that the old (repacked) package has older conffiles than the new version, and will silently replace the conffiles with those in the package you are upgrading to.

While dpkg-repack can be run under fakeroot(1) and will work most of the time, fakeroot -u must be used if any of the files to be repacked are owned by non-root users. Otherwise the package will have them owned by root. dpkg-repack will warn if you run it under fakeroot(1) without the -u flag.

Читайте также:  Hp envy linux drivers

SEE ALSO¶

Source file: dpkg-repack.1.en.gz (from dpkg-repack 1.52)
Source last updated: 2023-01-07T22:40:57Z
Converted to HTML: 2023-06-11T00:09:08Z

Источник

Собираем Deb-пакет из установленных пакетов в Linux

Данная статья первым делом адресована тем, кто разбирается в программировании и может изменять системные файлы, в том числе и программные. Предположим, вы установили какую нибудь программу, внесли в нее какие-нибудь важные изменения и хотите собрать свой Deb пакет либо для того что бы выложить его на своем ресурсе, либо, лично для себя. Так же возможно, что данный пакет более не поддерживается производителем. Это конечно можно реализовать, собственно, тут не чего сложного нет. Для справки, Deb пакеты используются в таких дистрибутивах как Debian, Ubuntu, Linux Mint, MX Linux и так далее. Разумеется, это не весь список Deb ориентированных систем, он довольно-таки большой, при желании вы можете ознакомиться со списком на WIKI.

Сборка Deb-пакета в Linux

И так, предположим, вы готовы к сборке Deb пакета, для начала нужно установить пакет “dpkg-repack”, который и будет собирать наш отредактированный Deb пакет:

sudo apt install dpkg-repack

Для примера я буду собирать пакет Conky-Manager, который установлен на виртуальной машине Но, что бы посмотреть все содержимое установочного пакета можно выполнить команду “dpkg –contents” далее просто указываем название пакета. Замечу, что данная команда выведет именно содержимое установочного пакета, а не того, который уже установлен у вас в системе. То есть, этой командой вы можете просмотреть содержимое собранного вами Deb пакета:

dpkg --contents conky-manager_2.4~136~ubuntu16.04.1_amd64.deb

Deb пакет из установленных пакетов в Linux 1

Что бы приступить к самой сборке уже установленного в вашей системе Deb пакета, выполним команду “dpkg-repack” и указываем название пакета:

sudo dpkg-repack conky-manager

Deb пакет из установленных пакетов в Linux 2

Как вы можете увидеть на скриншоте, в домашней директории появился собранный Deb пакет Conky-Manager. Сама же сборка прошла буквально в считанные секунды. Более подробно о пакете “dpkg-repack” вы можете узнать из справки, которая вызывается следующей командой:

Deb пакет из установленных пакетов в Linux 3

Заключение

Вот таким вот не хитрым способом можно собирать Deb пакеты в Linux системах, основанных на Debian, а так же на других Deb ориентированных системах. Что особенно интересно отметить, что данный способ весьма прост и не затратен по времени. Точно так же можно собрать уже отредактированные Deb пакеты для своего личного репозитория, если конечно он у вас имеется. Это может быть как локальные репозиторий, так например и на GitHub. В любом случае вы всегда можете иметь возможность собирать Deb пакеты из своей системы и распространять их для других пользователей. Стоит так же отметить, что данный способ не распространяется на конфигурационные файлы. То есть, пакет будет собираться невзирая на внесения изменений в эти самые конфигурационные файлы.

Читайте также:  Emulate linux on android

P.S. Про установку Conky Manager можно прочесть в этой статье, где подробно описан процесс установки и настройки Ubuntu, данный способ так же пригоден и для Debian с оболочкой рабочего стола Gnome 3.

А на этом сегодня все. Надеюсь данная статья будет вам полезна.
Журнал Cyber-X

Источник

Пакет: dpkg-repack (1.52)

восстановление архива пакета Debian из установленных файлов

dpkg-repack создаёт .deb файл из пакета, который уже установлен в системе. Если после установки пакета в файлах, которые его составляют, были сделаны какие-либо изменения, то создаваемый пакет наследует эти изменения.

Данная утилита может легко выполнять копирование пакетов с одного компьютера на другой или пересоздавать пакеты, которые уже установлены в вашей системе, но больше недоступны для установки, или сохранять текущее состояние пакета перед его обновлением.

Теги: Системное администрирование: Управление пакетами, Разработка программного обеспечения: Debian, devel::packaging, implemented-in::perl, Пользовательский интерфейс: Командная строка, Роль: role::program, scope::utility, Комплект приложений: Debian, Работает с: Упакованное ПО

Другие пакеты, относящиеся к dpkg-repack

  • зависимости
  • рекомендации
  • предложения
  • enhances
  • dep: dpkg (>= 1.21.0) система управления пакетами Debian
  • dep: libdpkg-perl Dpkg perl modules
  • dep: perl практический язык Ларри Уолла для извлечения данных и составления отчётов
  • sug: fakeroot инструмент для имитации привилегий суперпользователя
    также виртуальный пакет, предоставляемый pseudo

Загрузка dpkg-repack

Загрузить для всех доступных архитектур
Архитектура Размер пакета В установленном виде Файлы
all 17,9 Кб 38,0 Кб [список файлов]

Эта страница также доступна на следующих языках (Как установить язык по умолчанию):

Чтобы сообщить о проблеме, связанной с веб-сайтом, отправьте сообщение (на английском) в список рассылки debian-www@lists.debian.org. Прочую контактную информацию см. на странице Debian Как с нами связаться.

Авторские права © 1997 — 2023 SPI Inc.; См. условия лицензии. Debian это торговый знак компании SPI Inc. Об этом сайте.

Источник

Как собрать Deb-пакеты (Debian Binary Packages) из уже установленных программ

Представьте себе следующий сценарий. Вы установили несколько пакетов Debian в своей системе. И вы хотите установить те же пакеты в другой системе. Но вы потеряли двоичные архивы, то есть файлы deb. При этом у вас нет возможности скачать пакеты с их официального сайта или репозитория? Что если конкретная версия определенного пакета больше не доступна? Или, например, вы хотите собрать deb-пакет из установленной программы, но в файлах программы (не конфигурационном файле) внесены важные для вас изменения? Не переживайте! Поскольку они уже установлены в вашей системе, вы можете легко восстановить файлы .deb.

Читайте также:  Установка linux диск windows

Для решения подобных проблем нам подойдет инструмент dpkg-repack, данная утилита позволяет собирать файлы установленной программы в deb-пакет. Несмотря на то, что инструмент dpkg-repack не имеет графического интерфейса, его работа максимально проста.

Установка dpkg-repack в Debian, Ubuntu и производных

Пакет dpkg-repack доступен в репозиториях по умолчанию в Debian, Ubuntu и его производных. Чтобы установить dpkg-repack достаточно запустить следующую команду:

sudo apt install dpkg-repack

Как собрать Deb-пакет из установленной программы с помощью dpkg-repack

В качестве примера будет собран deb-пакет стабильной версии браузера Opera.

Я мог бы скачать deb-пакет браузера, но именно в данном случае, имею ввиду в случае с браузером Opera, мне гораздо удобнее будет собрать установочный, исправленный пакет. В браузере Opera есть известная проблема с воспроизведением HTML видео с помощью кодека H.264 (легко можно проверить при включении проигрывания прямых трансляций на Youtube). Проблема встречалась и в Яндекс.Браузере и когда-то в браузере Vivaldi. По этой причине было бы гораздо лучше иметь deb-пакет браузера Opera для Linux с решенной проблемой воспроизведения видео.

Проблему с воспроизведением HTML видео в браузере Opera я решил заменой файла libffmpeg.so в директории /usr/lib/x86_64-linux-gnu/opera , это именно та директория в которую устанавливается браузер. Поэтому собранный пакет будет содержать в себе рабочий файл libffmpeg.so и при этом в нем не будет файлов пользователя (конфигурационных файлов).

Перейдём к непосредственной сборке deb-пакета Opera-stable. Выполняем следующую команду:

Времени на сборку пакета ушло чуть меньше одной минуты. Собранный установочный пакет будет расположен в Домашней папке

В случае проблем, связанных с разрешениями попробуйте собрать пакет из среды fakeroot:

fakeroot -u dpkg-repack opera-stable

При этом при сборке другой программы я столкнулся с ошибкой “ предупреждение: неизвестное информационное поле «Original-Maintainer» во входных данных в элемент в файле состояния dpkg”, решить которую не получилось.

Просмотр содержимого deb-файла

Посмотреть содержимое установочного файла можно следующей командой:

dpkg --contents opera-stable_68.0.3618.125_amd64.deb

Установить собранный пакет рекомендую либо с помощью утилиты Gdebi, либо консольным вариантом:

sudo dpkg -i opera-stable_68.0.3618.125_amd64.deb

Для решения возможных проблем с зависимостями стоит воспользоваться следующей командой:

Для более подробной информации по работает с утилитой dpkg-repack обратитесь к справочным страницам:

Пользователи операционных систем Debian, Ubuntu и производных, если у вас не установлена версия браузера Opera с исправлением проблемы воспроизведения видео, то было бы интересно узнать ваш опыт проверки исправленной версии браузера. Скачать можно по ссылке: opera-stable_69.0.3686.36_amd64.deb

Источник

Оцените статью
Adblock
detector