wayland: init regreet

This commit is contained in:
notohh 2024-04-17 20:29:26 -04:00
parent a73cccb894
commit abb00c97a1
Signed by: notohh
GPG key ID: BD47506D475EE86D
2 changed files with 75 additions and 16 deletions

View file

@ -1,23 +1,12 @@
{
pkgs,
config,
inputs,
...
}: let
dbus-hyprland-environment = pkgs.writeTextFile {
name = "dbus-hyprland-environment";
destination = "/bin/dbus-hyprland-environment";
executable = true;
text = ''
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=hyprland
systemctl --user stop pipewire pipewire-media-session xdg-desktop-portal xdg-desktop-portal-wlr
systemctl --user start pipewire wireplumber pipewire-media-session xdg-desktop-portal xdg-desktop-portal-hyprland
'';
};
in {
}: {
imports = [./services/greetd.nix];
environment = {
systemPackages = with pkgs; [
dbus-hyprland-environment
wayland
glib
grim

View file

@ -1,12 +1,82 @@
_: {
{
pkgs,
inputs,
lib,
...
}: let
hyprlandGreetdConf = pkgs.writeText "hyprland-greetd-conf.conf" ''
monitor = HDMI-A-1,disable
monitor = DP-1,disable
monitor = DP-2,2560x1440@144, 0x0, auto
monitor = DP-3,disable
env = LIBVA_DRIVER_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = WLR_NO_HARDWARE_CURSORS,1
exec-once = ${pkgs.dbus}/bin/dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP HYPRLAND_INSTANCE_SIGNATURE
exec-once = ${lib.getExe pkgs.greetd.regreet}; hyprctl dispatch exit
exec-once = systemctl --user restart xdg-desktop-portal xdg-desktop-portal-hyprland
windowrulev2 = fullscreen, title:^regreet$
windowrulev2 = move 0 0, title:^regreet$
$mainMod = SUPER
bind = $mainMod, Q, exec, reboot
input {
kb_layout = us
follow_mouse = 1
sensitivity = -0.5
force_no_accel = true
}
animations {
enabled = false
first_launch_animation = false
}
misc {
disable_hyprland_logo = true
disable_splash_rendering = true
}
'';
in {
services.greetd = {
enable = true;
settings = rec {
initial_session = {
command = "Hyprland";
user = "notoh";
command = "${lib.getExe inputs.hyprland.packages.${pkgs.system}.default} --config ${hyprlandGreetdConf}";
user = "greeter";
};
default_session = initial_session;
};
};
programs.regreet = {
enable = true;
settings = {
background.path = "/etc/greetd/frieren.png";
env = {
SESSION_DIRS = "/etc/greetd/environments";
};
terminal = {
vt = 1;
};
commands = {
reboot = ["systemctl" "reboot"];
poweroff = ["systemctl" "poweroff"];
};
GTK = {
application_prefer_dark_theme = true;
theme_name = "Tokyonight-Dark-BL";
icon_theme_name = "Papirus-Dark";
cursor_theme_name = "Bibata-Modern-Classic";
font_name = "Noto Sans 11";
};
};
};
}