Use uwsm for running hyprland

This commit is contained in:
larstvei 2026-02-21 23:42:35 +01:00
parent 326148e795
commit f652d2388f
4 changed files with 29 additions and 11 deletions

View File

@ -47,6 +47,10 @@
services.darkman = { services.darkman = {
enable = true; enable = true;
settings.portal = true; settings = {
portal = true;
lat = 59.9;
lng = 10.7;
};
}; };
} }

View File

@ -61,7 +61,7 @@ in
"$mod, code:28, exec, kitty" # T (code:28) "$mod, code:28, exec, kitty" # T (code:28)
"$mod, code:26, exec, emacs" # E (code:26) "$mod, code:26, exec, emacs" # E (code:26)
"$mod, code:56, exec, zen-beta" # B (code:56) "$mod, code:56, exec, zen-beta" # B (code:56)
"$mod, code:40, exec, darkman toggle" # D (code:40) "$mod, code:40, exec, ${pkgs.darkman}/bin/darkman toggle" # D (code:40)
"$mod, code:65, exec, ${nanostatus}/bin/nanostatus-toggle" # Space (code:65) "$mod, code:65, exec, ${nanostatus}/bin/nanostatus-toggle" # Space (code:65)
"$mod SHIFT, code:58, exec, ${toggle-mirror-display}/bin/toggle-mirror-display" # M (code:58) + Shift "$mod SHIFT, code:58, exec, ${toggle-mirror-display}/bin/toggle-mirror-display" # M (code:58) + Shift

View File

@ -1,3 +1,4 @@
{ pkgs, ... }:
let let
theme = import ../theme; theme = import ../theme;
in in
@ -15,7 +16,10 @@ in
settings = { settings = {
exec-once = [ "swaylock || hyprctl dispatch exit" ]; exec-once = [
"uwsm finalize"
"swaylock || hyprctl dispatch exit"
];
misc.disable_hyprland_logo = true; misc.disable_hyprland_logo = true;
@ -61,14 +65,16 @@ in
services.darkman = { services.darkman = {
lightModeScripts.hyprland-light = '' lightModeScripts.hyprland-light = ''
hyprctl keyword misc:background_color 0x${theme.bg.light} while read -r line; do export "$line"; done < <(${pkgs.systemd}/bin/systemctl --user show-environment)
hyprctl keyword general:col.active_border 0xFF${theme.primary.light} ${pkgs.hyprland}/bin/hyprctl keyword misc:background_color 0x${theme.bg.light}
hyprctl keyword general:col.inactive_border 0xFF${theme.secondary.light} ${pkgs.hyprland}/bin/hyprctl keyword general:col.active_border 0xFF${theme.primary.light}
${pkgs.hyprland}/bin/hyprctl keyword general:col.inactive_border 0xFF${theme.secondary.light}
''; '';
darkModeScripts.hyprland-dark = '' darkModeScripts.hyprland-dark = ''
hyprctl keyword misc:background_color 0x${theme.bg.dark} while read -r line; do export "$line"; done < <(${pkgs.systemd}/bin/systemctl --user show-environment)
hyprctl keyword general:col.active_border 0xFF${theme.primary.dark} ${pkgs.hyprland}/bin/hyprctl keyword misc:background_color 0x${theme.bg.dark}
hyprctl keyword general:col.inactive_border 0xFF${theme.secondary.dark} ${pkgs.hyprland}/bin/hyprctl keyword general:col.active_border 0xFF${theme.primary.dark}
${pkgs.hyprland}/bin/hyprctl keyword general:col.inactive_border 0xFF${theme.secondary.dark}
''; '';
}; };
} }

View File

@ -4,7 +4,7 @@
enable = true; enable = true;
settings = rec { settings = rec {
initial_session = { initial_session = {
command = "hyprland > /dev/null 2>&1"; command = "${pkgs.uwsm}/bin/uwsm start hyprland-uwsm.desktop";
user = "larstvei"; user = "larstvei";
}; };
default_session = initial_session; default_session = initial_session;
@ -23,7 +23,15 @@
extraPortals = [ extraPortals = [
pkgs.xdg-desktop-portal-hyprland pkgs.xdg-desktop-portal-hyprland
pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-gtk
pkgs.darkman
]; ];
config.hyprland."org.freedesktop.impl.portal.Settings" = "darkman";
config.hyprland = {
default = [
"hyprland"
"gtk"
];
"org.freedesktop.impl.portal.Settings" = [ "darkman" ];
};
}; };
} }