Bug 1382673

Summary: dnf autoremove still try to remove essential packages or packages that should not be removed !!
Product: [Fedora] Fedora Reporter: yousifjkadom <yousifjkadom>
Component: dnfAssignee: rpm-software-management
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 24CC: jsilhan, mluscon, packaging-team-maint, pnemade, rpm-software-management, vmukhame, yousifjkadom
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-10-07 14:36:36 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
fedora.repo.gz
none
rpmfusion-free.repo.gz
none
rpmfusion-free-updates.repo.gz
none
rpmfusion-nonfree.repo.gz
none
rpmfusion-nonfree-updates.repo.gz
none
solver.result
none
@System.repo.gz
none
testcase.t
none
updates.repo.gz none

Description yousifjkadom@yahoo.com 2016-10-07 11:19:20 UTC
Hi.

I "autoremove" try to remove essential packages or packages that should not be removed in-spite of closing bug 1259865.

1st please know the following:

- I use Fedora 24 X64 Cinnamon edition (Not GNOME)
- I did not installed GNOME or other DE as additional DE
- I did not installed GNOME software center at all
- I have no packagekit on my system
- I have no libhif on my system
 However, I installed & removed many applications using Yun extender (DNF) BUT with setting to make it remove an application without removing their unused dependencies (i.e: "erase unused requirements" was unchecked at that time). The following programs were installed but then removed in this way:

ardour
avidemux
Pitivi
LiVES
OpenShot
FlowBlade

I do not remember whether I installed then erased KpassX on my real Fedora or on live USB Fedora

The following programs are still installed & used on my system:

- audacity
- wget
- uGet
- KDEnlive
- VLC
- GNOME Password generator
- gtk-recordmydesktop
- GoldenDict (Golden Dictionary)
- pdfedit 


I run "sudo dnf autoremove" but not allow it to complete. Just run it, copy list of package that showed to be removed then abort process & asked in Fedora forum about these. The following is the list to be removed:

Last metadata expiration check: 2:38:36 ago on Thu Oct 6 06:52:38 2016.
Dependencies resolved.
================================================== ==============================
Package Arch Version Repository Size
================================================== ==============================
Removing:
GLee x86_64 5.4.0-10.fc24 @fedora 728 k
ImageMagick-c++ x86_64 6.9.3.0-2.fc24 @fedora 625 k
SDL2 x86_64 2.0.4-8.fc24 @updates 1.1 M
atlas x86_64 3.10.2-12.fc24 @anaconda 23 M
aubio x86_64 0.4.2-2.fc24 @fedora 798 k
boost-regex x86_64 1.60.0-7.fc24 @updates 1.1 M
clang-libs x86_64 3.8.0-2.fc24 @updates 28 M
clutter-gst2 x86_64 2.0.18-1.fc24 @anaconda 191 k
compat-lua-libs x86_64 5.1.5-5.fc24 @fedora 485 k
cwiid x86_64 0.6.00-27.20100505gitfadf11e.fc24
@fedora 71 k
fftw-libs-single x86_64 3.3.4-7.fc24 @fedora 2.1 M
frei0r-plugins x86_64 1.5-1.fc24 @fedora 5.1 M
gavl x86_64 1.4.0-8.fc24 @fedora 4.2 M
gmic x86_64 1.7.2-1.fc24 @updates 15 M
hyperv-daemons-license noarch 0-0.14.20150702git.fc24 @anaconda 18 k
hypervfcopyd x86_64 0-0.14.20150702git.fc24 @anaconda 12 k
hypervkvpd x86_64 0-0.14.20150702git.fc24 @anaconda 31 k
hypervvssd x86_64 0-0.14.20150702git.fc24 @anaconda 12 k
kf5-kplotting x86_64 5.26.0-1.fc24 @updates 106 k
ladspa x86_64 1.13-16.fc24 @fedora 116 k
ladspa-swh-plugins x86_64 0.4.15-26.fc24 @fedora 1.5 M
libbs2b x86_64 3.1.0-16.fc24 @fedora 54 k
libclc x86_64 0.2.0-3.20160207gitdc330a3.fc24
@fedora 25 M
libfreenect x86_64 0.5.3-1.fc24 @fedora 370 k
libgdither x86_64 0.6-11.fc24 @fedora 41 k
libguess x86_64 1.2-3.fc24 @fedora 36 k
liblo x86_64 0.28-2.fc24 @fedora 162 k
liblrdf x86_64 0.5.0-10.fc24 @fedora 52 k
libltc x86_64 1.2.0-2.fc24 @fedora 34 k
libmpg123 x86_64 1.22.4-1.fc24 @rpmfusion-free 443 k
liboil x86_64 0.3.16-13.fc24 @fedora 568 k
libopenshot x86_64 0.1.1-2.fc24 @rpmfusion-free 940 k
libopenshot-audio x86_64 0.1.1-1.fc24 @rpmfusion-free 4.8 M
libprojectM-qt x86_64 2.1.0-1.fc24 @fedora 360 k
libresample x86_64 0.1.3-22.fc24 @fedora 53 k
librtmp x86_64 2.4-7.20160224.gitfa8646d.fc24
@rpmfusion-free-updates
152 k
libunicap x86_64 0.9.12-17.fc24 @fedora 401 k
lilv x86_64 0.20.0-5.fc24 @fedora 153 k
lirc-libs x86_64 0.9.4a-1.fc24 @updates 282 k
mencoder x86_64 1.3.0-1.fc24 @rpmfusion-free 2.6 M
mesa-libOpenCL x86_64 12.0.3-1.fc24 @updates 1.8 M
mjpegtools-libs x86_64 2.1.0-5.fc24 @rpmfusion-free 392 k
mkvtoolnix x86_64 9.2.0-1.fc24 @updates 17 M
mlt-python x86_64 6.2.0-2.fc24 @rpmfusion-free-updates
622 k
mplayer x86_64 1.3.0-1.fc24 @rpmfusion-free 3.8 M
mplayer-common x86_64 1.3.0-1.fc24 @rpmfusion-free 1.3 M
oggvideotools x86_64 0.9-2.fc24 @fedora 4.7 M
ogmtools x86_64 1.5-17.fc24 @fedora 410 k
opencl-filesystem noarch 1.0-4.fc24 @fedora 0
opencore-amr x86_64 0.1.3-4.fc24 @rpmfusion-free 342 k
opencv x86_64 2.4.12.3-3.fc24 @anaconda 25 M
opencv-python x86_64 2.4.12.3-3.fc24 @anaconda 1.3 M
pugixml x86_64 1.7-2.fc24 @fedora 232 k
python-nose noarch 1.3.7-7.fc24 @anaconda 1.1 M
python-qt5-rpm-macros noarch 5.6-4.fc24 @updates 137
python2-numpy x86_64 1:1.11.0-4.fc24 @anaconda 15 M
python3-httplib2 noarch 0.9.2-2.fc24 @fedora 291 k
python3-libopenshot x86_64 0.1.1-2.fc24 @rpmfusion-free 1.6 M
python3-qt5 x86_64 5.6-4.fc24 @updates 22 M
python3-qt5-webkit x86_64 5.6-4.fc24 @updates 573 k
python3-sip x86_64 4.18-2.fc24 @updates 457 k
qt5-qtconnectivity x86_64 5.6.1-2.fc24 @updates 1.3 M
qt5-qtenginio x86_64 1:1.6.1-2.fc24 @updates 589 k
qt5-qtmultimedia x86_64 5.6.1-3.fc24 @updates 3.1 M
qt5-qtserialport x86_64 5.6.1-1.fc24 @updates 190 k
qt5-qttools-libs-clucene x86_64 5.6.1-2.fc24 @updates 132 k
qt5-qttools-libs-help x86_64 5.6.1-2.fc24 @updates 647 k
qt5-qtwebsockets x86_64 5.6.1-2.fc24 @updates 230 k
rubberband x86_64 1.8.1-8.fc24 @fedora 879 k
serd x86_64 0.20.0-3.fc24 @fedora 122 k
sord x86_64 0.12.2-8.fc24 @fedora 72 k
sratom x86_64 0.4.6-4.fc24 @fedora 42 k
suil x86_64 0.8.2-4.fc24 @fedora 77 k
theora-tools x86_64 1:1.1.1-14.fc24 @fedora 110 k
uchardet x86_64 0.0.5-4.fc24 @updates 169 k
xorg-x11-server-common x86_64 1.18.3-2.fc24 @anaconda 127 k
xvidcore x86_64 1.3.4-2.fc24 @rpmfusion-free 907 k
youtube-dl noarch 2016.09.15-1.fc24 @updates 6.8 M

Transaction Summary
================================================== ==============================
Remove 78 Packages

Installed size: 234 M

We detect (in the forum) - till now - 2 suspicious packages (& I'm sure there are more than 2):

 "xorg-x11-server-common"

&

 "youtube-dl"

I entered in terminal the following:

xorg-x11-server-common --version

But I got this:

bash: xorg-x11-server-common: command not found

Then I open Yum extender (DNF) & searched for "xorg" & got this:

xorg-x11-server-common 1.18.4-4fc24 X86_64 BUT NOT 1.13.3-2 WHICH SHOWN BY "AUTOREMOVE" ! What does this mean ?!

But, I searched for "youtube-dl because I saw it came to me in one of updates. It appear to me in package manager as:

youtube-dl 2016.09.15-1.fc24 noarch & in autoremove list it appear as 2016-09.15-1 ALSO!

In 1st example it seem that no bug but in 2nd example it seem that it is still bugy !!!

Note: both "xorg-x11-server-common" & "youtube-dl" appearing in green color in Yum extender (DNF)

Other note: "youtube-dl" came to me from previous system upgrade process (I saw it by my eyes in list of packages during that upgrade process), so how & why "dnf autoremove" select it to be removed ?!!!!

Comment 1 Igor Gnatenko 2016-10-07 11:22:23 UTC
run dnf autoremove --debugsolver and attach 'debugdata' directory.

Comment 2 yousifjkadom@yahoo.com 2016-10-07 14:21:51 UTC
Hi. I did what you command me. But I have 2 folders (directory):

- "debugdata"
- "debugdata-autoremove"

Attachments system here does not allow for folder attachment. It only allows for individual files attachments. For that I attached files inside folder "debugdata". If further information needed please inform me.

Comment 3 yousifjkadom@yahoo.com 2016-10-07 14:23:54 UTC
Created attachment 1208163 [details]
fedora.repo.gz

Comment 4 yousifjkadom@yahoo.com 2016-10-07 14:25:19 UTC
Created attachment 1208164 [details]
rpmfusion-free.repo.gz

Comment 5 yousifjkadom@yahoo.com 2016-10-07 14:26:27 UTC
Created attachment 1208165 [details]
rpmfusion-free-updates.repo.gz

Comment 6 yousifjkadom@yahoo.com 2016-10-07 14:27:21 UTC
Created attachment 1208166 [details]
rpmfusion-nonfree.repo.gz

Comment 7 yousifjkadom@yahoo.com 2016-10-07 14:28:37 UTC
Created attachment 1208167 [details]
rpmfusion-nonfree-updates.repo.gz

Comment 8 yousifjkadom@yahoo.com 2016-10-07 14:29:24 UTC
Created attachment 1208169 [details]
solver.result

Comment 9 yousifjkadom@yahoo.com 2016-10-07 14:30:26 UTC
Created attachment 1208170 [details]
@System.repo.gz

Comment 10 yousifjkadom@yahoo.com 2016-10-07 14:31:13 UTC
Created attachment 1208171 [details]
testcase.t

Comment 11 yousifjkadom@yahoo.com 2016-10-07 14:32:17 UTC
Created attachment 1208172 [details]
updates.repo.gz

Comment 12 Igor Gnatenko 2016-10-07 14:36:36 UTC
Packages are not marked as "userinstalled". Just do "dnf mark install ..." on packages which you want to keep.

Comment 13 yousifjkadom@yahoo.com 2016-10-07 18:22:09 UTC
Not a bug !! I'm should marking the packages !!

Dear. Please be patient with me. In Debian there is command:

sudo apt-get autoremove

Above command detect by ITSELF unusable packages that their removal will NEVER cause injury or crash of system because these package are NOT USED AT ALL.

In Fedora, command:

sudo dnf autoremove

should have the same function as that of "sudo apt-get autoremove" in Debian, isn't it ??

You ask me to "mark package(s) you like to remain" !! If I'm already know them so why I use autoremove ?!! How I know every package if used or unused ? This should be the function of "dnf autoremove" not me !

Other thing, 2 packages, "youtube-dl" & "xorg-x11-server-common", are not installed by me. They are came from updating system or being installed by default, so why I should mark them ? If there is need to "mark them", isn't the system who should "mark them" to be not removed by autoremove ?

I does not understand why not a bug ?!! If not a bug, simply this mean that DNF is not clever tool !! Not clever tool in Linux ??!!!

Comment 14 Igor Gnatenko 2016-10-07 18:27:02 UTC
(In reply to yousifjkadom from comment #13)
> Not a bug !! I'm should marking the packages !!
> 
> Dear. Please be patient with me. In Debian there is command:
> 
> sudo apt-get autoremove
> 
> Above command detect by ITSELF unusable packages that their removal will
> NEVER cause injury or crash of system because these package are NOT USED AT
> ALL.
> 
> In Fedora, command:
> 
> sudo dnf autoremove
> 
> should have the same function as that of "sudo apt-get autoremove" in
> Debian, isn't it ??
Idea is same, but it should not be 100%-same.
> 
> You ask me to "mark package(s) you like to remain" !! If I'm already know
> them so why I use autoremove ?!! How I know every package if used or unused
> ? This should be the function of "dnf autoremove" not me !
Even there was some bug, DNF doesn't know if package is used by you or not (e.g. some filesystem corruption), so it assumes that they are not and tries to remove them.
> 
> Other thing, 2 packages, "youtube-dl" & "xorg-x11-server-common", are not
> installed by me. They are came from updating system or being installed by
> default, so why I should mark them ? If there is need to "mark them", isn't
> the system who should "mark them" to be not removed by autoremove ?
If youtube-dl was pulled by dependency and later became unnecessary, then it can be safely autoremoved. As for xorg-x11-server-common, it can be that you removed some other packages like xorg-x11-drv-intel, so that package is not anymore required.
> 
> I does not understand why not a bug ?!! If not a bug, simply this mean that
> DNF is not clever tool !! Not clever tool in Linux ??!!!
!! ? !!

Comment 15 yousifjkadom@yahoo.com 2016-10-07 19:25:47 UTC
To dear Igor Gnatenko

Your statement: 

"As for xorg-x11-server-common, it can be that you removed some other packages like xorg-x11-drv-intel, so that package is not anymore required."

Dear here why we are very afraid: I did not touch any thing related to xorg-xll-drv-intel. I did not know about this package unless when I run autoremove. This is exactly the problem. Here is the question. I installed & removed the following:

rdour
avidemux
Pitivi
LiVES
OpenShot
FlowBlade

I do not remember whether I installed then erased KpassX on my real Fedora or on live USB Fedora

I installed & still on my system the following:

- audacity
- wget
- uGet
- KDEnlive
- VLC
- GNOME Password generator
- gtk-recordmydesktop
- GoldenDict (Golden Dictionary)
- pdfedit 

During the time of installation & removing above application: I used Yum extender (DNF) & it was set "not to erase unused requirements" 

This is all my history. I use Fedora since only 2 months. Before 2 weeks or so I activated "erase unuse requirements" in Yum extender (DNF) BUT I NEVER ERASE OR REMOVE ANY PACKAGE OR APPLICATION FROM THAT TIME WHEN I ACTIVATED THIS OPTION TILL NOW !!

So, how xorg became not used !!

Is this related to fact that I have 2 graphics:

- Intel HD Graghics 5500 (well integrated with motherboard) Supported by Fedora
- AMD Radeon R7 M265 dedicated VGA 2GB NOT SUPPORTED YET BY Fedora.

Does AMD Radeon dedicated VGA being not supported till now, is responsible ?