Скрипт i2myspell из одноименного пакета: $ checkbashisms /usr/bin/i2myspell possible bashism in /usr/bin/i2myspell line 61 ([^] should be [!]): s/\([^ ]*\).>.\([^,]*\)$/0 \2 \1/ possible bashism in /usr/bin/i2myspell line 62 ([^] should be [!]): s/\([^ ]*\).>.-\([^,]*\),\(\-\)$/\2 0 \1/ possible bashism in /usr/bin/i2myspell line 63 ([^] should be [!]): s/\([^ ]*\).>.-\([^,]*\),\(.*\)$/\2 \3 \1/' | error: /usr/bin/i2myspell: Unterminated quoted string found, EOF reached. Wanted: <'> Удалось выяснить, что ошибка с определением закрывающей кавычки происходит на строке 46 проверяемого скрипта, а всё остальное -- это уже последствия. Ошибочно распознаваемая конструкция выглядит так: sed 's#/# #g s# #/#' Запись конструкции в одну строку (sed 's#/# #g;s# #/#') проблемы не решает. Зато проблема решается заменой "#" на любой другой разделитель. Причем, достаточно заменить "#" только во втором шаблоне: sed 's#/# #g s| |/|' Такая конструкция проблем не вызывает и проверяется успешно.
Если вы оформите предложение по исправлению checkbashisms в виде патча сюда и/или в mainstream, то я смогу его применить в новой сборке пакета.
Created attachment 4607 [details] checkbashisms fails on this script
Created attachment 4608 [details] checkbashisms processes this script successfully
Был бы патч -- не было бы вопросов. Пока могу предоставить только testcase.
devscripts-2.26.13-alt1 -> sisyphus: Tue Nov 03 2026 Vitaly Lipatov <lav@altlinux.ru> 2.26.13-alt1 - Update to 2.26.13. - Build all packages as noarch. - Add BuildRequires: perl-Config-IniFiles, perl-IO-String and perl-MetaCPAN-Client for dependency scanning. - Skip optional python3(junit_xml), unavailable in Sisyphus. - (closes: #24251)