前言

End-4/dots-hyprland是一個hyprland配置
目前最新版本也叫做illogical-impulseQuickshell
以下都簡稱為end-4
這篇是在講如何讓end-4 quickshell的screen locker可以跟hyprlock一樣可使用howdy而不影響到sddm

設定pam檔案

修改/etc/pam.d/hyprlock檔案,或者是在/etc/pam.d額外新增一個配置檔案
直接修改hyprlock檔案可以同時讓hyprlock使用howdy
在最上方新增howdy的驗證方法

auth sufficient pam_unix.so try_first_pass likeauth nullok
auth sufficient /lib/security/pam_howdy.so

上面那行是為了當臉部辨識失敗之後可以手動輸入密碼解鎖用 你的整份檔案應該會像這樣

# PAM configuration file for hyprlock
# the 'login' configuration file (see /etc/pam.d/login)
auth sufficient pam_unix.so try_first_pass likeauth nullok
auth sufficient /lib/security/pam_howdy.so

修改end4-dots的quickshell設定檔

end-4的quickshell預設是使用/etc/pam.d/login而不是/etc/pam.d/hyprlock作為驗證方法
所以要修改~/.config/quickshell/ii/modules/common/panels/lock/LockContext.qml檔案

  1. 在檔案末尾找到PamContext區塊(有兩個) 在id: pamid: fingerPam底下都新增一行config: "hyprlock"
  2. 註釋(或刪除)id:fingerPam底下的 configDirectory: "pam"config: "fprintd.conf"兩行

你的檔案應該會長的像是:

    ......
    PamContext {
      id: pam
      config: "hyprlock" //新增這行
      OnPamMessage:{
        ......
      }
      ......
    }
    PamContext {
      id: fingerPam
      config: "hyprlock" //新增這行
      //configDirectory: "pam"
      //config: "fprintd.conf"

      OnCompleted: result =>{
        ......
      }
      ......
    }

缺點是當更新end-4/dots時便會被覆蓋 需要更新後再次手動修改