[hyprland] feat: migrated config to home manager module

This commit is contained in:
Simon Cornet 2024-06-04 11:54:06 +02:00
parent 9055c27dfd
commit 72dcc3de40
10 changed files with 332 additions and 311 deletions

View File

@ -1,8 +1,15 @@
{ ... }: {config, pkgs, ... }:
{ {
# install hyprland
wayland.windowManager.hyprland = {
enable = true;
package = pkgs.unstable.hyprland;
xwayland.enable = true;
systemd.enable = true;
};
imports = [ imports = [
./hypridle.nix ./hypridle.nix
./hyprland.nix
./hyprland-bindings.nix ./hyprland-bindings.nix
./hyprland-environment.nix ./hyprland-environment.nix
./hyprland-execution.nix ./hyprland-execution.nix

View File

@ -1,98 +1,110 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland binds config
home.file.".config/hypr/bindings.conf".text = '' wayland.windowManager.hyprland.settings = {
binds { binds = {
workspace_back_and_forth = true workspace_back_and_forth = true;
} };
# bindings # bindings
$mainMod = SUPER "$mainMod" = "SUPER";
# primary key bindings # primary key bindings
bind = $mainMod, Return, exec, alacritty bind = [
bind = $mainMod, B, exec, blueman-manager
bind = $mainMod, C, exec, alacritty --class clipse --command clipse $PPID
bind = $mainMod, D, exec, ~/.dotfiles/apps/wofi/wofi.sh
bind = $mainMod, E, exec, nautilus --new-window
bind = $mainMod, J, togglesplit
bind = $mainMod, K, exec, alacritty --class scratchbox
bind = $mainMod, L, exec, hyprlock
bind = $mainMod, M, exit,
bind = $mainMod, N, exec, alacritty --class nmtui --command ~/.dotfiles/apps/hyprland/nmtui.sh
bind = $mainMod, P, exec, ~/.dotfiles/apps/hyprland/hypridle.sh toggle
bind = $mainMod, Q, killactive
bind = $mainMod, S, exec, ~/.dotfiles/apps/screenshot/screenshot.sh area
bind = ALT SHIFT, S, exec, ~/.dotfiles/apps/screenshot/screenshot.sh screen
bind = $mainMod, T, exec, alacritty --class nostt --command nostt
bind = $mainMod, V, togglefloating
# alternative key bindings "$mainMod, Return, exec, alacritty"
bind = ALT, F, fullscreen "$mainMod, B, exec, blueman-manager"
bind = ALT, P, pseudo "$mainMod, C, exec, alacritty --class clipse --command clipse $PPID"
bind = ALT, V, togglefloating "$mainMod, D, exec, ~/.dotfiles/apps/wofi/wofi.sh"
"$mainMod, E, exec, nautilus --new-window"
"$mainMod, J, togglesplit"
"$mainMod, K, exec, alacritty --class scratchbox"
"$mainMod, L, exec, hyprlock"
"$mainMod, M, exit,"
"$mainMod, N, exec, alacritty --class nmtui --command ~/.dotfiles/apps/hyprland/nmtui.sh"
"$mainMod, P, exec, ~/.dotfiles/apps/hyprland/hypridle.sh toggle"
"$mainMod, Q, killactive"
"$mainMod, S, exec, ~/.dotfiles/apps/screenshot/screenshot.sh area"
"ALT SHIFT, S, exec, ~/.dotfiles/apps/screenshot/screenshot.sh screen"
"$mainMod, T, exec, alacritty --class nostt --command nostt"
"$mainMod, V, togglefloating"
# manage lockscreen # alternative key bindings
bindl = ,switch:on:Lid Switch, exec, ~/.dotfiles/apps/swaylock/lock.sh "ALT, F, fullscreen"
"ALT, P, pseudo"
"ALT, V, togglefloating"
# focus bindings # focus bindings
bind = $mainMod, up, movefocus, u "$mainMod, up, movefocus, u"
bind = $mainMod, down, movefocus, d "$mainMod, down, movefocus, d"
bind = $mainMod, left, movefocus, l "$mainMod, left, movefocus, l"
bind = $mainMod, right, movefocus, r "$mainMod, right, movefocus, r"
# switch workspace bindings # switch workspace bindings
bind = $mainMod, 1, workspace, 1 "$mainMod, 1, workspace, 1"
bind = $mainMod, 2, workspace, 2 "$mainMod, 2, workspace, 2"
bind = $mainMod, 3, workspace, 3 "$mainMod, 3, workspace, 3"
bind = $mainMod, 4, workspace, 4 "$mainMod, 4, workspace, 4"
bind = $mainMod, 5, workspace, 5 "$mainMod, 5, workspace, 5"
bind = $mainMod, 6, workspace, 6 "$mainMod, 6, workspace, 6"
bind = $mainMod, 7, workspace, 7 "$mainMod, 7, workspace, 7"
bind = $mainMod, 8, workspace, 8 "$mainMod, 8, workspace, 8"
bind = $mainMod, 9, workspace, 9 "$mainMod, 9, workspace, 9"
bind = $mainMod, 0, workspace, 10 "$mainMod, 0, workspace, 10"
# move window to workspaces bindings # move window to workspaces bindings
bind = $mainMod SHIFT, 1, movetoworkspace, 1 "$mainMod SHIFT, 1, movetoworkspace, 1"
bind = $mainMod SHIFT, 2, movetoworkspace, 2 "$mainMod SHIFT, 2, movetoworkspace, 2"
bind = $mainMod SHIFT, 3, movetoworkspace, 3 "$mainMod SHIFT, 3, movetoworkspace, 3"
bind = $mainMod SHIFT, 4, movetoworkspace, 4 "$mainMod SHIFT, 4, movetoworkspace, 4"
bind = $mainMod SHIFT, 5, movetoworkspace, 5 "$mainMod SHIFT, 5, movetoworkspace, 5"
bind = $mainMod SHIFT, 6, movetoworkspace, 6 "$mainMod SHIFT, 6, movetoworkspace, 6"
bind = $mainMod SHIFT, 7, movetoworkspace, 7 "$mainMod SHIFT, 7, movetoworkspace, 7"
bind = $mainMod SHIFT, 8, movetoworkspace, 8 "$mainMod SHIFT, 8, movetoworkspace, 8"
bind = $mainMod SHIFT, 9, movetoworkspace, 9 "$mainMod SHIFT, 9, movetoworkspace, 9"
bind = $mainMod SHIFT, 0, movetoworkspace, 10 "$mainMod SHIFT, 0, movetoworkspace, 10"
# move workspaces using the mouse # move workspaces using the mouse
bind = $mainMod, mouse_up, workspace, e+1 "$mainMod, mouse_up, workspace, e+1"
bind = $mainMod, mouse_down, workspace, e-1 "$mainMod, mouse_down, workspace, e-1"
# move window using keys # move window using keys
bind = ALT SHIFT, up, movewindow, u "ALT SHIFT, up, movewindow, u"
bind = ALT SHIFT, down, movewindow, d "ALT SHIFT, down, movewindow, d"
bind = ALT SHIFT, left, movewindow, l "ALT SHIFT, left, movewindow, l"
bind = ALT SHIFT, right, movewindow, r "ALT SHIFT, right, movewindow, r"
# move windows using the mouse # resize window bindings
bindm = $mainMod, mouse:272, movewindow "$mainMod SHIFT, up, resizeactive, 0 -50"
bindm = $mainMod, mouse:273, resizewindow "$mainMod SHIFT, down, resizeactive, 0 50"
"$mainMod SHIFT, left, resizeactive, -50 0"
"$mainMod SHIFT, right, resizeactive, 50 0"
# resize window bindings # multimedia key bindings
bind = $mainMod SHIFT, up, resizeactive, 0 -50 ",XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle"
bind = $mainMod SHIFT, down, resizeactive, 0 50 ",XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"
bind = $mainMod SHIFT, left, resizeactive, -50 0 ",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
bind = $mainMod SHIFT, right, resizeactive, 50 0 ",XF86MonBrightnessDown, exec, brightnessctl set 10%-"
",XF86MonBrightnessUp, exec, brightnessctl set 10%+"
];
# multimedia key bindings # bindl section
bind = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle bindl = [
bind = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bind = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bind = ,XF86MonBrightnessDown, exec, brightnessctl set 10%-
bind = ,XF86MonBrightnessUp, exec, brightnessctl set 10%+
''; # manage lockscreen
",switch:on:Lid Switch, exec, ~/.dotfiles/apps/swaylock/lock.sh"
];
# bindm section
bindm = [
# move windows using the mouse
"$mainMod, mouse:272, movewindow"
"$mainMod, mouse:273, resizewindow"
];
};
} }

View File

@ -1,27 +1,30 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland environment variables
home.file.".config/hypr/environment.conf".text = '' wayland.windowManager.hyprland.settings = {
# firefox env = [
env = MOZ_ENABLE_WAYLAND,1
# electron # firefox
env = ELECTRON_OZONE_PLATFORM_HINT,auto "MOZ_ENABLE_WAYLAND,1"
# desktop frameworks # electron
env = CLUTTER_BACKEND,wayland "ELECTRON_OZONE_PLATFORM_HINT,auto"
env = GDK_BACKEND,wayland,x11
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_QPA_PLATFORM,wayland;xcb
env = QT_QPA_PLATFORMTHEME,qt5ct
env = QT_QPA_PLATFORMTHEME,qt6ct
env = QT_SCALE_FACTOR,1
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
''; # desktop frameworks
"CLUTTER_BACKEND,wayland"
"GDK_BACKEND,wayland,x11"
"QT_AUTO_SCREEN_SCALE_FACTOR,1"
"QT_QPA_PLATFORM,wayland;xcb"
"QT_QPA_PLATFORMTHEME,qt5ct"
"QT_QPA_PLATFORMTHEME,qt6ct"
"QT_SCALE_FACTOR,1"
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
"XDG_CURRENT_DESKTOP,Hyprland"
"XDG_SESSION_DESKTOP,Hyprland"
"XDG_SESSION_TYPE,wayland"
];
};
} }

View File

@ -1,55 +1,65 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland environment variables
home.file.".config/hypr/executions.conf".text = '' wayland.windowManager.hyprland.settings = {
# start waybar # execute always
exec = ~/.dotfiles/apps/waybar/startup.sh exec = [
# set monitor workspaces # start waybar
exec = ~/.dotfiles/apps/hyprland/monitor.sh "~/.dotfiles/apps/waybar/startup.sh"
# start tailscale # set monitor workspaces
exec-once = tailscale up "~/.dotfiles/apps/hyprland/monitor.sh"
# clear and start clipse # start blueman
exec-once = clipse -clear "blueman-tray"
exec-once = clipse -listen
# start blueman # set wallpaper
exec = blueman-tray "~/.dotfiles/apps/wallpaper/startup.sh"
# start hypridle # center apps
exec-once = hypridle "~/.dotfiles/apps/hyprland/centre_app.sh --class \"blueman-manager\" --title \"Bluetooth Devices\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"clipse\" --title \"Alacritty\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"com.gabm.satty\" --title \"satty\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"dev.deedles.Trayscale\" --title \"Trayscale\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"nmtui\" --title \"Alacritty\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"nostt\" --title \"Alacritty\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"pavucontrol\" --title \"Volume Control\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"Rofi\" --title \"rofi - Apps\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"scratchbox\" --title \"Alacritty\""
"~/.dotfiles/apps/hyprland/centre_app.sh --class \"solaar\" --title \"solaar\""
# theming ];
exec = ~/.dotfiles/apps/wallpaper/startup.sh
# set volume # execute once
exec-once = pw-volume change 80% exec-once = [
# solaar # start tailscale
exec-once = ~/.dotfiles/apps/hyprland/startup/solaar.sh "tailscale up"
# nextcloud desktop # clear and start clipse
exec-once = ~/.dotfiles/apps/hyprland/startup/nextcloud_desktop.sh "clipse -clear"
"clipse -listen"
# center apps # start hypridle
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "blueman-manager" --title "Bluetooth Devices" "hypridle"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "clipse" --title "Alacritty"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "com.gabm.satty" --title "satty"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "dev.deedles.Trayscale" --title "Trayscale"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "nmtui" --title "Alacritty"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "nostt" --title "Alacritty"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "pavucontrol" --title "Volume Control"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "Rofi" --title "rofi - Apps"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "scratchbox" --title "Alacritty"
exec = ~/.dotfiles/apps/hyprland/centre_app.sh --class "solaar" --title "solaar"
# start default apps # set volume
exec-once = [workspace 1 silent] bitwarden "pw-volume change 80%"
exec-once = [workspace 2 silent] firefox
exec-once = [workspace 3 silent] alacritty # solaar
''; "~/.dotfiles/apps/hyprland/startup/solaar.sh"
# nextcloud desktop
"~/.dotfiles/apps/hyprland/startup/nextcloud_desktop.sh"
# start default apps
"[workspace 1 silent] bitwarden"
"[workspace 2 silent] firefox"
"[workspace 3 silent] alacritty"
];
};
} }

View File

@ -1,34 +1,33 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland general config
home.file.".config/hypr/general.conf".text = '' wayland.windowManager.hyprland.settings = {
# dwindle secion # dwindle secion
dwindle { dwindle = {
pseudotile = yes pseudotile = true;
preserve_split = yes preserve_split = true;
special_scale_factor = 0.8 special_scale_factor = "0.8";
} };
# general section # general section
general { general = {
border_size = 3 border_size = "3";
col.active_border = rgba(528bffaa) rgba(043a8baa) 45deg "col.active_border" = "rgba(528bffaa) rgba(043a8baa) 45deg";
col.inactive_border = rgba(595959aa) "col.inactive_border" = "rgba(595959aa)";
gaps_in = 5 gaps_in = "5";
gaps_out = 20 gaps_out = "20";
layout = dwindle layout = "dwindle";
} };
# misc section # misc section
misc { misc = {
disable_hyprland_logo = true disable_hyprland_logo = true;
disable_splash_rendering = true disable_splash_rendering = true;
} };
};
'';
} }

View File

@ -1,63 +1,70 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland general config
home.file.".config/hypr/graphics.conf".text = '' wayland.windowManager.hyprland.settings = {
# main monitors monitor = [
monitor = eDP-1, 1920x1200@60, 760x1440, 1 # laptop (native: 2560x1600@60, preffered 1920x1200)
monitor = HDMI-A-1, 1920x1080@60, 0x0, 1 # force 1080p on hdmi output # main monitors
monitor = , preferred, 0x0, 1 # default resolution on any other screen "eDP-1, 1920x1200@60, 760x1440, 1"
"HDMI-A-1, 1920x1080@60, 0x0, 1"
", preferred, 0x0, 1"
];
# unscale xwayland # unscale xwayland
xwayland { xwayland = {
force_zero_scaling = true force_zero_scaling = true;
} };
# animation section # animation section
animations { animations = {
enabled = yes enabled = true;
bezier = fade, 0.05, 1, 0.1, 1 bezier = [
bezier = smoothOut, 0.36, 0, 0.66, 1 "fade, 0.05, 1, 0.1, 1"
bezier = smoothIn, 0.25, 1, 0.5, 1 "smoothOut, 0.36, 0, 0.66, 1"
bezier = liner, 1, 1, 1, 1 "smoothIn, 0.25, 1, 0.5, 1"
"liner, 1, 1, 1, 1"
];
animation = windows, 1, 3, smoothIn, animation = [
animation = windowsOut, 1, 3, smoothOut, "windows, 1, 3, smoothIn"
animation = windowsMove, 1, 3, default "windowsOut, 1, 3, smoothOut"
animation = border, 1, 10, default "windowsMove, 1, 3, default"
animation = borderangle, 1, 45, liner, loop "border, 1, 10, default"
animation = fade, 1, 5, smoothIn "borderangle, 1, 45, liner, loop"
animation = fadeDim, 1, 5, smoothIn "fade, 1, 5, smoothIn"
animation = workspaces, 1, 8, fade "fadeDim, 1, 5, smoothIn"
} "workspaces, 1, 8, fade"
];
};
# decoration section # decoration section
decoration { decoration = {
# blur # blur
blur { blur = {
enabled = true enabled = true;
size = 2 size = "2";
passes = 2 passes = "2";
} };
# windows # windows
rounding = 16 rounding = "16";
# shadows # shadows
drop_shadow = true drop_shadow = true;
shadow_offset = 2 2 shadow_offset = "2 2";
shadow_range = 8 shadow_range = "8";
shadow_render_power = 2 shadow_render_power = "2";
shadow_ignore_window = true shadow_ignore_window = true;
col.shadow = 0x66000000 "col.shadow" = "0x66000000";
# opacity # opacity
active_opacity = 1.0 active_opacity = "1.0";
inactive_opacity = 1.0 inactive_opacity = "1.0";
} };
};
'';
} }

View File

@ -1,29 +1,28 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland general config
home.file.".config/hypr/input.conf".text = '' wayland.windowManager.hyprland.settings = {
# gesture secion # gesture secion
gestures { gestures = {
workspace_swipe = true workspace_swipe = true;
workspace_swipe_min_speed_to_force = 80 workspace_swipe_min_speed_to_force = "80";
workspace_swipe_cancel_ratio = 0.2 workspace_swipe_cancel_ratio = "0.2";
} };
# input section # input section
input { input = {
kb_layout = us kb_layout = "us";
follow_mouse = 1 follow_mouse = "1";
sensitivity = 0 sensitivity = "0";
touchpad { touchpad = {
disable_while_typing = true disable_while_typing = true;
drag_lock = true drag_lock = true;
natural_scroll = true natural_scroll = true;
tap-and-drag = true tap-and-drag = true;
} };
} };
};
'';
} }

View File

@ -1,83 +1,90 @@
{ config, ... }: { config, ... }:
{ {
# include hyprland configs # hyprland general config
home.file.".config/hypr/window_rules.conf".text = '' wayland.windowManager.hyprland.settings = {
# window rules windowrule = [
windowrule = float, confirm|confirmreset
windowrule = float, dialog|download
windowrule = float, error|eog
windowrule = float, file-roller|file_progress
windowrule = float, Lxappearance|notification
windowrule = float, splash
windowrule = float, title:branchdialog
windowrule = float, title:Nextcloud
# alacritty # window rules
windowrulev2 = float, class:(scratchbox) "float, confirm|confirmreset"
windowrulev2 = size 1200 800, class:(scratchbox) "float, dialog|download"
windowrulev2 = move center, class:(scratchbox) "float, error|eog"
"float, file-roller|file_progress"
"float, Lxappearance|notification"
"float, splash"
"float, title:branchdialog"
"float, title:Nextcloud"
# blueman ];
windowrulev2 = float, class:(blueman-manager), title:(Bluetooth Devices)
windowrulev2 = size 1000 800, class:(blueman-manager), title:(Bluetooth Devices)
windowrulev2 = move center, class:(blueman-manager), title:(Bluetooth Devices)
# clipse windowrulev2 = [
windowrulev2 = float, class:(clipse)
windowrulev2 = size 1000 800, class:(clipse)
windowrulev2 = move center, class:(clipse)
# save as # alacritty
windowrulev2 = float, title:(Save As) "float, class:(scratchbox)"
windowrulev2 = size 1000 800, title:(Save As) "size 1200 800, class:(scratchbox)"
windowrulev2 = move center, title:(Save As) "move center, class:(scratchbox)"
# open file # blueman
windowrulev2 = float, title:(Open File) "float, class:(blueman-manager), title:(Bluetooth Devices)"
windowrulev2 = size 1000 800, title:(Open File) "size 1000 800, class:(blueman-manager), title:(Bluetooth Devices)"
windowrulev2 = move center, title:(Open File) "move center, class:(blueman-manager), title:(Bluetooth Devices)"
# add folder to workspace # clipse
windowrulev2 = float, title:(Add Folder to Workspace) "float, class:(clipse)"
windowrulev2 = size 1000 800, title:(Add Folder to Workspace) "size 1000 800, class:(clipse)"
windowrulev2 = move center, title:(Add Folder to Workspace) "move center, class:(clipse)"
# network manager tui # save as
windowrulev2 = float, class:(nmtui), title:(Alacritty) "float, title:(Save As)"
windowrulev2 = size 1180 792, class:(nmtui), title:(Alacritty) "size 1000 800, title:(Save As)"
windowrulev2 = move center, class:(nmtui), title:(Alacritty) "move center, title:(Save As)"
# nos teletekst # open file
windowrulev2 = float, class:(nostt), title:(Alacritty) "float, title:(Open File)"
windowrulev2 = size 455 660, class:(nostt), title:(Alacritty) "size 1000 800, title:(Open File)"
windowrulev2 = move center, class:(nostt), title:(Alacritty) "move center, title:(Open File)"
# satty # add folder to workspace
windowrulev2 = float, class:(com.gabm.satty), title:(satty) "float, title:(Add Folder to Workspace)"
windowrulev2 = size 1400 900, class:(com.gabm.satty), title:(satty) "size 1000 800, title:(Add Folder to Workspace)"
windowrulev2 = move center, class:(com.gabm.satty), title:(satty) "move center, title:(Add Folder to Workspace)"
# solaar # network manager tui
windowrulev2 = float, class:(solaar), title:(solaar) "float, class:(nmtui), title:(Alacritty)"
windowrulev2 = size 1000 800, class:(solaar), title:(solaar) "size 1180 792, class:(nmtui), title:(Alacritty)"
windowrulev2 = move center, class:(solaar), title:(solaar) "move center, class:(nmtui), title:(Alacritty)"
# trayscale # nos teletekst
windowrulev2 = float, class:(dev.deedles.Trayscale), title:(Trayscale) "float, class:(nostt), title:(Alacritty)"
windowrulev2 = size 1000 800, class:(dev.deedles.Trayscale), title:(Trayscale) "size 455 660, class:(nostt), title:(Alacritty)"
windowrulev2 = move center, class:(dev.deedles.Trayscale), title:(Trayscale) "move center, class:(nostt), title:(Alacritty)"
# volume control # satty
windowrulev2 = float, title:(Volume Control) "float, class:(com.gabm.satty), title:(satty)"
windowrulev2 = size 1000 800, title:(Volume Control) "size 1400 900, class:(com.gabm.satty), title:(satty)"
windowrulev2 = move center, title:(Volume Control) "move center, class:(com.gabm.satty), title:(satty)"
# wofi # solaar
windowrulev2 = forceinput, class:(wofi) "float, class:(solaar), title:(solaar)"
windowrulev2 = windowdance, class:(wofi) "size 1000 800, class:(solaar), title:(solaar)"
windowrulev2 = stayfocused, class:(wofi) "move center, class:(solaar), title:(solaar)"
''; # trayscale
"float, class:(dev.deedles.Trayscale), title:(Trayscale)"
"size 1000 800, class:(dev.deedles.Trayscale), title:(Trayscale)"
"move center, class:(dev.deedles.Trayscale), title:(Trayscale)"
# volume control
"float, title:(Volume Control)"
"size 1000 800, title:(Volume Control)"
"move center, title:(Volume Control)"
# wofi
"forceinput, class:(wofi)"
"windowdance, class:(wofi)"
"stayfocused, class:(wofi)"
];
};
} }

View File

@ -1,16 +0,0 @@
{ config, pkgs, ... }:
{
# include hyprland configs
home.file.".config/hypr/hyprland.conf".text = ''
source = ~/.config/hypr/environment.conf
source = ~/.config/hypr/executions.conf
source = ~/.config/hypr/general.conf
source = ~/.config/hypr/graphics.conf
source = ~/.config/hypr/input.conf
source = ~/.config/hypr/window_rules.conf
source = ~/.config/hypr/bindings.conf
'';
}

View File

@ -17,13 +17,6 @@
services.xserver.displayManager.gdm.enable = true; services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true; services.xserver.desktopManager.gnome.enable = true;
# hyprland
programs.hyprland = {
enable = true;
package = pkgs.unstable.hyprland;
xwayland.enable = true;
};
# environment variables for hyprland # environment variables for hyprland
environment.sessionVariables = { environment.sessionVariables = {