mirror of
https://github.com/basecamp/omarchy.git
synced 2025-07-27 12:19:24 +00:00
Only allow fingerprint setup if a sensor is detected
This commit is contained in:
@ -1,15 +1,18 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
yay -S --noconfirm --needed fprintd libfprint
|
yay -S --noconfirm --needed fprintd libfprint lsusb
|
||||||
|
|
||||||
# Add fingerprint authentication as an option for sudo
|
if ! lsusb | grep -iq fingerprint; then
|
||||||
if ! grep -q pam_fprintd.so /etc/pam.d/sudo; then
|
echo "No fingerprint sensor detected."
|
||||||
sudo sed -i '1i auth sufficient pam_fprintd.so' /etc/pam.d/sudo
|
else
|
||||||
fi
|
# Add fingerprint authentication as an option for sudo
|
||||||
|
if ! grep -q pam_fprintd.so /etc/pam.d/sudo; then
|
||||||
|
sudo sed -i '1i auth sufficient pam_fprintd.so' /etc/pam.d/sudo
|
||||||
|
fi
|
||||||
|
|
||||||
# Add fingerprint authentication as an option for hyprpolkitagent
|
# Add fingerprint authentication as an option for hyprpolkitagent
|
||||||
if [ ! -f /etc/pam.d/polkit-1 ] || ! grep -q pam_fprintd.so /etc/pam.d/polkit-1; then
|
if [ ! -f /etc/pam.d/polkit-1 ] || ! grep -q pam_fprintd.so /etc/pam.d/polkit-1; then
|
||||||
sudo tee /etc/pam.d/polkit-1 >/dev/null <<'EOF'
|
sudo tee /etc/pam.d/polkit-1 >/dev/null <<'EOF'
|
||||||
auth required pam_unix.so
|
auth required pam_unix.so
|
||||||
auth optional pam_fprintd.so
|
auth optional pam_fprintd.so
|
||||||
|
|
||||||
@ -17,18 +20,19 @@ account required pam_unix.so
|
|||||||
password required pam_unix.so
|
password required pam_unix.so
|
||||||
session required pam_unix.so
|
session required pam_unix.so
|
||||||
EOF
|
EOF
|
||||||
fi
|
fi
|
||||||
|
|
||||||
systemctl --user restart hyprpolkitagent
|
systemctl --user restart hyprpolkitagent
|
||||||
|
|
||||||
# Enroll the first finger
|
# Enroll the first finger
|
||||||
echo -e "\e[32m\nLet's setup your right index finger as the first fingerprint.\nKeep moving the finger around on sensor until the process completes.\n\e[0m"
|
echo -e "\e[32m\nLet's setup your right index finger as the first fingerprint.\nKeep moving the finger around on sensor until the process completes.\n\e[0m"
|
||||||
sudo fprintd-enroll $USER
|
sudo fprintd-enroll $USER
|
||||||
|
|
||||||
echo -e "\e[32m\nNow let's verify that it's working correctly.\e[0m\n"
|
echo -e "\e[32m\nNow let's verify that it's working correctly.\e[0m\n"
|
||||||
|
|
||||||
if fprintd-verify; then
|
if fprintd-verify; then
|
||||||
echo -e "\e[32m\nPerfect! Now you can use your fingerprint on the lock screen (Super + Escape).\e[0m"
|
echo -e "\e[32m\nPerfect! Now you can use your fingerprint on the lock screen (Super + Escape).\e[0m"
|
||||||
else
|
else
|
||||||
echo -e "\e[31m\nSomething went wrong. Maybe try again?\e[0m"
|
echo -e "\e[31m\nSomething went wrong. Maybe try again?\e[0m"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
Reference in New Issue
Block a user