Anaconda attempts to check the arch of the target system to make sure it matches the arch of the installer. It does this by checking the contents of /etc/rpm/platform. Unfortunately, if that file doesn't exist, there's no fallback, and the installer traces back. There should probably be a fallback method - perhaps reading some info from the rpmdb would help? Traceback is attached.
Created attachment 292814 [details] anacdump.txt from attempted upgrade of a LiveCD-installed system
We can't require that this file be present -- some people remove it, it's not there for live installs, etc.
Created attachment 295173 [details] Have a fallback for determining architecture We have something like this in yuminstall.py, but i think this is more general and it would be possible to use it in _checkUpgradeArch in there as well. But I'm not sure about the rpm database stuff (what about database locks?) and also the python-magic module will be new in the stage2 image (cca 300KB). Without those two concerns, the code works on at least 4 machines here in the office.
If we're lacking an /etc/rpm/platform where's the harm in relying on os.uname()?
Uname will tell you the architecture of running kernel. But to notify user about the difference between running kernel (instalation media architecture) and the architecture he already has installed, you need to read something from the installed system (which is not running at the moment).
I'm waiting for installable rawhide to test the upgrade with modified patch
Rawhide should be pretty installable at this point
Created attachment 297490 [details] anacdump.txt Still happens with current rawhide. New anacdump.txt attached.
Fixed in 11.4.0.51