Description of problem: Having no more need for lxc, I tried to uninstall it. How reproducible: Everytime. Steps to Reproduce: 1. urpmi lxc 2. urpme lxc the output is: removing lxc-5.0.3-1.mga10.x86_64 /var/tmp/rpm-tmp.mNztw4: line 1: fg: no job control /var/tmp/rpm-tmp.mNztw4: line 2: fg: no job control /var/tmp/rpm-tmp.mNztw4: line 3: fg: no job control error: %preun(lxc-1:5.0.3-1.mga10.x86_64) scriptlet failed, exit status 1 ERROR: 'script' failed for lxc-1:5.0.3-1.mga10.x86_64 error: lxc-1:5.0.3-1.mga10.x86_64: erase failed Maybe something to do with the epoch and escaping ?
The errors are in the %post and %preun parts of the spec file... [root@localhost ~]# urpmi lxc https://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/cauldron/x86_64/media/core/release/lxc-5.0.3-1.mga10.x86_64.rpm installing lxc-5.0.3-1.mga10.x86_64.rpm from /var/cache/urpmi/rpms Preparing... ######################################### 1/1: lxc ######################################### /var/tmp/rpm-tmp.7FXJps: line 1: fg: no job control /var/tmp/rpm-tmp.7FXJps: line 2: fg: no job control /var/tmp/rpm-tmp.7FXJps: line 3: fg: no job control warning: %post(lxc-1:5.0.3-1.mga10.x86_64) scriptlet failed, exit status 1 ERROR: 'script' failed for lxc-1:5.0.3-1.mga10.x86_64 [root@localhost ~]# urpme lxc removing lxc-5.0.3-1.mga10.x86_64 /var/tmp/rpm-tmp.LDi2Rt: line 1: fg: no job control /var/tmp/rpm-tmp.LDi2Rt: line 2: fg: no job control /var/tmp/rpm-tmp.LDi2Rt: line 3: fg: no job control error: %preun(lxc-1:5.0.3-1.mga10.x86_64) scriptlet failed, exit status 1 ERROR: 'script' failed for lxc-1:5.0.3-1.mga10.x86_64 error: lxc-1:5.0.3-1.mga10.x86_64: erase failed
(In reply to sturmvogel from comment #1) > The errors are in the %post and %preun parts of the spec file... Maybe i didn't noticed because I installed it part of multiple rpms :/
There was a typo in post and preun systemd scriptlet, should be fixed in next lxc-5.0.3-2.mga10 update!
CC: (none) => geiger.david68210
Not for the first time, thank you for an instant fix. Assigning to you.
CC: geiger.david68210 => (none)Assignee: bugsquad => geiger.david68210
So, it was an untranslated macro... It works for me now, thank you very much ! [root@cauldron ~]# urpmi lxc http://[::1]/distrib/cauldron/x86_64/media/core/release/lxc-5.0.3-2.mga10.x86_64.rpm installing lxc-5.0.3-2.mga10.x86_64.rpm from /var/cache/urpmi/rpms Preparing... ############################################# 1/1: lxc ############################################# [root@cauldron ~]# urpme lxc removing lxc-5.0.3-2.mga10.x86_64 removing package lxc-1:5.0.3-2.mga10.x86_64 1/1: removing lxc-1:5.0.3-2.mga10.x86_64 #############################################
Do I close myself the bug ?
Status: NEW => RESOLVEDResolution: (none) => FIXED
Reopened to fix also same error for mga9!
Status: RESOLVED => REOPENEDResolution: FIXED => (none)
Assigning to QA, Packages in 9/Core/Updates_testing: ====================== liblxc-devel-5.0.3-1.mga9 liblxc1-5.0.3-1.mga9 lib64lxc-devel-5.0.3-1.mga9 lib64lxc1-5.0.3-1.mga9 lxc-5.0.3-1.mga9 lxc-doc-5.0.3-1.mga9.noarch.rpm From SRPMS: lxc-5.0.3-1.mga9.src.rpm
Assignee: geiger.david68210 => qa-bugs
CC: (none) => geiger.david68210Version: Cauldron => 9
Created attachment 14244 [details] trying to upgrade lxc on mageia 9 then uninstall
The only way to uninstall the old version of lxc is to run "rpm -e --noscripts" lxc, and then install the new version. Once the old version has been uninstalled, the new version can be installed and uninstalled cleanly. I think the old version can be uninstalled by using a lua scriptlet in the new version, but am not sure. Check on the dev ml.
CC: (none) => davidwhodgins
CC: (none) => mageia
MGA9-64 Plasma Wayland on HP Pavillion No installation issues (no previous version installed. Used QARepo to install the 4 packages plus dependencies, then # urpme lxc removing lxc-5.0.3-1.mga9.x86_64 removing package lxc-1:5.0.3-1.mga9.x86_64 1/1: removing lxc-1:5.0.3-1.mga9.x86_64 ############################################################################################################### Removed the 3 others in MCC, all works OK.
CC: (none) => herman.viaeneWhiteboard: (none) => MGA9-64-OK
I've been wondering what was going on here. Urpmq indicates that lxc is required by waydroid, and that's it. I had installed waydroid in a VirtualBox Plasma guest for testing purposes a while back, then removed it later. Trying to remove all of it, I ran "urpme --auto-orphans" which failed to remove lxc. I don't use that command often because of all the dire warnings I've heard over the years, and thought little of the failure at the time. It didn't seem to hurt anything, and I got on with my life. So with this bug I've revisited it. Wondering what would happen if this were presented as a simple update, I used qarepo to download the packages, and MCC to get updates - which was just lxc, no dependencies. There were no messages to indicate that anything had gone wrong. So then I went to use urpme to remove orphans again, and I found that there were now TWO versions of lxc installed, both considered orphans. I told it to remove both, but it would only remove the new one. The old one still fails. Using urpmi to update once more, this time I saw in the terminal where removing the old version had failed. Removing the OK, because we need some way to remove that old version during a normal update procedure. Waydroid may have other problems preventing it from working as it should, but having two versions of lxc installed at the same time shouldn't be one of them.
Whiteboard: MGA9-64-OK => (none)CC: (none) => andrewsfarm
I just was thinking, could rpmlint or some tool check for that kind of errors automatically ?
(In reply to Thomas Andrews from comment #12) <snip> > Removing the OK, because we need some way to remove that old version during > a normal update procedure. Waydroid may have other problems preventing it > from working as it should, but having two versions of lxc installed at the > same time shouldn't be one of them. My understanding is that here are two version of lxc listed in the files in /var/lib/rpm, but as the file names haven't changed within the lxc package, there's only the last version installed actually present in the system. It's messy, but as the error is in the package that's being removed, I'm not sure if there is any way to fix it in the updated package. Check on the dev ml. If there is a way to fix it using a lua script, great. If not, the README.urpmi will have to be used to explain to the users that the need to run "urpme lxc", followed by ""rpm -e --noscripts lxc", to fix it, after which they can reinstall the fixed version.
Source RPM: lxc-5.0.3-1.mga10.src.rpm => lxc-5.0.2-1.mga9.src.rpm
Blocks: (none) => 32467
(In reply to Dave Hodgins from comment #14) > (In reply to Thomas Andrews from comment #12) > <snip> > > Removing the OK, because we need some way to remove that old version during > > a normal update procedure. Waydroid may have other problems preventing it > > from working as it should, but having two versions of lxc installed at the > > same time shouldn't be one of them. > > My understanding is that here are two version of lxc listed in the files in > /var/lib/rpm, but as the file names haven't changed within the lxc package, > there's only the last version installed actually present in the system. > > It's messy, but as the error is in the package that's being removed, I'm > not sure if there is any way to fix it in the updated package. > > Check on the dev ml. If there is a way to fix it using a lua script, great. > If not, the README.urpmi will have to be used to explain to the users that > the need to run "urpme lxc", followed by ""rpm -e --noscripts lxc", to > fix it, after which they can reinstall the fixed version. Setting the "feedback" keyword.
CC: (none) => marja11Keywords: (none) => feedback
CC: (none) => ngompa13
In one of my own packages I also make some mistakes in %pre, %post, %postun scripts, and also not find other choice that ask the users to first uninstall the buggy package and install the fixed package @Neal do you know a good alternative to fix this?
so README.urpmi is the way to go, but we need a policy to say when to clean these files
It should be until the release where the problem was present reaches end of support. In this case, that means until the first update in m10 after m9 reaches eos, or in the first build for m11 if there is no update in m10 after release.
It should be until the release where the problem was present reaches end of support. In this case, that means any further update in m9 has to keep it. The reasoning for that is that someone could install using the iso just before m9 reaches end of support, and then installs updates As upgrading to m10 from m9 will require all m9 updates to be installed, it can be dropped from the m10 packages.
It should be until the release where the problem was present reaches end of support. In this case, that means any further update in m9 has to keep it. The reasoning for that is that someone with the problem version installed could update directly to the last m9 version just before upgrading to m10. Skipping updates within a release has to work. As upgrading to m10 from m9 will require all m9 updates to be installed, it can be dropped from the m10 packages.
it makes sense for lxc package, the contents of README.urpmi files can be outdated for other reasons, or still be useful though
Maybe just a line at the begining stating "README of <package-version>, at <date>" would be be helpul enough idk
Returning to David GEIGER
Assignee: qa-bugs => geiger.david68210
@Thomas and Dave, if more time pass is more possible that other users get this issue What do you think of validate and make an Errata?
Is in Errata now, what we must do, wait to a "cosmetic" change (if the packager decide add a README.install.urpmi with the warming about the update issue due the fails of previous version) or give green light so avoid more bites of this bug?
Keywords: (none) => IN_ERRATA9
If a lua scriptlet can not force uninstalling the old version without executing the script from the old version, then the feedback keyword should be removed, and the MGA9-64-OK,validated_update whiteboard entries added.
The bug also needs to be reassigned back to qa-bugs@ml.mageia.org it no lua script can work.
This has been hanging around too long. Removing the feedback flag, and assigning back to QA.
Assignee: geiger.david68210 => qa-bugsKeywords: feedback => (none)
Giving this an OK, and validating the way it is. katnatek, we still need an advisory.
CC: (none) => sysadmin-bugsKeywords: (none) => validated_updateWhiteboard: (none) => MGA9-64-OK
Keywords: (none) => advisory
type: bugfix subject: Updated lxc packages fix packaging issues of lxc src: 9: core: - lxc-5.0.3-1.mga9 description: | lxc 5.0.2-1.mga9 presents errors when install or uninstall . lxc-5.0.3-1.mga9 fix that errors, but manual actions are required. See https://bugs.mageia.org/show_bug.cgi?id=32687#c10 references: - https://bugs.mageia.org/show_bug.cgi?id=32687 - https://bugs.mageia.org/show_bug.cgi?id=32687#c10 - https://wiki.mageia.org/en/Mageia_9_Errata#Various_software
An update for this issue has been pushed to the Mageia Updates repository. https://advisories.mageia.org/MGAA-2024-0068.html
Resolution: (none) => FIXEDStatus: REOPENED => RESOLVED