On Thursday 13 February 2025 19:51:57 Greenwich Mean Time Grant Edwards wrote:
> Does this message from emerge --depclean mean that there's a
> dependency on dev-qt/qtx11extras:5 missing from the libreoffice-bin
> ebuild?
> 
> Or have I managed to break something?
> 
>     $ sudo emerge --depclean --ask
>     Password:
> 
>      * Always study the list of packages [...]
> 
>     Calculating dependencies... done!
> 
>     >>> Checking for lib consumers...
>     >>> Assigning files to packages...
> 
>      * In order to avoid breakage of link level dependencies, one or more
>      * packages will not be removed. This can be solved by rebuilding the
>      * packages that pulled them in.
>      *
>      *   dev-qt/qtx11extras-5.15.16 pulled in by:
>      *     app-office/libreoffice-bin-24.2.7.2 needs libQt5X11Extras.so.5
>      *

Hmm, I have app-office/libreoffice-bin-24.2.7.2 installed on one PC, but do 
not have the same USE flags as you do and I do not get the same --depclean 
output complaining about dev-qt/qtx11extras::

~ $ emerge -av --pretend app-crypt/pinentry

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 7.10 s (backtrack: 0/20).

[ebuild   R    ] app-crypt/pinentry-1.3.1::gentoo  USE="X ncurses qt5 qt6 
wayland -caps -efl -emacs -gtk -keyring -verify-sig" 597 KiB

This is my profile:

~ $ eselect profile show
Current /etc/portage/make.profile symlink:
  default/linux/amd64/23.0/desktop/plasma


> I've also noticed that the output from equery --depends isn't
> particularly useful when the dependancy is conditional:
> 
>     $ equery depends dev-qt/qtx11extras
>      * These packages depend on dev-qt/qtx11extras:
>     app-crypt/pinentry-1.3.1 (X ? dev-qt/qtx11extras:5)
>                              (X ? dev-qt/qtx11extras:5)
>     media-libs/suil-0.10.20 (qt5 ? dev-qt/qtx11extras:5)
>                             (qt5 ? dev-qt/qtx11extras:5)

~ $ equery depends dev-qt/qtx11extras
 * These packages depend on dev-qt/qtx11extras:
app-crypt/pinentry-1.3.1 (X ? dev-qt/qtx11extras:5)
                         (X ? dev-qt/qtx11extras:5)
kde-frameworks/kcrash-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                              (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kdbusaddons-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                   (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kglobalaccel-5.116.0-r1 (>=dev-qt/qtx11extras-5.15.9:5)
                                       (>=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kguiaddons-5.116.0-r1 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                     (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kio-5.116.0-r3 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                              (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kjobwidgets-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                   (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/knotifications-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                      (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kwindowsystem-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                     (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-plasma/breeze-6.2.5 (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
                        (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
kde-plasma/oxygen-6.2.5 (X ? >=dev-qt/qtx11extras-5.15.12:5)
                        (X ? >=dev-qt/qtx11extras-5.15.12:5)
kde-plasma/plasma-integration-6.2.5 (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
                                    (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
media-video/vlc-3.0.21-r3 (X ? dev-qt/qtx11extras:5)
                          (X ? dev-qt/qtx11extras:5)


> It _looks_ like pinentry should require qtx11extras, since pinentry is
> installed with the X use flag:
> 
>     $ emerge -av --pretend app-crypt/pinentry
>     [...]
>     [ebuild   R    ] app-crypt/pinentry-1.3.1::gentoo  USE="X gtk ncurses
> -caps -efl -emacs -keyring -qt5 -qt6 -verify-sig -wayland" 0 KiB

~ $ emerge -av --pretend app-crypt/pinentry

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 7.10 s (backtrack: 0/20).

[ebuild   R    ] app-crypt/pinentry-1.3.1::gentoo  USE="X ncurses qt5 qt6 
wayland -caps -efl -emacs -gtk -keyring -verify-sig" 597 KiB

Total: 1 package (1 reinstall), Size of downloads: 597 KiB
michael@aspire ~ $ equery depends dev-qt/qtx11extras
 * These packages depend on dev-qt/qtx11extras:
app-crypt/pinentry-1.3.1 (X ? dev-qt/qtx11extras:5)
                         (X ? dev-qt/qtx11extras:5)
kde-frameworks/kcrash-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                              (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kdbusaddons-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                   (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kglobalaccel-5.116.0-r1 (>=dev-qt/qtx11extras-5.15.9:5)
                                       (>=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kguiaddons-5.116.0-r1 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                     (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kio-5.116.0-r3 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                              (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kjobwidgets-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                   (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/knotifications-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                      (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-frameworks/kwindowsystem-5.116.0 (X ? >=dev-qt/qtx11extras-5.15.9:5)
                                     (X ? >=dev-qt/qtx11extras-5.15.9:5)
kde-plasma/breeze-6.2.5 (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
                        (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
kde-plasma/oxygen-6.2.5 (X ? >=dev-qt/qtx11extras-5.15.12:5)
                        (X ? >=dev-qt/qtx11extras-5.15.12:5)
kde-plasma/plasma-integration-6.2.5 (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
                                    (qt5 ? >=dev-qt/qtx11extras-5.15.12:5)
media-video/vlc-3.0.21-r3 (X ? dev-qt/qtx11extras:5)
                          (X ? dev-qt/qtx11extras:5)

> However, the _actual_ dependency isn't just (X ? dev-qt/qtx11extras:5)
> as shown by equery, it is
> 
>     (qt5 ? (X ? dev-qt/qtx11extras:5)
> 
> I guess I need to find someththing better than 'equery depends'.

Here's the lot for your perusal via qdepends:

~ $ qdepends -v pinentry
app-crypt/pinentry-1.3.1:
DEPEND="
    >=dev-libs/libassuan-2.1:0/3.0=
    >=dev-libs/libgcrypt-1.6.3
    >=dev-libs/libgpg-error-1.17
    sys-libs/ncurses:0/6=
    dev-qt/qtcore:5
    dev-qt/qtgui:5
    dev-qt/qtwidgets:5
    kde-plasma/kwayland:5
    dev-qt/qtx11extras:5
    x11-libs/libX11
    dev-qt/qtbase:6[gui,widgets]
    kde-frameworks/kguiaddons:6
    kde-frameworks/kwindowsystem:6
"
RDEPEND="
    >=dev-libs/libassuan-2.1:0/3.0=
    >=dev-libs/libgcrypt-1.6.3
    >=dev-libs/libgpg-error-1.17
    sys-libs/ncurses:0/6=
    dev-qt/qtcore:5
    dev-qt/qtgui:5
    dev-qt/qtwidgets:5
    kde-plasma/kwayland:5
    dev-qt/qtx11extras:5
    x11-libs/libX11
    dev-qt/qtbase:6[gui,widgets]
    kde-frameworks/kguiaddons:6
    kde-frameworks/kwindowsystem:6
    >=sys-libs/glibc-2.39-r6
"
BDEPEND="
    sys-devel/gettext
    virtual/pkgconfig
    >=app-portage/elt-patches-20240116
    sys-devel/gnuconfig
    || (
        >=dev-build/automake-1.17-r1:1.17
        >=dev-build/automake-1.16.5:1.16
    )
    || (
        >=dev-build/autoconf-2.72-r1:2.72
        >=dev-build/autoconf-2.71-r6:2.71
    )
    >=dev-build/libtool-2.4.7-r3
"
IDEPEND="
    >=app-eselect/eselect-pinentry-0.7.4
"

HTH