Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cli can find Yubikey but not GUI #361

Open
YueMiyuki opened this issue Apr 29, 2024 · 13 comments
Open

cli can find Yubikey but not GUI #361

YueMiyuki opened this issue Apr 29, 2024 · 13 comments

Comments

@YueMiyuki
Copy link

YueMiyuki commented Apr 29, 2024

  • YubiKey Manager version: 1.2.5
  • How was it installed?: rpm-ostree install yubikey-manager-qt
  • Operating system and version: Fedora Silverblue 40
  • YubiKey model and version: Yubikey 5C NFC
  • Bug description summary:
    cli can find Yubikey but not GUI

Steps to reproduce

  1. plug in the yubikey
  2. start yubikey manager

Expected result

Yubikey show up in the GUI

Actual results

Nothing Showed up

Other info

image

@YueMiyuki
Copy link
Author

sudo systemctl status pcscd
image

@apollo13
Copy link

apollo13 commented May 2, 2024

This is due to the usage of Python 3.12 which is not supported by pyotherside (yet, see thp/pyotherside#131 etc).

As a workaround you can download https://raw.githubusercontent.com/Yubico/yubikey-manager-qt/main/ykman-gui/py/yubikey.py to ~/.local/lib/python3.12/site-packages

@kimdre
Copy link

kimdre commented May 5, 2024

This is due to the usage of Python 3.12 which is not supported by pyotherside (yet, see thp/pyotherside#131 etc).

As a workaround you can download https://raw.githubusercontent.com/Yubico/yubikey-manager-qt/main/ykman-gui/py/yubikey.py to ~/.local/lib/python3.12/site-packages

Thank you this also worked for me!
However I had to add the file to
/usr/lib/python3.12/site-packages/yubikey.py

@orjawell
Copy link

orjawell commented May 9, 2024

This is due to the usage of Python 3.12 which is not supported by pyotherside (yet, see thp/pyotherside#131 etc).
As a workaround you can download https://raw.githubusercontent.com/Yubico/yubikey-manager-qt/main/ykman-gui/py/yubikey.py to ~/.local/lib/python3.12/site-packages

Thank you this also worked for me! However I had to add the file to /usr/lib/python3.12/site-packages/yubikey.py

Thanks, it worked for me !

@rathann
Copy link

rathann commented Jul 8, 2024

This is due to the usage of Python 3.12 which is not supported by pyotherside (yet, see thp/pyotherside#131 etc).

As a workaround you can download https://raw.githubusercontent.com/Yubico/yubikey-manager-qt/main/ykman-gui/py/yubikey.py to ~/.local/lib/python3.12/site-packages

This doesn't fix the issue for me. strace shows that yubikey.py is found and opened, but the GUI still shows no key.

@leigh123linux
Copy link

I have bisected the offending commit

Yubico/yubikey-manager@2bcf81b

@apollo13
Copy link

apollo13 commented Jul 18, 2024

This might be fixed with #363

@darix
Copy link

darix commented Aug 5, 2024

the patch in #363 has so many unrelated changes. not sure how this happened. the minimal patch is:

diff --git a/ykman-gui/py/yubikey.py b/ykman-gui/py/yubikey.py
index 2c91bc4..32a2b37 100644
--- a/ykman-gui/py/yubikey.py
+++ b/ykman-gui/py/yubikey.py
@@ -50,12 +50,10 @@ from ykman import __version__ as ykman_v
 if int(ykman_v.split(".")[0] ) > 4:
     from yubikit.support import get_name
     from ykman.device import list_all_devices, scan_devices
-    from ykman.otp import (
-    _PrepareUploadFailed as PrepareUploadFailed
-    , _prepare_upload_key as prepare_upload_key, generate_static_pw)
+    from ykman.otp import (generate_static_pw)
 else:
     from ykman import connect_to_device, scan_devices, get_name
-    from ykman.otp import PrepareUploadFailed, prepare_upload_key, generate_static_pw
+    from ykman.otp import generate_static_pw
 
 from fido2.ctap2 import Ctap2, ClientPin
 
@@ -400,17 +398,6 @@ class Controller(object):
         upload_url = None
 
         with self._open_device([OtpConnection]) as conn:
-            if upload:
-                try:
-                    upload_url = prepare_upload_key(
-                        key, public_id, private_id,
-                        serial=self._dev_info['serial'],
-                        user_agent='ykman-qt/' + app_version)
-                except PrepareUploadFailed as e:
-                    logger.debug('YubiCloud upload failed', exc_info=e)
-                    return failure('upload_failed',
-                                   {'upload_errors': [err.name
-                                                      for err in e.errors]})
             try:
                 session = YubiOtpSession(conn)
                 session.put_configuration(

@apollo13
Copy link

apollo13 commented Aug 6, 2024 via email

@darix
Copy link

darix commented Aug 6, 2024

the changes in .github/workflow/ seem unrelated still.

@apollo13
Copy link

apollo13 commented Aug 6, 2024 via email

@apollo13
Copy link

apollo13 commented Aug 9, 2024

FWIW yubikey-manager-qt is apparently deprecated since three months: 28dc02d

As such I have switched to the Yubico Authenticator which works well enough. So instead of trying to patch this in distros, they should probably get rid of this package and switch over to the authenticator.

@darix
Copy link

darix commented Aug 9, 2024

yeah. I already asked them to maybe archive the now deprecated projects via Yubico/yubikey-manager#627

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

7 participants