Package Details: eidklient-native 5.0-1

Git Clone URL: https://aur.archlinux.org/eidklient-native.git (read-only, click to copy)
Package Base: eidklient-native
Description: Slovak eID Client - uses system-provided libraries, supports Wayland, …
Upstream URL: https://www.slovensko.sk/
Keywords: eac_mw_klient
Licenses: custom
Conflicts: eidklient
Provides: eidklient
Submitter: the-k
Maintainer: the-k
Last Packager: the-k
Votes: 4
Popularity: 0.038814
First Submitted: 2023-07-04 11:22 (UTC)
Last Updated: 2024-12-13 22:20 (UTC)

Latest Comments

the-k commented on 2024-07-04 10:37 (UTC) (edited on 2024-07-08 08:19 (UTC) by the-k)

@tukusejssirs It's not the app that doesn't support Wayland, it's the bundled Qt. In order to support Wayland, system Qt has to be used. The executables have runpath set to $ORIGIN/lib, which causes the executables to search for the libraries in lib subdirectory. By setting LD_LIBRARY_PATH=/usr/lib, we instruct the executables to use system libraries instead, if available. If a library isn't available in /usr/lib, then it falls back to lib subdirectory. So, no further LD_LIBRARY_PATH modification is required. I've been using the app in Wayland-only environment with QT_QPA_PLATFORM=wayland just fine. Make sure to follow https://wiki.archlinux.org/title/Wayland#Qt.

/usr/lib/eID_klient is necessary because that's where D.Launcher looks for VirtualKeyboard and the shared objects.

tukusejssirs commented on 2024-07-03 22:04 (UTC) (edited on 2024-07-03 22:07 (UTC) by tukusejssirs)

@the-k, unless you know of a reason to keep it as it is, I think we could remove the following code if we update the wrapper script and set LD_LIBRARY_PATH to include `${pkgdir}/opt/eidklient/lib'.

Therefore, this can be safely removed:

    # Symlink executable
    # It seems this is unnecessary (however it's done like this in the upstream package)
    #ln -s /usr/bin/eID_Client "${pkgdir}/usr/bin/VirtualKeyboard"

    install -dm755 "${pkgdir}/usr/lib/eID_klient"
    ln -s /usr/bin/eID_Client "${pkgdir}/usr/lib/eID_klient/VirtualKeyboard"

    for lib in "${srcdir}"/squashfs-root/lib/lib{CardAPI,botan,pkcs11_,crypto,ssl}*; do
        ln -s "/opt/${_pkgname}/lib/${lib##*/}" "${pkgdir}/usr/lib/eID_klient/"
    done

The following is the wrapper script I use. Note that I have added QT_QPA_PLATFORM='xcb', because the app does not support QT_QPA_PLATFORM='wayland' (my default). I have no idea if it could cause others issues, however, I cannot run the app without it (not sure if it is caused by Wayland or NVIDIA). Maybe someone knows how to check if QT_QPA_PLATFORM='xcb' is required or not.

# Custom wrapper script
cat << EOF > "${pkgdir}/opt/bin/eidklient"
#!/bin/bash

export LD_LIBRARY_PATH='/usr/lib:${pkgdir}/opt/eidklient/lib'
export QT_QPA_PLATFORM_PLUGIN_PATH='/usr/lib/qt/plugins'

QT_QPA_PLATFORM='xcb' ${pkgdir}/opt/eidklient/eID_Client "\$@"
EOF

chmod a+x "${pkgdir}/opt/bin/eidklient"

Thanks for maintaining the package!

MarosK commented on 2024-04-30 19:34 (UTC)

Working fine, thank you

the-k commented on 2024-04-21 11:52 (UTC)

@MarosK Fixed now.

MarosK commented on 2024-04-18 20:18 (UTC)

Hello, I'm having this error when opening eidklient: Kontrola integrity zlyhala.Nezhoduje sa tento súbor:'lib/libXi.so.6'

mikro commented on 2023-11-25 10:44 (UTC)

Works a treat, thanks!