diff --git a/modules/home/wms/default.nix b/modules/home/wms/default.nix index 339c3386..4a950520 100644 --- a/modules/home/wms/default.nix +++ b/modules/home/wms/default.nix @@ -1,7 +1,6 @@ { ... }: { imports = [ - ./hyprland ./programs ./sway ]; diff --git a/modules/home/wms/hyprland/autostart/default.nix b/modules/home/wms/hyprland/autostart/default.nix deleted file mode 100644 index a41c551e..00000000 --- a/modules/home/wms/hyprland/autostart/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ pkgs, ... }: -{ - wayland.windowManager.hyprland.settings.exec-once = [ - "waybar" - - # Scratchpads - "foot -a btop -T Gotop btop" - "foot -a music -T Music ncmpcpp" - "foot -a sound -T Sound pulsemixer" - - # Deamons and tray - "wpaperd" - "wl-paste -t text --watch clipman store -P" - "wl-copy" - "mako" - "rot8" - "wlsunset -s 22:30 -S 07:30" - - # Foreground - "thunderbird" - "vesktop" - ]; -} diff --git a/modules/home/wms/hyprland/default.nix b/modules/home/wms/hyprland/default.nix deleted file mode 100644 index b75d04fd..00000000 --- a/modules/home/wms/hyprland/default.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ config, pkgs, ... }: -{ - imports = [ - ./autostart - ./hotkeys - ./inputs - ./outputs - ./plugins - ./rules - ./theme - ]; - - wayland.windowManager.hyprland = { - enable = true; - plugins = with pkgs.hyprlandPlugins; [ hy3 ]; - }; -} diff --git a/modules/home/wms/hyprland/hotkeys/default.nix b/modules/home/wms/hyprland/hotkeys/default.nix deleted file mode 100644 index 99262f99..00000000 --- a/modules/home/wms/hyprland/hotkeys/default.nix +++ /dev/null @@ -1,170 +0,0 @@ -{ pkgs, config, ... }: -{ - wayland.windowManager.hyprland.settings = let - # Set default modifier and variables - primeMod = "Super"; - secMod = "Alt"; - resizeAmount = "55"; - in { - bind = [ - ## Launchers - - # Browser - ''${primeMod}, F1, exec, librewolf -p Main --name MainBrowser | notify-send "Main Browser"'' - ''${primeMod}, F2, exec, librewolf -p Alt --name AltBrowser | notify-send "Alternate Browser"'' - ''${primeMod}, F3, exec, librewolf -p Misc --name MiscBrowser | notify-send "Miscellaneous Browser"'' - - # Virtual machines - ''${primeMod}, F4, exec, virt-manager | notify-send "Virtual Machines"'' - ''${primeMod}, F5, exec, looking-glass-client | notify-send "Looking Glass"'' - - # Prime + key - "${primeMod}, s, exec, rofi -show run -p Command" - "${primeMod}, c, exec, clipman pick -t rofi" - "${primeMod}, x, exec, rofipower" - "${primeMod}, b, exec, pkill -USR1 waybar" - "${primeMod}, Return, exec, foot" - - # Prime + shift + key - "${primeMod} Shift, s, exec, rofi -show drun -modi drun -drun-display-format {name} -show-icons -disable-history" - "${primeMod} Shift, t, exec, pcmanfm" - "${primeMod} Shift, e, exec, bemoji -n -P 0" - "${primeMod} Shift, b, exec, rofi-bluetooth" - "${primeMod} Shift, Return, exec, foot ranger" - - # Prime + ctrl + key - "${primeMod} Ctrl, s, exec, rofiscratch" - ''${primeMod} Ctrl, c, exec, wlpicker && notify-send "Color copied to clipboard"'' - - ## Media - - # Volume - "${secMod}, j, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-" - "${secMod}, k, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+" - "${secMod}, m, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" - - # MPRIS - "${primeMod}, Backslash, exec, playerctl -p firefox play-pause" - "${primeMod} Shift, Backslash, exec, playerctl -p mpd play-pause" - "${secMod} Shift, h, exec, playerctl -p mpd previous" - "${secMod} Shift, j, exec, playerctl -p mpd volume 0.03-" - "${secMod} Shift, k, exec, playerctl -p mpd volume 0.03+" - "${secMod} Shift, l, exec, playerctl -p mpd next" - - ## Miscellaneous - - # Notifications - "${primeMod}, n, exec, makotoggle" - "${primeMod} Shift, n, exec, makoctl restore" - "${primeMod} Ctrl, n, exec, makoctl dismiss -a" - - # Screenshots - ''${secMod}, f, exec, XDG_SCREENSHOTS_DIR="$HOME/Pictures/Screenshots" SLURP_ARGS="-w 3 -c 3823C4 -B 00000066 -b 00000099" grimblast --freeze --notify copysave area'' - "${secMod} Shift, f, exec, grimblast --notify copysave output" - "${secMod} Ctrl, f, exec, grimblast --notify copysave active" - - # Screenshots - - # Display brightness - "${primeMod}, equal, exec, brightnessctl s 5%+" - "${primeMod}, minus, exec, brightnessctl s 5%-" - "${primeMod} Shift, equal, exec, brightnessctl s 1%+" - "${primeMod} Shift, minus, exec, brightnessctl s 1%-" - - # Keyboard brightness - "${primeMod} Alt, equal, exec, brightnessctl -d spi::kbd_backlight s 20%+" - "${primeMod} Alt, minus, exec, brightnessctl -d spi::kbd_backlight s 20%-" - - ## Window manager - "${primeMod}, q, killactive," - - # Switch to workspaces - "${primeMod}, grave, workspace, name:0" - "${primeMod}, 1, workspace, name:${config.ws.w1}" - "${primeMod}, 2, workspace, name:${config.ws.w2}" - "${primeMod}, 3, workspace, name:${config.ws.w3}" - "${primeMod}, 4, workspace, name:${config.ws.w4}" - "${primeMod}, 5, workspace, name:${config.ws.w5}" - "${primeMod}, 6, workspace, name:${config.ws.w6}" - "${primeMod}, 7, workspace, name:${config.ws.w7}" - "${primeMod}, 8, workspace, name:${config.ws.w8}" - "${primeMod}, 9, workspace, name:${config.ws.w9}" - - # Switch to alternate workspaces - "${secMod}, F1, workspace, name:${config.ws.w1a}" - "${secMod}, F2, workspace, name:${config.ws.w2a}" - "${secMod}, F3, workspace, name:${config.ws.w3a}" - "${secMod}, F4, workspace, name:${config.ws.w4a}" - "${secMod}, F5, workspace, name:${config.ws.w5a}" - "${secMod}, F6, workspace, name:${config.ws.w6a}" - "${secMod}, F7, workspace, name:${config.ws.w7a}" - "${secMod}, F8, workspace, name:${config.ws.w8a}" - "${secMod}, F9, workspace, name:${config.ws.w9a}" - - # Move window to and focus workspace - "${primeMod} Shift, grave, movetoworkspace, name:${config.ws.w0}" - "${primeMod} Shift, 1, movetoworkspace, name:${config.ws.w1}" - "${primeMod} Shift, 2, movetoworkspace, name:${config.ws.w2}" - "${primeMod} Shift, 3, movetoworkspace, name:${config.ws.w3}" - "${primeMod} Shift, 4, movetoworkspace, name:${config.ws.w4}" - "${primeMod} Shift, 5, movetoworkspace, name:${config.ws.w5}" - "${primeMod} Shift, 6, movetoworkspace, name:${config.ws.w6}" - "${primeMod} Shift, 7, movetoworkspace, name:${config.ws.w7}" - "${primeMod} Shift, 8, movetoworkspace, name:${config.ws.w8}" - "${primeMod} Shift, 9, movetoworkspace, name:${config.ws.w9}" - - # Move window to and focus alternate workspace - "${secMod} Shift, F1, movetoworkspace, name:${config.ws.w1a}" - "${secMod} Shift, F2, movetoworkspace, name:${config.ws.w2a}" - "${secMod} Shift, F3, movetoworkspace, name:${config.ws.w3a}" - "${secMod} Shift, F4, movetoworkspace, name:${config.ws.w4a}" - "${secMod} Shift, F5, movetoworkspace, name:${config.ws.w5a}" - "${secMod} Shift, F6, movetoworkspace, name:${config.ws.w6a}" - "${secMod} Shift, F7, movetoworkspace, name:${config.ws.w7a}" - "${secMod} Shift, F8, movetoworkspace, name:${config.ws.w8a}" - "${secMod} Shift, F9, movetoworkspace, name:${config.ws.w9a}" - - # Change focused window - "${primeMod}, h, hy3:movefocus, l" - "${primeMod}, j, hy3:movefocus, d" - "${primeMod}, k, hy3:movefocus, u" - "${primeMod}, l, hy3:movefocus, r" - - # Move focused window - "${primeMod} Shift, h, hy3:movewindow, l" - "${primeMod} Shift, j, hy3:movewindow, d" - "${primeMod} Shift, k, hy3:movewindow, u" - "${primeMod} Shift, l, hy3:movewindow, r" - - # Resize window - "${primeMod} ${secMod}, h, resizeactive, -${resizeAmount} 0" - "${primeMod} ${secMod}, j, resizeactive, 0 -${resizeAmount}" - "${primeMod} ${secMod}, k, resizeactive, 0 ${resizeAmount}" - "${primeMod} ${secMod}, l, resizeactive, ${resizeAmount} 0" - - # Floating - "${primeMod}, Space, hy3:togglefocuslayer" - "${primeMod} Shift, Space, togglefloating" - - # Change layout - "${primeMod}, f, fullscreen" - "${primeMod}, w, hy3:changegroup, opposite" - "${primeMod}, v, hy3:makegroup, v" - "${primeMod}, e, hy3:changegroup, toggletab" - - ## Scratchpads - "${primeMod} Shift, BackSpace, togglespecialworkspace, btop" - "${primeMod} Shift, m, togglespecialworkspace, music" - "${primeMod} Shift, v, togglespecialworkspace, sound" - ]; - - # Mouse - bindm = [ - "${primeMod}, mouse:272, movewindow" - "${primeMod}, mouse:273, resizewindow" - ]; - bindn = [ - ",mouse:272, hy3:focustab, mouse" - ]; - }; -} diff --git a/modules/home/wms/hyprland/inputs/default.nix b/modules/home/wms/hyprland/inputs/default.nix deleted file mode 100644 index 4906a560..00000000 --- a/modules/home/wms/hyprland/inputs/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ config, ... }: -{ - wayland.windowManager.hyprland.settings = { - input = { - follow_mouse = 1; - accel_profile = "flat"; - scroll_factor = 0.7; - touchpad.natural_scroll = false; - }; - gestures.workspace_swipe = false; - device = { - name = "sinowealth-game-mouse"; - sensitivity = "-0.9"; - }; - }; -} diff --git a/modules/home/wms/hyprland/outputs/default.nix b/modules/home/wms/hyprland/outputs/default.nix deleted file mode 100644 index bd2cd7bb..00000000 --- a/modules/home/wms/hyprland/outputs/default.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ config, ... }: -{ - # Monitors - wayland.windowManager.hyprland.settings = { - workspace = [ - "name:${config.ws.w1}, monitor:${config.displays.d1}, default:true" - "name:${config.ws.w2}, monitor:${config.displays.d1}" - "name:${config.ws.w3}, monitor:${config.displays.d1}" - "name:${config.ws.w1a}, monitor:${config.displays.d1}" - "name:${config.ws.w2a}, monitor:${config.displays.d1}" - "name:${config.ws.w3a}, monitor:${config.displays.d1}" - - "name:${config.ws.w4}, monitor:${config.displays.d2}, default:true" - "name:${config.ws.w5}, monitor:${config.displays.d2}" - "name:${config.ws.w6}, monitor:${config.displays.d2}" - "name:${config.ws.w4a}, monitor:${config.displays.d2}" - "name:${config.ws.w5a}, monitor:${config.displays.d2}" - - "name:${config.ws.w7}, monitor:${config.displays.d3}, default:true" - "name:${config.ws.w8}, monitor:${config.displays.d3}" - "name:${config.ws.w9}, monitor:${config.displays.d3}" - "name:${config.ws.w7a}, monitor:${config.displays.d3}" - "name:${config.ws.w8a}, monitor:${config.displays.d3}" - - "name:${config.ws.w6a}, monitor:${config.displays.d4}, default:true" - "name:${config.ws.w9a}, monitor:${config.displays.d4}" - ]; - }; -} diff --git a/modules/home/wms/hyprland/plugins/default.nix b/modules/home/wms/hyprland/plugins/default.nix deleted file mode 100644 index 43f3bdc8..00000000 --- a/modules/home/wms/hyprland/plugins/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ config, ... }: -{ - wayland.windowManager.hyprland.settings.plugin = { - hy3 = { - no_gaps_when_only = 0; - node_collapse_policy = 0; - group_inset = 5; - tabs = { - text_font = config.look.fonts.main; - text_height = 10; - height = 17; - padding = 0; - rounding = 0; - "col.active" = "rgba(${config.look.colors.prime}FF)"; - "col.inactive" = "rgba(${config.look.colors.split}FF)"; - "col.urgent" = "rgba(${config.look.colors.urgent}FF)"; - "col.text.active" = "rgba(${config.look.colors.text}FF)"; - "col.text.inactive" = "rgba(${config.look.colors.text}FF)"; - }; - }; - }; -} diff --git a/modules/home/wms/hyprland/rules/default.nix b/modules/home/wms/hyprland/rules/default.nix deleted file mode 100644 index 0e26e53f..00000000 --- a/modules/home/wms/hyprland/rules/default.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ config, ... }: -{ - wayland.windowManager.hyprland.settings = { - windowrulev2 = [ - # Scratchpads - "workspace special:btop silent, class:^(btop)$" - "workspace special:music silent, class:^(music)$" - "workspace special:sound silent, class:^(sound)$" - - # Browsers - "workspace name:${config.ws.w1} silent, class:(MainBrowser)" - "workspace name:${config.ws.w1a} silent, class:(AltBrowser)" - - # Communication - "workspace name:${config.ws.w7} silent, class:(MiscBrowser)" - "workspace name:${config.ws.w7} silent, class:(vesktop)" - "workspace name:${config.ws.w8} silent, class:(org.gnome.Fractal)" - "workspace name:${config.ws.w8} silent, class:(org.telegram.desktop)" - "workspace name:${config.ws.w9} silent, class:(thunderbird)" - - # Etc - "workspace name:${config.ws.w2} silent, class:(steam)" - "workspace name:${config.ws.w2} silent, class:(heroic)" - "workspace name:${config.ws.w2a} silent, class:(looking-glass-client)" - "workspace name:${config.ws.w4a} silent, class:(com.obsproject.Studio)" - - # Borderless single window part 1 - "bordersize 0, floating:0, onworkspace:w[tv1]" - ]; - - # Borderless on single window part 2 - workspace = [ "w[tv1], gapsout:0, gapsin:0" ]; - - # Borderless screenshots - layerrule = "noanim, selection"; - }; -} diff --git a/modules/home/wms/hyprland/theme/default.nix b/modules/home/wms/hyprland/theme/default.nix deleted file mode 100644 index 82d0083f..00000000 --- a/modules/home/wms/hyprland/theme/default.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ config, ... }: -{ - wayland.windowManager.hyprland.settings = { - general = { - "col.active_border" = "rgba(${config.look.colors.prime}FF)"; - "col.inactive_border" = "rgba(${config.look.colors.split}FF)"; - gaps_in = 4; - gaps_out = 10; - border_size = config.look.border.string; - allow_tearing = true; - layout = "hy3"; - }; - - misc = { - disable_hyprland_logo = true; - font_family = config.look.fonts.main; - middle_click_paste = false; - vrr = 2; - }; - - decoration.blur.enabled = false; - - animations = { - bezier = [ - "easeOutQuint,0.23,1,0.32,1" - "easeInOutCubic,0.65,0.05,0.36,1" - "linear,0,0,1,1" - "almostLinear,0.5,0.5,0.75,1.0" - "quick,0.15,0,0.1,1" - ]; - animation = [ - "global, 1, 10, default" - "border, 1, 5.39, easeOutQuint" - "windows, 1, 4.79, easeOutQuint" - "windowsIn, 1, 4.1, easeOutQuint, popin 87%" - "windowsOut, 1, 1.49, linear, popin 87%" - "fadeIn, 1, 1.73, almostLinear" - "fadeOut, 1, 1.46, almostLinear" - "fade, 1, 3.03, quick" - "layers, 1, 3.81, easeOutQuint" - "layersIn, 1, 4, easeOutQuint, fade" - "layersOut, 1, 1.5, linear, fade" - "fadeLayersIn, 1, 1.79, almostLinear" - "fadeLayersOut, 1, 1.39, almostLinear" - "workspaces, 1, 1.94, almostLinear, fade" - "workspacesIn, 1, 1.21, almostLinear, fade" - "workspacesOut, 1, 1.94, almostLinear, fade" - ]; - }; - }; -} diff --git a/modules/home/wms/sway/autostart/default.nix b/modules/home/wms/sway/autostart/default.nix index abdd193e..aabda2c2 100644 --- a/modules/home/wms/sway/autostart/default.nix +++ b/modules/home/wms/sway/autostart/default.nix @@ -10,12 +10,13 @@ { command = "foot -a sound -T Sound pulsemixer"; } # Daemons and tray - { command = "wpaperd"; } - { command = "wl-paste -t text --watch clipman store -P"; } - { command = "wl-copy"; } + { command = "kanshi"; } { command = "mako"; } { command = "rot8"; } + { command = "wl-copy"; } + { command = "wl-paste -t text --watch clipman store -P"; } { command = "wlsunset -s 22:30 -S 07:30"; } + { command = "wpaperd"; } # Foreground { command = "thunderbird"; } diff --git a/modules/system/programs/desktops/default.nix b/modules/system/programs/desktops/default.nix index 43d5484d..6c05c96c 100644 --- a/modules/system/programs/desktops/default.nix +++ b/modules/system/programs/desktops/default.nix @@ -1,9 +1,10 @@ { config, lib, ... }: { config = lib.mkIf config.system.desktop.enable { - programs = { - hyprland.enable = true; - sway.enable = true; + programs.sway = { + enable = true; + extraOptions = [ "--unsupported-gpu" ]; + wrapperFeatures.gtk = true; }; environment.sessionVariables.WLR_RENDERER = "vulkan"; diff --git a/modules/system/services/general/portals/default.nix b/modules/system/services/general/portals/default.nix index ab79ac74..4bdecd68 100644 --- a/modules/system/services/general/portals/default.nix +++ b/modules/system/services/general/portals/default.nix @@ -1,14 +1,7 @@ { config, lib, pkgs, ... }: { - xdg.portal = lib.mkIf config.system.desktop.enable { - wlr = { - enable = lib.mkForce true; - settings.screencast = { - max_fps = 60; - chooser_type = "simple"; - chooser_cmd = "${pkgs.slurp}/bin/slurp -f %o -or -B 00000066 -b 00000099"; - }; - }; - extraPortals = with pkgs; [ xdg-desktop-portal-gnome ]; - }; + xdg.portal.extraPortals = with pkgs; lib.mkIf config.system.desktop.enable [ + xdg-desktop-portal-gnome + xdg-desktop-portal-wlr + ]; }