Bug 46824 - epm play генерирует зависимости из bashrc
Summary: epm play генерирует зависимости из bashrc
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: eepm (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Vitaly Lipatov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-07-09 19:26 MSK by Alexander Makeenkov
Modified: 2023-07-13 15:50 MSK (History)
1 user (show)

See Also:


Attachments
лог epm play yandex-browser (12.09 KB, text/x-log)
2023-07-09 19:26 MSK, Alexander Makeenkov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Makeenkov 2023-07-09 19:26:34 MSK
Created attachment 13754 [details]
лог epm play yandex-browser

Версия пакета:
eepm-3.57.12-alt1

Содержимое bashrc пользователя:
$ cat .bashrc 
if [ -r /etc/bashrc ]; then
        . /etc/bashrc
fi

if [ -r /etc/testfile ]; then
        . /etc/testfile
fi

Подключается какой-либо файл, допустим /etc/testfile, но его на самом деле нет.

Выполнение epm play yandex-browser завершается ошибкой вида:

Следующие пакеты имеют неудовлетворенные зависимости:
  yandex-browser-stable: Depends: /etc/testfile но пакет не может быть установлен
E: Извините, `битые' пакеты

Полный лог во вложении.

Такая же проблема с codium.
С telegram и discord такого нет, остальные не пробовал.
Comment 1 Vitaly Lipatov 2023-07-12 22:24:48 MSK
Я не понял вашего предложения.
Сделать
AutoReq:yes,noshell
по умолчанию?

Или бага про конкректно yandex-browser?
Но там нет никакого /etc/testfile:
$ grep testfile /opt/yandex/browser/compiz.sh
Comment 2 Alexander Makeenkov 2023-07-13 09:47:10 MSK
(Ответ для Vitaly Lipatov на комментарий #1)
> Но там нет никакого /etc/testfile:
> $ grep testfile /opt/yandex/browser/compiz.sh

Хорошо, давайте так:

1. Чистая система ALT Workstation K 10.1 x86_64, актуальный p10

2. Добавить в bashrc пользователя строки:

$ cat >> ~/.bashrc <<EOF
if [ -r /etc/testfile ]; then
        . /etc/testfile
fi
EOF

3. Пробуем установить яндекс браузер:

$ epm play yandex-browser

4. Получаем ошибку:

Следующие пакеты имеют неудовлетворенные зависимости:
  yandex-browser-stable: Depends: /etc/testfile но пакет не может быть установлен
E: Извините, `битые' пакеты
Comment 3 Vitaly Lipatov 2023-07-13 15:50:48 MSK
(Ответ для Alexander Makeenkov на комментарий #2)
> (Ответ для Vitaly Lipatov на комментарий #1)
> > Но там нет никакого /etc/testfile:
> > $ grep testfile /opt/yandex/browser/compiz.sh
> 
> Хорошо, давайте так:
> 
> 1. Чистая система ALT Workstation K 10.1 x86_64, актуальный p10
> 
> 2. Добавить в bashrc пользователя строки:
> 
> $ cat >> ~/.bashrc <<EOF
> if [ -r /etc/testfile ]; then
>         . /etc/testfile
> fi
> EOF
А, дошло, спасибо.

Зависимости ищет
 $ rpm -qf /usr/lib/rpm/shell.req
rpm-build-4.0.4-alt170.2.x86_64

мне кажется, что это проблема там, раз при поиске зависимостей пакета берётся что-то из ~/.bashrc

более этого, это же условная конструкция, но она зачем-то попадает в зависимости:
if [ -r /etc/testfile ]; then
        . /etc/testfile
fi

По поиску зависимостей это предмет отдельной баги.

Возможно, вы про то, чтобы сборка выполнялась в отдельном изолированном пользователе? Могу проверить, чтобы это был отдельный HOME. Тащить hasher пока не хочется.