Воспроизводится на стендах, обновлённых до Sisyphus: Alt Education 11.1 XFCE/KDE x86_64 Alt KWorkstation 11.4 x86_64 Alt Workstation 11.2 x86_64 Alt Server 11.1 x86_64 Версия пакета: opencommit-3.3.9-alt1.noarch Описание: При вызове внутри рабочего репозитория команда $ oco hook set выводит ошибку Error: EPERM: operation not permitted, chmod '.git/hooks/prepare-commit-msg' При этом ошибка не препятствует дальнейшей корректной работе пакета, при вызове git commit автоматически запускается opencommit и генерирует сообщение к коммиту. Ошибка связана с тем, что пытается изменить права на файл .git/hooks/prepare-commit-msg, который является симлинком на файл /usr/lib/opencommit/cli.cjs, который в свою очередь принадлежит пользователю root. Шаги для воспроизведения: 1) Создать и перейти в репозиторий 2) Выполнить команду $ oco hook set Ожидаемый результат: Команда успешно выполняется. Реальный результат: Выводится ошибка Error: EPERM: operation not permitted, chmod '.git/hooks/prepare-commit-msg'. При этом функционал работает корректно.
Проверен opencommit-3.3.9-alt1. Причина подтверждена исходниками: после создания симлинка hook set вызывает fs.chmod(SYMLINK_URL, 0o755). В Linux chmod следует по симлинку и пытается изменить root-owned /usr/lib/opencommit/cli.cjs, откуда EPERM. Целевой файл уже установлен с режимом 0755, поэтому этот chmod не нужен. В upstream 3.3.10 данный код не менялся; точного upstream-багрепорта не найдено. Нужен upstream или downstream-патч с удалением chmod.
opencommit-3.3.11-alt1 -> sisyphus: Thu Oct 29 2026 Dmitry Maksimenkov <dmaks@altlinux> 3.3.11-alt1 - Updated to version 3.3.11. - Fixed EPERM when installing hook (closes: #60010). - Cleaned up the spec file.