Bug 40498 - tcsh: scriptlet failed, exit status 1
Summary: tcsh: scriptlet failed, exit status 1
Status: CLOSED DUPLICATE of bug 40496
Alias: None
Product: Sisyphus
Classification: Development
Component: tcsh (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Gremlin from Kremlin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-07-15 13:57 MSK by Ivan A. Melnikov
Modified: 2021-07-15 14:00 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan A. Melnikov 2021-07-15 13:57:50 MSK
Сегодня при dist-upgrade до сегодняшнего Сизифа apt поругался, что у него broken packages. Оказалось, что он не смог обновить пересобранный tcsh и теперь у меня их два:

# rpm -e tcsh
error: "tcsh" specifies multiple packages:
  tcsh-6.20.00-alt3:sisyphus+263072.100.1.1.x86_64
  tcsh-6.20.00-alt3:sisyphus+278507.100.1.1.x86_64

Попробуем удалить тот, что старше:

# rpm -e 'tcsh-6.20.00-alt3:sisyphus+263072.100.1.1.x86_64'
error: %preun(tcsh-6.20.00-alt3.x86_64) scriptlet failed, exit status 1
error: tcsh-6.20.00-alt3.x86_64: erase failed

Полный вывод `rpm -e -vv 'tcsh-6.20.00-alt3:sisyphus+263072.100.1.1.x86_64'` приводить не буду, он скушный, но там есть такие строки:

+ test 1 = 0
D: %preun(tcsh-6.20.00-alt3.x86_64): waitpid(80105) rc 80105 status 100

Действительно, в этом пакете есть такой preuninstall hook:

# do not edit /etc/shells on upgrades
test "$1" = 0 && sed -i -e '/^\/bin\/t\?csh$/d' /etc/shells

И когда $1 не равен нулю, этот хук завершается ошибкой. Не делайте так, пожалуйста.
Comment 1 Gremlin from Kremlin 2021-07-15 14:00:06 MSK

*** This bug has been marked as a duplicate of bug 40496 ***