Re: thunderbird needs graphical pinentry to use external gnupg for encrypting emails

"Bruce Dubbs" ([email protected] via blfs-dev Mailing List) <[email protected]>
Newsgroups gmane.linux.lfs.beyond.devel
Message-ID <[email protected]>
On 11/19/24 08:23, Xi Ruoyao ([email protected] via blfs-dev Mailing List) wrote:

> Basically our options are:
> 
> - Making KDE Framework recommended for pinentry.  The resulted pinentry-
> qt6 works for all DEs (not only KDE) but KDE Framework is a very bloat
> dependency (for anyone not using KDE).
> - Making gcr recommended for pinentry.  But the resulted pinentry-gnome3
> does not work at all for DEs other than GNOME.
> 
> Also if both gcr and KF6 are installed, pinentry-qt6 will *always* be
> used despite pinentry-gnome3 is installed.  But in GNOME the latter
> looks better.  Arch uses a custom script as /usr/bin/pinentry to "fix"
> the issue.
> 
> Now I'm feeling we need a lightweight pinentry implementation working on
> all DEs (and just delegate to pinentry-gnome3 or pinentry-qt6 on GNOME
> or KDE for "aesthetics").  But if we really pursue this we'll end up
> writing our own...

I find it interesting that Arch has pinentry dependencies:

     glib2
     glibc
     libassuan
     libglib-2.0.so=0-64 (glib2)
     libncursesw.so=6-64 (ncurses)
     libsecret
     libsecret-1.so=0-64 (libsecret)
     ncurses
     gcr (optional) - GNOME backend
     gtk3 (optional) - GTK backend
     kguiaddons (optional) - Qt6 backend
     kwayland5 (optional) - Qt5 backend
     kwindowsystem (optional) - Qt6 backend
     qt5-x11extras (optional) - Qt5 backend
     gcr (make)
     gtk2-compat (make)
     kguiaddons (make)
     kwayland5 (make)
     kwindowsystem (make)
     qt5-x11extras (make)
     qt6-base (make)

We have ...

required:
    libassuan-3.0.1 and libgpg-error-1.51  (plus LFS)

optional:
    Emacs,
    FLTK,
    Gcr-4.3.0 (or Gcr-3.41.2),
    KDE Frameworks-6.8.0 (or kwayland-6.2.3 for lxqt),
    libsecret, and
    efl

Comparing, it appears that we really need kguiaddons and kwindowsystem.
I think we have the others covered.

Checking my build log, I see

checking for elementary >= 1.18,ecore-x... no
configure: WARNING: pkg-config could not find the modules elementary or ecore-x
checking for gtk+-2.0 >= 2.12.0... no
checking for gcr-4... no
checking for KF5WaylandClient >= 5.60... no
checking for Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0... no
checking for QtCore >= 4.6.0 QtGui >= 4.6.0... no

and
checking for KF6GuiAddons >= 5.240... yes
checking for KF6WindowSystem >= 5.240... yes

And later:

    Pinentry v1.3.1 has been configured as follows:

    Revision:  dd8894f  (56712)
    Platform:  x86_64-pc-linux-gnu

    Curses Pinentry ..: yes
    TTY Pinentry .....: yes
    Emacs Pinentry ...: no
    EFL Pinentry .....: no
    GTK+-2 Pinentry ..: no
    GNOME 3 Pinentry .: yes
    Qt6 Pinentry .....: yes
    Qt5 Pinentry .....: no
    Qt4 Pinentry .....: no
    TQt Pinentry .....: no
    W32 Pinentry .....: no
    FLTK Pinentry ....: yes

    Fallback to Curses: yes
    Emacs integration : yes

    libsecret ........: yes

    Default Pinentry .: pinentry-qt

In my case I did have Qt6 and KF6 installed.

It looks to me that we need to rework the pinentry dependencies a bit,
but I am unsure what changes are needed. We can add  kwindowsystem for lxqt, but we 
do not have KF6GuiAddons as a separate package (I think it just has the same 
dependencies as kwindowsystem).

   -- Bruce

-- 
http://lists.linuxfromscratch.org/sympa/info/blfs-dev
Unsubscribe: See the above information page
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.