Bug 55609 - Добавить пути /usr/bin/fish, /bin/fish в /etc/shells по умолчанию
Summary: Добавить пути /usr/bin/fish, /bin/fish в /etc/shells по умолчанию
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: setup (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Alexey Gladkov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-08-14 14:27 MSK by Андрей
Modified: 2025-08-19 13:45 MSK (History)
8 users (show)

See Also:


Attachments
мой /etc/shells для иллюстрации (192 bytes, text/plain)
2025-08-14 14:27 MSK, Андрей
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Андрей 2025-08-14 14:27:29 MSK
Created attachment 19354 [details]
мой /etc/shells для иллюстрации

GDM и GNOME считают человеческими пользователями (помимо китерия про UID >= 1000) только тех, у чей shell находится в списке /etc/shells. Однако, согласно spec-файлу пакета fish, в этот список добавляется только её реальный путь, то есть /usr/bin/fish. Путь /bin/fish, в отличие от подобных для остальных оболочек (по умолчанию предоставленных пакетом setup), там  не появляется. Вследствие этого при неаккуратной установке оболочки по умолчанию на /bin/fish, вход в систему перестаёт работать вообще.

Поскольку знать, что в системе /bin - ссылка на /usr/bin, - это не обязанность пакета fish, наиболее разумным выходом было бы просто добавить эту оболочку в /etc/shells изначально.

P.S. Пишу, как баг пакета setup, потому что в аналогичном запросе на fish другого пользователя именно это делать и послали.
Comment 1 Андрей 2025-08-14 14:29:04 MSK
(Ответ для Андрей на комментарий #0)

> P.S. Пишу, как баг пакета setup, потому что в аналогичном запросе на fish
> другого пользователя именно это делать и послали.

P.P.S. Это был запрос 55600.
Comment 2 Arseny Maslennikov 2025-08-14 14:52:58 MSK
У нас давно висит пожелание сделать /etc/shells автогенерируемым из состава пакетов (и локальных добавлений от администратора)
Comment 3 Arseny Maslennikov 2025-08-14 14:54:18 MSK
(In reply to Андрей from comment #1)
> (Ответ для Андрей на комментарий #0)
> > P.S. Пишу, как баг пакета setup, потому что в аналогичном запросе на fish
> > другого пользователя именно это делать и послали.
> P.P.S. Это был запрос 55600.

> Bug 55600 - NetworkManager (etcnet): Удаление link-local IPv6-адреса с помощью `ip`, если CONFIG_IPV6=yes, ...
Не похоже. :)
Comment 4 Андрей 2025-08-14 20:38:52 MSK
(Ответ для Arseny Maslennikov на комментарий #3)
> > Bug 55600 - NetworkManager (etcnet): Удаление link-local IPv6-адреса с помощью `ip`, если CONFIG_IPV6=yes, ...
> Не похоже. :)

Да-да, 50600, ошибся
Comment 5 Artem Varaksa 2025-08-19 13:44:47 MSK
Сейчас по умолчанию в p11 (ALT Workstation 11.0 x86_64):

> # cat /etc/shells
> /bin/sh
> /usr/bin/sh
> /bin/bash
> /usr/bin/bash
> /bin/ash
> /usr/bin/ash
> /bin/bsh
> /usr/bin/bsh
> /bin/csh
> /usr/bin/csh
> /bin/tcsh
> /usr/bin/tcsh
> /bin/ksh
> /usr/bin/ksh
> /bin/zsh
> /usr/bin/zsh

В sisyphus дополнительно ещё и:

> /bin/xonsh
> /usr/bin/xonsh

Т. е. все shell указаны как с /usr/bin, так и с /bin.

---

После установки fish действительно добавляется только /usr/bin/fish.

# chsh test -s /usr/bin/fish
Вход через GDM под пользователем test успешный.

# chsh test -s /bin/fish
Пользователь исчезает из списка (может исчезнуть и сам список, т. к. пользователь один), возможен только ручной ввод имени пользователя и пароля. При ручном вводе отображается ошибка "Вход с паролем не сработал. Попробуйте ещё раз, пожалуйста.".

# echo "/bin/fish" >> /etc/shells
Вход становится возможным.


[p11] ALT Workstation 11.0 x86_64
gdm-47.0-alt3.x86_64
pam-1.7.1-alt1.x86_64
setup-2.2.21-alt1.noarch
gnome-session-47.0.1-alt1.x86_64
kernel-image-6.12-6.12.41-alt1.x86_64

[sisyphus] ALT Workstation 11.0 x86_64
gdm-48.0-alt5.x86_64
pam-1.7.1-alt1.x86_64
setup-2.2.22-alt1.noarch
gnome-session-48.0-alt1.x86_64
kernel-image-6.12-6.12.42-alt1.x86_64

В sisyphus из-за https://bugzilla.altlinux.org/55655 потребовалось выполнить обход для https://bugzilla.altlinux.org/55646 (# apt-get install -y --reinstall xkeyboard-config && reboot).
Comment 6 Artem Varaksa 2025-08-19 13:45:52 MSK
Версия fish в p11 и sisyphus: fish-4.0.2-alt1.x86_64