2

У пакета Citrix ICA Client (Receiver) 13 .deb есть некоторые известные проблемы. Как мне внести изменения в пакет? Мне нужно удалить некоторые зависимости и изменить скрипт установки.

Ссылка: Как мне установить Citrix ICA Client (Receiver) 13 в 64-битном Linux Debian?

1 ответ1

3

Я отвечаю на этот вопрос сам, потому что другие могут найти эту информацию полезной. Эти вопросы и ответы были вдохновлены другим вопросом: как мне установить Citrix ICA Client (Receiver) 13 на 64-битный Linux Debian?

  1. Создайте временный каталог и скопируйте в него файл .deb .
  2. Извлеките файл .deb: ar vx archive.deb
  3. Появятся три файла:
    • debian-binary: не трогать
    • control.tar.gz: настройка и сценарии для установки и удаления
      • Этот файл может иметь другое расширение, в зависимости от используемого формата сжатия.
    • data.tar.gz: файлы для установки
      • Этот файл может иметь другое расширение, в зависимости от используемого формата сжатия.

Оба файла *.tar.gz могут иметь разные расширения в зависимости от используемого формата сжатия. Формат .deb поддерживает несколько разных. Также оба файла *.tar.gz являются tarbombs, поэтому все файлы будут взорваны по одному пути. Лучше создать временный каталог, скопировать, а затем распаковать.

Файл control.tar.gz содержит два файла, которые можно взломать:

  • control: Содержит список зависимостей пакета. Вы можете добавлять / удалять зависимости.
  • postinst: содержит скрипт после установки. Вы можете добавлять / удалять команды.

Создайте файлы *.tar.gz как: tar -czvf control.tar.gz * или (data.tar.gz)

Наконец, создайте новый архив. Здесь очень важен порядок: ar rv my_new_package.deb debian-binary control.tar.gz data.tar.gz

Вы можете попробовать свой новый пакет с этими командами:

  • Удалите существующий пакет: apt-get remove $package_name
    • ... где $package_name - это имя вашего пакета, например, icaclient
  • Установите новый пакет: dpkg --install my_new_package.deb

Ссылка: http://tldp.org/HOWTO/html_single/Debian-Binary-Package-Building-HOWTO/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .