[Dev] Can't get rid of coreutils

Aleksander Zdyb a.zdyb at partner.samsung.com
Tue Oct 8 12:07:07 GMT 2013


Hello all!

TL;DR;
coreutils are installed by `mic create` even though dependencies are 
fulfilled by another package.


Full story:
I've got a tiny image of TIZEN 3.0 (packages from live repos from 
tizen.org). The list of used packages is as follows:
* dash
* dbus
* filesystem
* libgudev
* pam
* systemd
* libsystemd
* util-linux-agetty [1]
* util-linux-login-utils [2]
* mount
* rpm

Certainly there are some dependencies installed automatically and one of 
them is coreutils (which I'm trying to get rid of).
Knowing no other way to find out the reason it was installed by rpm, I 
tried to uninstall it from image:

# rpm -e coreutils
error: Failed dependencies:
     /usr/bin/mkdir is needed by (installed) 
shared-mime-info-1.0-2.12.armv7l
     /usr/bin/rm is needed by (installed) shared-mime-info-1.0-2.12.armv7l

So I found out, that only two binaries from coreutils were needed by 
other packages.
I prepared two packages (busybox and busybox-symlinks), which provided 
the above files and added them to my list.

And now I cannot prepare any image, because of this:

Warning: file /usr/bin/mkdir conflicts between attempted installs of 
coreutils-8.21-2.7.armv7l and busybox-symlinks-1.20.2-10.armv7l
Warning: file /usr/bin/rm conflicts between attempted installs of 
coreutils-8.21-2.7.armv7l and busybox-symlinks-1.20.2-10.armv7l
...
Error <repo>: Could not run transaction.


My question is, why would coreutils still be installed in spite of the 
dependencies are provided by busybox-symlinks?


Subpackages of util-linux:
[1] Provides only: /usr/sbin/agetty
[2] Provides only: /etc/default/su, /etc/pam.d/login, /etc/pam.d/remote, 
/etc/pam.d/su, /etc/pam.d/su-l, /usr/bin/login, /usr/bin/su, 
/usr/sbin/sulogin


-- 
Aleksander Zdyb
Samsung R&D Institute Poland
Samsung Electronics



More information about the Dev mailing list