Tumbleweed 20210203 Update Problem w/ PHP
by rnturn from LinuxQuestions.org on (#5DS5N)
While applying the updates to take a system to 20210203, I received several errors regarding PHP7/PHP8 conflicts. For each question that was presented during the update, I chose the option that appeared would take the system from all things PHP7 to PHP8. This mostly worked except that the Apache mod_php package (apache2-mod_php7-7.4.14-2.1.x86_64) failed to be removed. The "scriptlet" that ran failed with a rather generic exit status of "1" (not very helpful).
As I thought about the problem, it occurred to me that there is no good reason -- as far as I could tell --for that system to have any PHP packages loaded on it nowadays as everything's been moved to Django. Removing the PHP8 packages was a snap. However, even after moving mod_php from the Apache configuration and bouncing the httpd process I cannot get the package listed above removed from the system. Asking YaST to confirm dependencies showed that there were only package dependencies involving the PHP7 packages that I'd removed earlier---nothing that seemed to be preventing "apache2-mod_php7-7.4.14-2.1.x86_64" from being removed. Except that every removal attempt resulted in that scriptlet failing.
Eventually, I punted and just reinstalled those removed PHP7 packages.
I know there are rpm command line switches that tweak the package removal process (like "--noscript", "--nopreun", etc.) but I've been a bit leery of forcing a removal without fully understanding why the previous attempt failed.
Q1: Any ideas about why "apache2-mod_php7-7.4.14-2.1.x86_64" would be unremovable? Bug in the scriptlet that is failing?
Q2: Is there a surefire way to clobber everything PHP-related on this system? Assuming that there's no critical utility that [cringe] depends on PHP.
TIA for any clues, hint, or solutions...


As I thought about the problem, it occurred to me that there is no good reason -- as far as I could tell --for that system to have any PHP packages loaded on it nowadays as everything's been moved to Django. Removing the PHP8 packages was a snap. However, even after moving mod_php from the Apache configuration and bouncing the httpd process I cannot get the package listed above removed from the system. Asking YaST to confirm dependencies showed that there were only package dependencies involving the PHP7 packages that I'd removed earlier---nothing that seemed to be preventing "apache2-mod_php7-7.4.14-2.1.x86_64" from being removed. Except that every removal attempt resulted in that scriptlet failing.
Eventually, I punted and just reinstalled those removed PHP7 packages.
I know there are rpm command line switches that tweak the package removal process (like "--noscript", "--nopreun", etc.) but I've been a bit leery of forcing a removal without fully understanding why the previous attempt failed.
Q1: Any ideas about why "apache2-mod_php7-7.4.14-2.1.x86_64" would be unremovable? Bug in the scriptlet that is failing?
Q2: Is there a surefire way to clobber everything PHP-related on this system? Assuming that there's no critical utility that [cringe] depends on PHP.
TIA for any clues, hint, or solutions...