Bug 48756

Summary: mission-center: Отсутствует возможность просмотра пользователем части данных в разделе "Память"
Product: Sisyphus Reporter: Олег Щавелев <oleg>
Component: mission-centerAssignee: Yuri N. Sedunov <aris>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: antohami, aris, armatik, ghgh2222, qualimock
Version: unstable   
Hardware: x86_64   
OS: Linux   
Attachments:
Description Flags
Окно авторизации, при клике на ссылку More info. Mission Center, Flatpak-версия
none
memory-> More info
none
memory-> More info -> authentication request none

Description Олег Щавелев 2023-12-11 09:22:37 MSK
Created attachment 15182 [details]
Окно авторизации, при клике на ссылку More info. Mission Center, Flatpak-версия

Стенды с ошибкой:
=================
* ALT Regular Sisyphus x86_64
* Kernel: 6.6.4-un-def-alt1 
* GNOME 45.2
* AMD Ryzen 7 4800HS with Radeon Graphics (16) @ 4.300GHz 
* AMD ATI 04:00.0 Renoir 
* 1: 1920x1080~144Hz 2: 1280x720~60Hz
* Wayland

Версия программы:
=================
mission-center-0.4.1-alt1.x86_64

Шаги, приводящие к ошибке:
=================
* Открыть Mission Center
* Перейти в раздел "Память"
* Нажать ссылку "More info"

Результат:
=================
При клике на ссылку "More info", появляется уведомление "авторизация не удалась".

Ожидаемый результат:
=================
При клике на ссылку "More info", открывается окно с возможности авторизоваться под привилегированным пользователем. При сценарии:
* пользователь нажимает кнопку "отменить", уведомление "авторизация не удалась"
* при успешной авторизации: отображение скрытых данных
Comment 1 Yuri N. Sedunov 2023-12-11 09:54:49 MSK
Created attachment 15183 [details]
memory-> More info
Comment 2 Cемен Фомченков 2023-12-11 10:31:45 MSK
Результат тестирования баг-репорта 48756.

Тестировочный стенд:
==============================
- OS: ALT Regular Sisyphus x86_64 
- Kernel: 6.5.11-un-def-alt1 
- DE: GNOME 45.2 
- CPU: AMD Ryzen 7 3700X (16) @ 4.426GHz 
- GPU: NVIDIA GeForce GTX 1660 SUPER 
- Display: x11 
Система обновлена: 11.12.2023

==============================
Пакет: mission-center-0.4.1-alt1.x86_64

Шаги, приводящие к ошибке:
==============================
1. Открыл Mission Center через иконку в списке приложений.
2. Открыл вкладку производительность.
3. Перешёл в раздел память.
4. Нажал на ссылку "More info" в блоке с информацией об оперативной памяти

Фактический результат:
==============================
Внизу окна программы появляется уведомление об ошибке аутентификации, информация об оперативной памяти не появляется.

Ожидаемый результат:
==============================
После нажатия появляется диалоговое окно с запросом прав администратора, после предоставления прав информация об оперативной памяти отображается.

Демонстрация ошибки: https://disk.yandex.ru/i/WuYy0S5E2cqgxA
Comment 3 Yuri N. Sedunov 2023-12-11 10:39:15 MSK
Created attachment 15184 [details]
memory-> More info -> authentication request
Comment 4 Yuri N. Sedunov 2023-12-11 10:40:15 MSK
$ rpmq dmidecode
dmidecode-3.5-alt1.x86_64

A у вас?
Comment 5 Cемен Фомченков 2023-12-11 10:47:54 MSK
(Ответ для Yuri N. Sedunov на комментарий #4)
> $ rpmq dmidecode
> dmidecode-3.5-alt1.x86_64
> 
> A у вас?

❯ rpm -q dmidecode
dmidecode-3.5-alt1.x86_64

(Ответ для Yuri N. Sedunov на комментарий #3)
> Создано вложение 15184 [details] [подробности]
> memory-> More info -> authentication request

А каким способом вы запускаете mission-center?
Comment 6 Олег Щавелев 2023-12-11 10:50:57 MSK
(Ответ для Yuri N. Sedunov на комментарий #4)
> $ rpmq dmidecode
> dmidecode-3.5-alt1.x86_64
> 
> A у вас?

Поведение Mission Center, аналогично видео от Cемена Фомченкова:
[oleg@alt-gnome ~]$ rpm -q dmidecode-3.5-alt1.x86_64
dmidecode-3.5-alt1.x86_64
Comment 7 Yuri N. Sedunov 2023-12-11 10:57:38 MSK
> А каким способом вы запускаете mission-center?

От способа запуска положительный результат не зависит. Копайте дальше.
Comment 8 Олег Щавелев 2023-12-11 11:14:08 MSK
(Ответ для Yuri N. Sedunov на комментарий #7)
> > А каким способом вы запускаете mission-center?
> 
> От способа запуска положительный результат не зависит. Копайте дальше.

В терминале missioncenter:

(missioncenter:111964): MissionCenter::SysInfo-CRITICAL **: 11:06:24.840: Failed to read memory device information, host command execution failed: Cannot run program dmidecode: No such file or directory
Comment 9 Yuri N. Sedunov 2023-12-11 11:29:31 MSK
(Ответ для Олег Щавелев на комментарий #8)
> Failed to read memory device information, host command execution failed:
> Cannot run program dmidecode: No such file or directory

Ну, и это значит что? :)
Comment 10 Roman Alifanov 2023-12-11 12:48:53 MSK
(Ответ для Yuri N. Sedunov на комментарий #9)
> (Ответ для Олег Щавелев на комментарий #8)
> > Failed to read memory device information, host command execution failed:
> > Cannot run program dmidecode: No such file or directory
> 
> Ну, и это значит что? :)

То, что его надо в Requires?
Comment 11 Roman Alifanov 2023-12-11 13:58:27 MSK
Вообще странно, что он не может запустить dmidecode.
Но я сомневаюсь, что это именно проблема dmidecode
Comment 12 Yuri N. Sedunov 2023-12-12 11:38:00 MSK
Так никто и не сообразил, почему не находится dmidecode?
Comment 13 Олег Щавелев 2023-12-12 12:33:05 MSK
(Ответ для Yuri N. Sedunov на комментарий #12)
> Так никто и не сообразил, почему не находится dmidecode?

Это не является причиной, это следствие. Причиной является отсутствие интерфейса для последующего запроса дополнительных привилегий при запуске программы непривилегированным пользователем. 

Библиотека присутствует у всех участников обсуждения, покажу свой вывод:

[oleg@alt-gnome ~]$ rpm -q dmidecode
dmidecode-3.5-alt1.x86_64

Для получения ответа при использовании утилиты необходимы права:

[oleg@alt-gnome ~]$ /usr/sbin/dmidecode --type 17
# dmidecode 3.5
/sys/firmware/dmi/tables/smbios_entry_point: Permission denied
Scanning /dev/mem for entry point.
Can't read memory from /dev/mem

[root@alt-gnome ~]# /usr/sbin/dmidecode --type 17
# dmidecode 3.5
Getting SMBIOS data from sysfs.
SMBIOS 3.2.0 present.

Handle 0x0011, DMI type 17, 84 bytes
Memory Device
	Array Handle: 0x000A
	Error Information Handle: 0x0010
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 8 GB
...

Если сформировать проблему: при событии, непривилегированный процесс не может получить запрос на аутентификацию, тем самым процессу не предоставляется возможности выполнения действий, требующих прав администратора. 

О чем и уведомляет система:
11:06:24.840: Failed to read memory device information, host command execution failed: Cannot run program dmidecode: No such file or directory
Comment 14 Yuri N. Sedunov 2023-12-12 12:38:51 MSK
(Ответ для Олег Щавелев на комментарий #13)
...
Это ключевые слова

> execution failed: Cannot run program dmidecode: No such file or directory
                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Думайте дальше. Ответ очень прост.
Comment 15 Антон Мидюков 2023-12-12 13:06:56 MSK
(Ответ для Yuri N. Sedunov на комментарий #14)
> (Ответ для Олег Щавелев на комментарий #13)
> ...
> Это ключевые слова
> 
> > execution failed: Cannot run program dmidecode: No such file or directory
>                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> Думайте дальше. Ответ очень прост.

/usr/sbin/dmidecode
У непривилегирированного пользователя его (/usr/sbin) в $PATH нет.
А почему повышение привилегий то не происходит? Проблема то в этом.
Comment 16 Yuri N. Sedunov 2023-12-12 13:18:47 MSK
(Ответ для Антон Мидюков на комментарий #15)
> (Ответ для Yuri N. Sedunov на комментарий #14)
> > (Ответ для Олег Щавелев на комментарий #13)
> > ...
> > Это ключевые слова
> > 
> > > execution failed: Cannot run program dmidecode: No such file or directory
> >                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > Думайте дальше. Ответ очень прост.
> 
> /usr/sbin/dmidecode
> У непривилегирированного пользователя его (/usr/sbin) в $PATH нет.
> А почему повышение привилегий то не происходит? Проблема то в этом.

Надо сперва найти чему повышать привилегии, а в путях пусто.
Comment 17 Yuri N. Sedunov 2023-12-12 13:30:03 MSK
(Ответ для Yuri N. Sedunov на комментарий #16)
> (Ответ для Антон Мидюков на комментарий #15)
> > (Ответ для Yuri N. Sedunov на комментарий #14)
> > > (Ответ для Олег Щавелев на комментарий #13)
> > > ...
> > > Это ключевые слова
> > > 
> > > > execution failed: Cannot run program dmidecode: No such file or directory
> > >                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > > Думайте дальше. Ответ очень прост.
> > 
> > /usr/sbin/dmidecode
> > У непривилегирированного пользователя его (/usr/sbin) в $PATH нет.
> > А почему повышение привилегий то не происходит? Проблема то в этом.
> 
> Надо сперва найти чему повышать привилегии, а в путях пусто.

Во flatpak-сборке это решается грязным хаком.

flatpak/io.missioncenter.MissionCenter.json:            "install -v -p -m 755 /app/sbin/dmidecode /app/bin/dmidecode"
Comment 18 Yuri N. Sedunov 2023-12-15 10:16:04 MSK
В mission-center-0.4.2-alt1 должно работать у всех.
Comment 19 Олег Щавелев 2023-12-16 04:21:31 MSK
(Ответ для Yuri N. Sedunov на комментарий #18)
> В mission-center-0.4.2-alt1 должно работать у всех.

Спасибо! Проверил, работает.