hykilpikonna / hyfetch

🏳️‍🌈 🏳️‍⚧️ Neofetch with LGBTQ+ pride flags!
MIT License
1.15k stars 90 forks source link

Neofetch doesn't detect properly Radeon 6900XT GPU #225

Open hype3 opened 6 months ago

hype3 commented 6 months ago

Hi.

Now when Neofetch doesn't seem to be maintained anymore and I got the same error as this open bug report on Neofetch I hope that it will be fixed.

The bug report is here

hykilpikonna commented 6 months ago

Works on my machine

image

It should report whatever lspci outputs. If lspci returns nothing, it would try glxinfo.

Can you show me the output of the following commands?

lspci -mm | awk -F '\"|\" \"|\\(' \
      '/"Display|"3D|"VGA/ {
          a[$0] = $1 " " $3 " " ($(NF-1) ~ /^$|^Device [[:xdigit:]]+$/ ? $4 : $(NF-1))
      }
      END { for (i in a) {
          if (!seen[a[i]]++) {
              sub("^[^ ]+ ", "", a[i]);
              print a[i]
          }
      }}'

and glxinfo -B | grep -F 'OpenGL renderer string'

image

hype3 commented 5 months ago

First command: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] Second command: OpenGL renderer string: AMD Radeon RX 6900 XT (radeonsi, navi21, LLVM 16.0.6, DRM 3.56, 6.7.0-arch3-1)

hykilpikonna commented 5 months ago

From your output, the issue seems to be that your GPU driver is not correctly reporting its model name to lspci. However, even though glxinfo can correctly identify the GPU, it has many downsides:

  1. It can only identify GPUs connected to the current display, and cannot identify compute GPUs that are not connected to any display.
  2. It cannot identify multiple GPUs
  3. You must specify the display if you want to detect the GPU over an SSH session.

image

With that said, I will add an option to use glxinfo instead of lspci to solve this case, but be aware of the downsides of using this.