ns2 ~ # emerge –sync
ns2 ~ # emerge –update –deep world
Code Listing 4.1: Portage warning about blocked packages (with –pretend)
[blocks B ] mail-mta/ssmtp (is blocking mail-mta/postfix-2.2.2-r1)
Code Listing 4.2: Portage warning about blocked packages (without –pretend)
!!! Error: the mail-mta/postfix package conflicts with another package.
!!! both can’t be installed on the same system together.
!!! Please use ’emerge –pretend’ to determine blockers.
Ebuilds contain specific fields that inform Portage about its dependencies. There are two possible dependencies: build dependencies, declared in DEPEND and run-time dependencies, declared in RDEPEND. When one of these dependencies explicitly marks a package or virtual as being not compatible, it triggers a blockage.
To fix a blockage, you can choose to not install the package or unmerge the conflicting package first. In the given example, you can opt not to install postfix or to remove ssmtp first.