void-linux / void-packages

The Void source packages collection
https://voidlinux.org
Other
2.46k stars 2.09k forks source link

Building pcsclite with polkit enabled causes problems for existing setups. #47426

Closed dataCobra closed 7 months ago

dataCobra commented 7 months ago

Is this a new report?

Yes

System Info

Void 6.5.12_1 x86_64 AuthenticAMD uptodate FFFFFF

Package(s) Affected

pcsclite-2.0.1_1

Does a report exist for this bug with the project's home (upstream) and/or another distro?

https://bbs.archlinux.org/viewtopic.php?id=286779

https://github.com/drduh/YubiKey-Guide/issues/376

Expected behaviour

The package works like before the update to 2.0.1 without manual adjustment/configuration.

Actual behaviour

Non-root users are no longer able to use the functionality of pcsclite when not installing elogind because the polkit policy which is packaged with pcsclite does only work when polkit recognizes a session as active which is only possible with elogind.

There is a workaround when manual creating a separate rules file for polkit if someone doesn't want to install elogind.

Steps to reproduce

  1. Update to pcsclite 2.0.1. (Make sure elogind or seatd is not installed)
  2. Try to execute pcsc_scan or scdaemon via gnupg.
  3. Get informed about denied access.
dataCobra commented 7 months ago

There are two possible solutions to the problem:

  1. Package our own polkit rules and inform the users via INSTALL.
  2. Disable polkit while building the package.
0x5c commented 7 months ago

Are you in the plugdev group? The udev rules shipped by scdaemon should give the device node that group already. Also keep in mind that scdaemon and pcsclite will fight for the device if scdaemon is not specially configured to use pcsclite.

dataCobra commented 7 months ago

My user is in the plugdev group and I have configured scdaemon to work with pcsclite.

Everything worked before the update.

dataCobra commented 7 months ago

I think the right person to ask here is @abenson because he is the maintainer for the package.