From 33bf438fa2d084686c02953172d01f145afe40de Mon Sep 17 00:00:00 2001 From: Gardanta Spirito Date: Thu, 5 Aug 2021 17:50:45 +0300 Subject: [PATCH] firefox: add smartcard support through opensc --- .../applications/networking/browsers/firefox/wrapper.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix index 202821b0978..c868369b603 100644 --- a/pkgs/applications/networking/browsers/firefox/wrapper.nix +++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix @@ -2,7 +2,7 @@ , replace, fetchurl, zip, unzip, jq, xdg-utils, writeText ## various stuff that can be plugged in -, ffmpeg, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify +, ffmpeg, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify, opensc , gnome/*.gnome-shell*/ , browserpass, chrome-gnome-shell, uget-integrator, plasma5Packages, bukubrow, pipewire , tridactyl-native @@ -49,6 +49,8 @@ let gssSupport = browser.gssSupport or false; alsaSupport = browser.alsaSupport or false; pipewireSupport = browser.pipewireSupport or false; + # PCSC-Lite daemon (services.pcscd) also must be enabled for firefox to access smartcards + smartcardSupport = cfg.smartcardSupport or false; nativeMessagingHosts = ([ ] @@ -70,6 +72,7 @@ let (with xorg; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsa-lib zlib ]) ++ lib.optional (config.pulseaudio or true) libpulseaudio ++ lib.optional alsaSupport alsa-lib + ++ lib.optional smartcardSupport opensc ++ pkcs11Modules; gtk_modules = [ libcanberra-gtk3 ]; @@ -120,6 +123,10 @@ let ret ++ [ "${e.outPath}/${e.extid}.xpi" ] ) [] extensions; }; + } // lib.optionalAttrs smartcardSupport { + SecurityDevices = { + "OpenSC PKCS#11 Module" = "onepin-opensc-pkcs11.so"; + }; } // extraPolicies; };