

之前每次开机, 都需要先输入用户名, 再输入密码, 最后输入 H<Tab><Enter>
启动到桌面. 虽然也不赖吧, 但是还是能自动启动好一点. 另外就是锁屏有些不方便, 只能一直常亮或者关机, 也没有设置 systemctl suspend
的快捷键. 现在突然想起来了, 就来配置一番.
安装和配置#
安装用 sudo pacman -S hyprlock hypridle
即可.
hypridle 是用于定时锁屏的先不管. 创建配置文件 ~/.config/hypr/hyprlock.conf
, 先使用官方的示例配置 ↗, 保存后命令行输入 hyprlock
测试一下, OK.
再看配置. 除了 animations
和 general
, 其他的都是会在 monitor
上渲染出来的组件. 可以参考别人的抄抄改改, 然后配置出自己想要的. 变量定义在 hyprland wiki 上都有.
之后同样地配置 hypridle. 可以直接使用 wiki 上最下面的配置. 配置好后就行可以实现长时间无操作后自动休眠了.
按键绑定#
个人的按键绑定:
bind = $mainMod, M, exec, hyprlock
bind = $mainMod SHIFT, M, exec, hyprlock & sleep 1 && systemctl suspend
bind = $mainMod, escape, exit,
plaintext按 <super>m
进入锁屏, 按 <super><shift>m
进入睡眠. sleep 1
再睡是为了看一眼二次元老婆让 hyprlock 显示完全.
设置为登陆界面#
方法来自 reddit ↗ 上的分享. 简单来说, 有以下几步:
启动并编辑 getty@tty1
:
sudo systemctl enable getty@tty1
sudo systemctl edit getty@tty1
bash添加这一段, 记得写你的用户名:
[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --skip-login --nonewline --noissue --autologin <your_user_name> --noclear %I $TERM
plaintext这样就能在开机时自动登陆到 tty1 了. 接下来, 让在 .zshrc
判断如果是 tty1 启动 hyprland:
# If on TTY1, start Hyprland
if [[ "$(tty)" == "/dev/tty1" ]]; then
exec Hyprland &>/dev/null
fi
plaintext之后让 hyprland 启动时进入 hyprlock, 即在 hyprland.conf
中添加 exec-once = hyprlock
.
至此就大功告成了, 享受漂亮的登陆锁屏界面吧!