Упаковка deb: как обрабатывать потенциально отсутствующие зависимости

Согласно комментариям, есть разные причины, по которым это может не совпадать, но выглядеть «невидимым».

Один из распространенных видов сбоя - это файл в формате DOS.

В вашем случае у вас есть скрытые пробелы (пробелы или символы TAB) в конце строки.

Такие команды, как tr ''! или cat -e filename может помочь раскрыть эти символы.

3
07.08.2016, 17:57
1 ответ

Предоставьте (в дополнение к вашему основному пакету) отдельные пакеты aapt и zipalign . Убедитесь, что в их версии есть ~ (например, zipalign-21-4 ~ kefir1.deb ). Затем поместите их в свой репозиторий вместе с вашим основным пакетом, который имеет Depends: aapt, zipalign (я использую easy репозиторий для размещения моего репозитория, это несложно).

Это способ Debian (так же, как работает backports.debian.org ) - если система - это Jessie и предоставляет aapt , то будет использоваться (поскольку у вашего пакета есть тильда в версии, она используется только в крайнем случае). Если система старше Debian, будут извлечены только ваши лишние пакеты. А пользователи получают возможность легко получить обновления / исправления безопасности для ваших пакетов.

Дополнительным преимуществом является то, что при обновлении Jessie официальные пакеты будут извлечены и перезаписаны вашими более старыми дополнительными пакетами (если, конечно, вы специально не зависите от конкретной версии или дополнительных пакетов). И поэтому у вас нет старых / повторяющихся версий, а пользователи получают дополнительные преимущества патчей команды безопасности Debian и т. Д.

3
27.01.2020, 21:22

Теги

Похожие вопросы