Fingerprint scanner: Difference between revisions

Granddave (talk | contribs)
Add fingerprint enrollment for Gnome
fprintd-enroll doesn't need to (and shouldn't) be run as root
 
(6 intermediate revisions by 6 users not shown)
Line 15: Line 15:
# ...and use one of the next four drivers
# ...and use one of the next four drivers
services.fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix; # Goodix driver module
services.fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix; # Goodix driver module
# services.fprintd.tod.driver = pkgs.libfprint-2-tod1-elan # Elan(04f3:0c4b) driver
# services.fprintd.tod.driver = pkgs.libfprint-2-tod1-elan; # Elan(04f3:0c4b) driver
# services.fprintd.tod.driver = pkgs.libfprint-2-tod1-vfs0090; # driver for 2016 ThinkPads
# services.fprintd.tod.driver = pkgs.libfprint-2-tod1-vfs0090; # (Marked as broken as of 2025/04/23!) driver for 2016 ThinkPads
# services.fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix-550a # Goodix 550a driver (from Lenovo)
# services.fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix-550a; # Goodix 550a driver (from Lenovo)


# however for focaltech 2808:a658, use fprintd with overidden package (without tod)
# services.fprintd.package = pkgs.fprintd.override {
#  libfprint = pkgs.libfprint-focaltech-2808-a658;
# };
</syntaxhighlight>
</syntaxhighlight>


Line 25: Line 29:


=== CLI ===
=== CLI ===
<syntaxhighlight lang="bash">$ sudo fprintd-enroll</syntaxhighlight>
<syntaxhighlight lang="bash">$ fprintd-enroll</syntaxhighlight>


=== Gnome ===
=== Gnome ===
 
In [[GNOME|Gnome]], the the fingerprints can be configured through the Settings application.
# Open Gnome Settings
# Open Gnome Settings
# Scroll down to ''System''
# Scroll down to ''System''
Line 40: Line 44:
security.pam.services.login.fprintAuth = false;
security.pam.services.login.fprintAuth = false;
security.pam.services.gdm-fingerprint = lib.mkIf (config.services.fprintd.enable) {
security.pam.services.gdm-fingerprint = lib.mkIf (config.services.fprintd.enable) {
      text = ''
  text = ''
        auth      required                    pam_shells.so
    auth      required                    pam_shells.so
        auth      requisite                  pam_nologin.so
    auth      requisite                  pam_nologin.so
        auth      requisite                  pam_faillock.so      preauth
    auth      requisite                  pam_faillock.so      preauth
        auth      required                    ${pkgs.fprintd}/lib/security/pam_fprintd.so
    auth      required                    ${pkgs.fprintd}/lib/security/pam_fprintd.so
        auth      optional                    pam_permit.so
    auth      optional                    pam_permit.so
        auth      required                    pam_env.so
    auth      required                    pam_env.so
        auth      [success=ok default=1]      ${pkgs.gnome.gdm}/lib/security/pam_gdm.so
    auth      [success=ok default=1]      ${pkgs.gdm}/lib/security/pam_gdm.so
        auth      optional                    ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so
    auth      optional                    ${pkgs.gnome-keyring}/lib/security/pam_gnome_keyring.so


        account    include                    login
    account    include                    login


        password  required                    pam_deny.so
    password  required                    pam_deny.so


        session    include                    login
    session    include                    login
        session    optional                    ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
    session    optional                    ${pkgs.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
      '';
  '';
    };
};
};


</syntaxhighlight>
</syntaxhighlight>
[[Category:Hardware]]
[[Category:Hardware]]