Установите неисполняемые файлы с помощью dh_install

У меня есть пакет debian, в котором есть следующий файл install:

src/an_executable_python_script usr/bin
src/web/* usr/share/packagename

внутри папки src/web находятся файлы html и css. Похоже, что с compat level 7 все работало нормально. Но на уровне компата 9 я получаю следующее сообщение об ошибке:

/home/user/package/debian/packagename.install: 2: 
/home/user/package/debian/packagename.install: src/web/index.html: Permission denied

Справочная страница dh_install в этой теме понятна: файлы должны быть исполняемыми. К сожалению, это, вероятно, не было реализовано в старом debhelper, поэтому я вижу, что многие пакеты используют эту практику установки неисполняемых файлов с помощью dh_install. edit: возможно, я неправильно понял man-страницу. Я думаю, это означает, что сам файл установки должен быть исполняемым? Но вот в чем дело: если я отмечу index.html исполняемый файл, я получу следующее сообщение об ошибке:

src/web/index.html: 2: src/web/index.html: cannot open !DOCTYPE: No such file
src/web/index.html: 2: src/web/index.html: html: not found
src/web/index.html: 4: src/web/index.html: Syntax error: newline unexpected
dh_install: debian/packagename.install (executable config) returned exit code 2

Я не смог выяснить, как установить неисполняемые файлы с уровнем сжатия 9 Может кто-нибудь дать мне подсказку?

Правка после проб и ошибок: я удалил исполняемый бит из всех установочных файлов, и теперь он работает ... Но это противоречит man-странице ?! Что здесь происходит?

2
задан 1 December 2017 в 13:45

2 ответа

Это ошибка в dh-install. Удалите исполняемый бит из вашего файла .install.

chmod -x debian/*.install

Надеюсь, что этот ответ кому-то поможет, мне потребовались кровь и слезы, чтобы решить.

1
ответ дан 1 December 2017 в 13:45

Похоже, что файлы, упомянутые в установочном файле, выполняются, а не просто читаются как инструкции для инструмента dh_install. Вы где-нибудь случайно вызываете «debian / install»?

Для начала я предлагаю назвать установочный файл yourpackagename.install, а не просто «установить». Не стесняйтесь также публиковать свой файл debian / rules. И я хотел бы видеть "ls -l" из папки debian.

0
ответ дан 1 December 2017 в 13:45

Другие вопросы по тегам:

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