So, I ended up employing a low-tech but totally effective method to get control of my screen back and uninstall AMDGPU-PRO. I unplugged my GPU (literally pulled out the PCI cords). I was able to get the splash screen then, though if I tried loading GNOME normally, it would hang like it did before. I also had the Debian loading menu, though, so I was able to enter recovery mode and uninstall AMDGPU-PRO. For those who don't know, the command is:
amdgpu-pro-uninstall
On reboot, I had my screen back (HDMI on Integrated Graphics was a bit buggy, but VGA is working). I haven't tried reinstalling using some of the suggestions in other threads, nor have I checked if Mesa still works or not. In the meantime, I'm just reporting on getting my screen back.
I hope no one needs this advice, but if you do, I hope it helps!
Updates:
I.
I got the HDMI through the Integrated Graphics working. sudo amdgpu-pro-uninstall
wasn't enough. I used:
sudo apt purge amdgpu*
And also autoremoved unused packages (apt-get autoremove
, if I recall correctly). I believe that this killed Mesa, but I do have my Integrated Graphics back, and I've plugged the AMD GPU back in, and it doesn't hijack absolutely everything. One weird side effect was that I'm back to losing the splash screen, but from the user screen and on is fine.
I have some next steps I'm interested in, if anything works, I plan on updating here.
II.
Okay, so I worked up the courage to get back to this. I redownloaded the AMDGPU-PRO driver from AMD, mainly followed the instructions in this tutorial, except that I didn't do ./amdgpu-pro-install
just like that, instead I used this wonderful tip and did:
amdgpu-pro-install --opencl=legacy,pal --headless
Wonder of wonders, my computer still functions after this. lsmod
shows amdgpu
loaded. I'm not getting any screen graphics from it - I suspect the flags I put on the installer stop it from handling display graphics, but I feel like this is progress.
III.
The --headless
tag above means that the GPU is compute-only, not graphics. Even though I got into this through mining, and may not need the graphics, I'm feeling bitten by the bug, and I want to get this thing to totally work. I decide that I can go through this again, and reinstall AMDGPU-PRO, leaving out --headless
:
amdgpu-pro-install --opencl=legacy,pal
And I'm back to not being able to get my desktop environment to work again. I I'm an old hand at this by now, so I disconnect the GPU, need to go to analog, and experimented with knocking the BIOS primary graphics to onboard
(instead of PCI Express
), though I don't get the splash screen when I plug into the Integrated Graphics through HDMI, though I can get my screen in recovery mode (or displaying some loading if I try to load the desktop environment, but it won't switch over to the graphics, and hangs on saying that it's loaded without displaying it). I discover that I can even do this with the GPU plugged in now, probably since I changed the primary graphics. This allows me to play around some in recover mode.
apt install amdgpu*
shows me that there are two dependencies that can't be installed, which both render a package amdgpu-lib-hwe
unable to be installed:
xserver-xorg-hwe-amdgpu-video-amdgpu
libgl1-amdgpu-pro-ext-hwe
The second I could just apt install
, but the first xserver-xorg-hwe-amdgpu-video-amdgpu
gives me that it needs:
xserver-xorg-hwe-18.04
But I get this error (using both apt
with non-free and stuff and apt-get
):
Package xserver-xorg-hwe-18.04 is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source
E: 'xserver-xorg-hwe-18.04' has no installation candidate
Searching around online turns up that xserver-xorg-hwe-18.04
is in the Ubuntu repo here, and the Launchpad page here. I feel like it should be pretty routine to install an Ubuntu package on Debian, but I'm running into enough resistance to post this for now.
IV.
Okay, so here we go.
I tracked down where xserver-xorg-hwe-18.04
lives, and did a wget
followed by dpkg -i
on it. (I'm sort of proud for thinking of that. Newbie Linux joys.) This turned up that xserver-xorg-hwe-18.04
is a conflict to xserver-xorg-core
. That sounds bad. This is where I left it for the weekend.
When I came back, to my surprise, I could hear the GPU spinning. For kicks, I rebooted into graphical mode, just to see if maybe a reboot would somehow magically fix everything. It didn't but the GPU was definitely spinning. My excitement at this minute sign of progress probably confirms that I have hopelessly crossed the point of no return. I reboot into recovery again, and do another apt install amdgpu*
. Again, there are two packages that can't be installed. One is xserver-xorg-hwe-amdgpu-video-amdgpu
, the old offender, but the second is new. You'll recall that above the uninstalled dependencies were preventing amdgpu-lib-hwe
from being installed. This one was blocking amdgpu-pro
itself:
amdgpu-pro: Depends: libgl1-amdgpu-pro-ext but it is not going to be installed
I did an apt
to install it, and realized that installing libgl1-apdgpu-pro-ext-hwe
had uninstalled this. This makes me realize that it would seem that the hwe
library is at fault for all the problems here, and I begin researching if there's a way to simply not install amdgpu-lib-hwe
. I mean, the fans are spinning. That must mean something.
Research turns up that HWE is a Ubuntu graphics suite. I'm guessing it's not present in Debian, and therefore causing problems. I see that older versions of amdgpu-pro
didn't have hwe
libraries, and now wonder if I should downgrade to an ancient driver. This is probably material for another question, though.
V.
I haven't been able to locate anyone who possesses the requisite wisdom for building amdgpu-pro
without the hwe
libraries, so I took a step backwards, and shot for getting Mesa working again. I was able to get some help with that, so now not only do I have my screen back, I even have my GPU functioning again.
To summarize from over there, the basic catch is not to use apt purge
but rather apt remove
, and to reinstall libdrm-amdgpu1
and xserver-xorg-video-amdgpu
, but see the link above for extra goodies (Vulkan!).
Not one to be tempted to quit while I'm not quite ahead, but at least not behind, I still would like to tackle the problem of the proprietary driver. My main rationale is that the mining programs I played around with weren't recognizing the GPU with just Mesa. A rephrasing of the problem at this point would be how to mine with an AMD rx580 in 2019, I suppose. I see two options:
- See if I can get the headless option to work in tandem with Mesa, and see if that's enough to get mining
- Figure out how to get the full
amdgpu-pro
package to work on Debian 10
- The best path may be an ancient
amdgpu-pro
driver, or the beta blockchain driver they released way back at the end of 2017
I can't find the energy to throw myself back in the furnace of AMD proprietary on Debian right now, so I'm just logging basic options here in case my common sense kicks in and I just leave this as is.