nix/home-manager/hosts/nixos-desktop/desktops/hyprland/default.nix

58 lines
1.6 KiB
Nix
Raw Permalink Normal View History

2024-01-07 03:40:13 +01:00
{ theme, ... }: {
wayland.windowManager.hyprland = {
2024-01-07 04:03:33 +01:00
xwayland.enable = true;
2024-01-07 03:40:13 +01:00
settings = {
monitor = [
2024-04-07 01:42:00 +02:00
"DP-4, highrr, 3840x0, 1"
2024-01-07 03:40:13 +01:00
"DP-5, highrr, 0x0, 1"
];
env = [
"LIBVA_DRIVER_NAME,nvidia"
"XDG_SESSION_TYPE,wayland"
"GBM_BACKND,nvidia-drm"
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
"WLR_NO_HARDWARE_CURSORS,1"
2024-01-07 08:08:52 +01:00
"WLR_DRM_NO_ATOMIC,1"
2024-01-07 03:40:13 +01:00
];
};
};
2023-11-25 07:17:29 +01:00
2024-01-07 03:40:13 +01:00
home.file = {
# Set the custom launcher script
".config/hypr/start.sh" = {
enable = true;
executable = true;
text = ''
#!/usr/bin/env bash
# https://wiki.hyprland.org/FAQ/#some-of-my-apps-take-a-really-long-time-to-open
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
# Set the wallpaper
swww init
# Waybar
waybar &
# Set up the idle management daemon
swayidle -w \
timeout 120 'swaylock -f && playerctl pause' \
timeout 180 'hyprctl dispatch dpms off' \
timeout 300 'systemctl suspend-then-hibernate' \
resume 'hyprctl dispatch dpms on' \
before-sleep 'swaylock -f' \
before-sleep 'playerctl pause' &
# Automatic device mounting
udiskie &
DIR=/etc/nixos/git/wallpapers/${theme}
IMG=`ls $DIR | shuf -n 1`
swww img $DIR/$IMG -t random &
# Notification listener
mako
'';
};
};
}