Description of problem: Version-Release number of selected component (if applicable): `uname -a` Linux localhost.localdomain 4.2.3-300.fc23.x86_64 #1 SMP Mon Oct 5 15:42:54 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux `dnf --version` 1.1.9 Installed: dnf-0:1.1.9-2.fc23.noarch at 2016-06-10 11:13 Built : Fedora Project at 2016-05-24 15:43 Installed: rpm-0:4.13.0-0.rc1.13.fc23.x86_64 at 2016-06-10 11:23 Built : Fedora Project at 2016-04-25 13:50 How reproducible: `vagrant init fedora/23-cloud-base` `vagrant up` `vagrant ssh` `sudo dnf remove vim-minimal` The last command attempts to remove package sudo. If user accepts (y), package sudo is removed, which leaves user locked out from executing programs with UID=0. With root account switched off by default, this leaves the user with little opportunity to fix the system. `sudo dnf vim-enhanced` fails with: Error: Transaction check error: file /usr/share/man/man1/vim.1.gz from install of vim-common-2:7.4.1718-1.fc23.x86_64 conflicts with file from package vim-minimal-2:7.4.827-1.fc23.x86_64 `sudo dnf install sudo` does not mark package as user-installed. I would expect it to mark it as user-installed. Manually marking the package sudo as user-installed `echo user >> /var/lib/dnf/yumdb/s/7d44f1e485d76239767c645651c0882540ee5b64-sudo-1.8.15-2.fc23-x86_64/reason` does not make dnf recognise it as user installed.
The last paragarph actually contains the following code snippet: `echo user > /var/lib/dnf/yumdb/s/7d44f1e485d76239767c645651c0882540ee5b64-sudo-1.8.15-2.fc23-x86_64/reason`
Even after running `sudo dnf mark install sudo`, which correctly marks sudo as user-installed, `sudo dnf remove vim-minimal` still attempts to remove package sudo.
This is a workaround: `dnf --downloadonly install sudo` `rpm --install --nodeps /var/cache/dnf/updates-e042e478e0621ea6/packages/sudo-1.8.15-2.fc23.x86_64.rpm` `sudo dnf install vim-enhanced`
The problem seems to be that package sudo depends on /usr/bin/vi, which is unexpected. This is attested by: `$ rpm -qR sudo | grep vi /usr/bin/vi`, which returns `/usr/bin/vi`
It appears that the package sudo doesn't actually depend on any vim package (not even vim-minimal) anymore, due to a change a redhat developer introduced 2 years ago in how sudo is packaged: * Tue Sep 30 2014 XXX XXX <xxx> - 1.8.11-1 - update to 1.8.11 - ... - require /usr/bin/vi instead of vim-minimal It appears that dnf misunderstands this "path dependency" as "package dependency" and tries to uninstall vim-minimal. It appears that this issue is a bug in dnf.
Unfortunately, the vim-enhanced package doesn't provide /usr/bin/vi, so you cannot easily replace vim-minimal with vim-enhanced. So far I don't think that this is solvable. The vim-enhanced could provide /usr/bin/vi, but then it would probably be installed preferentially and we want a preference on vim-minimal because it's smaller. And sudo needs an editor because of visudo.
This message is a reminder that Fedora 23 is nearing its end of life. Approximately 4 (four) weeks from now Fedora will stop maintaining and issuing updates for Fedora 23. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '23'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 23 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
honestly I do not think this is a bug. if the user chooses to remove a package and it removes things depending on it, that would be expected
gahh, middle of thoughts. The only think I see here is possibly a dnf bug where it is not updating vim-minimal when trying to install vim-enhanced. but if a user takes an action such as removing vim-minimal and accepting the removal of things depending on it that is expected behaviour. you really should update the cloud images on first run.
Fedora 23 changed to end-of-life (EOL) status on 2016-12-20. Fedora 23 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.