diff --git a/configuration.nix b/configuration.nix index 1463694..e5b4a88 100644 --- a/configuration.nix +++ b/configuration.nix @@ -137,10 +137,19 @@ }; # Hyprlock - security.pam.services.hyprlock = { }; + security.pam.services.hyprlock = { + text = '' + auth sufficient pam_fprint.so + auth include login + ''; + }; + + # Fingerprint SDDM + services.fprintd.enable = true; # Enabling the Keyring. - security.pam.services.lightdm.enableGnomeKeyring = true; + security.pam.services.login.enableGnomeKeyring = true; + security.pam.services.sddm.enableGnomeKeyring = true; services = { gnome.gnome-keyring.enable = true; gnome.gcr-ssh-agent.enable = false; diff --git a/home/default.nix b/home/default.nix index f0b2fa5..5f4d20f 100644 --- a/home/default.nix +++ b/home/default.nix @@ -42,6 +42,7 @@ }; }; }; + programs.home-manager.enable = true; nixpkgs.config = { diff --git a/home/programs/eww/src/bar.yuck b/home/programs/eww/src/bar.yuck index a9c1941..7ba3c37 100644 --- a/home/programs/eww/src/bar.yuck +++ b/home/programs/eww/src/bar.yuck @@ -58,7 +58,7 @@ :space-evenly false (button :class "${idle_inhibitor == 'start' ? 'idleOn' : 'idleOff' }" - :onclick "systemctl --user is-active idle-inhibitor.service && systemctl --user stop idle-inhibitor.service || systemctl --user start idle-inhibitor.service" + :onclick "systemctl is-active idle-inhibitor.service && systemctl stop idle-inhibitor.service || systemctl start idle-inhibitor.service" (label :text "${idle_inhibitor == 'start' ? '󰈈' : '󰛐' }")))) ;; /-- Audio --> @@ -196,9 +196,6 @@ :class "text" :text "${date}"))) - - - ;; /-- River State --> (defvar ws1 "ws-empty") @@ -253,6 +250,3 @@ (label :class "text separator" :text "⦁")) - - - diff --git a/home/programs/hyprlock.nix b/home/programs/hyprlock.nix index 0805c79..0313a0d 100644 --- a/home/programs/hyprlock.nix +++ b/home/programs/hyprlock.nix @@ -31,6 +31,17 @@ blur_size = 3; } ]; + + auth = { + fingerprint = { + enabled = true; + # Optional: Customize messages + ready_message = "(Scan fingerprint to unlock)"; + present_message = "Scanning fingerprint"; + retry_delay = 250; + }; + }; + input-field = [ { size = "200, 50"; diff --git a/home/services/hypridle.nix b/home/services/hypridle.nix index 6da65bf..d4058d0 100644 --- a/home/services/hypridle.nix +++ b/home/services/hypridle.nix @@ -8,14 +8,16 @@ lock_cmd = "/run/current-system/sw/bin/pidof hyprlock || ${pkgs.hyprlock}/bin/hyprlock"; before_sleep_cmd = "/run/current-system/sw/bin/loginctl lock-session"; }; - listener = [{ - timeout = 300; - on-timeout = "${pkgs.hyprlock}/bin/hyprlock"; - }{ - timeout = 600; - on-timeout = "${pkgs.systemd}/bin/systemctl suspend"; - }]; + listener = [ + { + timeout = 300; + on-timeout = "${pkgs.hyprlock}/bin/hyprlock"; + } + { + timeout = 600; + on-timeout = "${pkgs.systemd}/bin/systemctl suspend"; + } + ]; }; }; } - diff --git a/machines/configuration-laptop.nix b/machines/configuration-laptop.nix index 3286f6b..a883eaf 100644 --- a/machines/configuration-laptop.nix +++ b/machines/configuration-laptop.nix @@ -1,13 +1,30 @@ { pkgs, ... }: { - imports = [ ./hardware-configuration-laptop.nix ./../configuration.nix ]; + imports = [ + ./hardware-configuration-laptop.nix + ./../configuration.nix + ]; networking.hostName = "eliasLaptop"; - services.blueman.enable = true; - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; + # ── Fingerprint ─────────────────────────────────────────────────────── + services.fprintd = { + enable = true; + tod = { + enable = true; + driver = pkgs.libfprint-2-tod1-goodix; + }; + }; + + # ── Bluetooth ───────────────────────────────────────────────────────── + services.blueman.enable = true; + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + }; + + # ── Network ─────────────────────────────────────────────────────────── environment.systemPackages = with pkgs; [ networkmanager-vpnc networkmanagerapplet