cornflake/system/core/greeter.nix
2026-01-10 18:21:38 +09:00

73 lines
1.7 KiB
Nix

{ config, pkgs, ... }:
let
rosePineHyprcursor = pkgs.callPackage ../../home-manager/hyprland/rose-pine-hyprcursor.nix { };
hyprGreetConf = pkgs.writeText "hyprland-greetd.conf" ''
monitor = DP-1, 5120x2880@60, 0x0, 2
monitor = DP-2, disable
monitor = DP-3, disable
env = HYPRCURSOR_THEME,rose-pine-hyprcursor
env = HYPRCURSOR_SIZE,24
env = XCURSOR_SIZE,24
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland"
general {
border_size = 0
}
animations {
enabled = false
}
misc {
force_default_wallpaper = false
disable_hyprland_logo = true
disable_splash_rendering = true
}
exec-once = ${config.programs.regreet.package or pkgs.regreet}/bin/regreet; hyprctl dispatch exit
'';
in
{
services.greetd.enable = true;
services.greetd.settings.default_session = {
command = "${pkgs.hyprland}/bin/Hyprland --config ${hyprGreetConf}";
user = "greeter";
};
environment.systemPackages = [
rosePineHyprcursor
];
programs.regreet = {
# greetd を Hyprland で動かす
enable = true;
theme.name = "Adwaita-dark";
iconTheme.name = "Papirus-Dark";
cursorTheme.name = "Bibata-Modern-Ice";
settings = {
appearance = {
greeting_msg = "Welcome back!";
};
widget = {
clock = {
format = "%H:%M";
resolution = "100ms";
timezone = "Asia/Tokyo";
label_width = 150;
};
};
GTK = {
application_prefer_dark_theme = true;
};
background = {
path = "/usr/share/wallpaper/arknights-image-01.png";
};
};
};
}