Summary: | При использовании утилиты, уведомление: Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16284 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Олег Щавелев <oleg> | ||||||||
Component: | inxi | Assignee: | ruslandh <ruslandh> | ||||||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||||||
Severity: | normal | ||||||||||
Priority: | P5 | CC: | andy, mvk, ruslandh, viy | ||||||||
Version: | unstable | ||||||||||
Hardware: | x86_64 | ||||||||||
OS: | Linux | ||||||||||
Attachments: |
|
Description
Олег Щавелев
2023-12-04 22:00:55 MSK
Created attachment 15148 [details]
Вывод inxi --dbg 4 -g
Подтверждяю, но если не считать мусор, то результат выдаётся верно
inxi -G
Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16284.
Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16262.
....
Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16284.
Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16262.
Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16264.
Graphics:
Device-1: AMD Raphael driver: amdgpu v: kernel
Device-2: Microdia Camera driver: snd-usb-audio,uvcvideo type: USB
Display: x11 server: X.Org v: 1.21.1.9 with: Xwayland v: 23.2.2 driver: X:
loaded: amdgpu unloaded: fbdev,modesetting,vesa dri: radeonsi gpu: amdgpu
resolution: 1920x1200~60Hz
API: EGL v: 1.5 drivers: kms_swrast,radeonsi,swrast
platforms: x11,surfaceless,device
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 23.3.0 renderer: AMD
Radeon Graphics (radeonsi raphael_mendocino LLVM 17.0.3 DRM 3.54
6.5.13-un-def-alt1)
API: Vulkan v: 1.3.268 drivers: amd surfaces: xcb,xlib
Другие опции отрабатываются inxi без проблем, С картой nvidia тоже самое: $ inxi -G Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16284. Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16262. .... Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16284. Use of uninitialized value $platform in hash element at /usr/bin/inxi line 16262. Graphics: Device-1: NVIDIA GF119 [GeForce GT 610] driver: nvidia v: 390.157 Display: x11 server: X.Org v: 1.21.1.9 with: Xwayland v: 23.2.2 driver: X: loaded: nvidia unloaded: fbdev,modesetting,nouveau,vesa gpu: nvidia resolution: 1920x1080~60Hz API: EGL v: 1.5 drivers: kms_swrast,swrast platforms: gbm API: OpenGL v: 4.5 compat-v: 4.6.0 vendor: nvidia mesa v: 390.157 renderer: GeForce GT 610/PCIe/SSE2 API: Vulkan v: 1.3.268 drivers: llvmpipe surfaces: xcb,xli $ uname -r 6.1.64-std-def-alt1 $ rpm -qa | grep inxi inxi-3.3.31.2-alt1.noarch Created attachment 15149 [details]
Список обновления
Проверил, похоже проблема не в inxi , прикладываю список пакетов, после обновления которых возникла ошибка.
Можно увидеть, что inxi в нём нет ;-(
glixinfo там есть? (пакет mesa-info) Скорее всего, проблема в нём (нет в выводе строки platform). Но проблема похоже здесь -именно здесь определяется платформа системы: " sub set { eval $start if $b_log; set_commands(); my ($action,$program,$message,@data); foreach my $test (keys %commands){ ($action,$program) = ('use',''); $message = main::message('tool-present'); if ($commands{$test}->[1] && ( ($commands{$test}->[1] eq 'linux' && $os ne 'linux') || ($commands{$test}->[1] eq 'bsd' && $os eq 'linux'))){ $action = 'platform'; } elsif ($program = main::check_program($test)){ # > 0 means error in shell # my $cmd = "$program $commands{$test} >/dev/null"; # print "$cmd\n"; $pci_tool = $test if $test =~ /pci/; # this test is not ideal because other errors can make program fail, but # we can't test for root since could be say, wheel permissions needed if ($commands{$test}->[0] eq 'exec-sys'){ $action = 'permissions' if system("$program $commands{$test}->[2] >/dev/null 2>&1"); } elsif ($commands{$test}->[0] eq 'exec-string'){ @data = main::grabber("$program $commands{$test}->[2] 2>&1"); # dmidecode errors are so specific it gets its own section # also sets custom dmidecode error messages if ($test eq 'dmidecode'){ $action = set_dmidecode(\@data) if scalar @data < 15; } elsif (grep { $_ =~ /$commands{$test}->[3]/i } @data){ $action = 'permissions'; } } } ...... " (Ответ для Andrew Vasilyev на комментарий #6) > glixinfo там есть? (пакет mesa-info) > Скорее всего, проблема в нём (нет в выводе строки platform). Нет, но есть libGLX-mesa-23.3.0-alt1 Created attachment 15160 [details]
Патч проверюющий инициализацию переменной
Просто проверяет перед проверкой есть-ли у переменной $platform какое-либо значение.
В принципе ничего не ломает.
Если надо, могу приложить и полученный новый файл inxi
inxi-3.3.31.2-alt1.1 -> sisyphus: Tue Dec 05 2023 Hihin Ruslan <ruslandh@altlinux.ru> 3.3.31.2-alt1.1 - Add inxi-3.3.31.2-platform.patch (ALT bug #48682) |