summaryrefslogtreecommitdiff
path: root/modules/desktops
diff options
context:
space:
mode:
Diffstat (limited to 'modules/desktops')
-rw-r--r--modules/desktops/default.nix95
-rw-r--r--modules/desktops/hyprland/binds.nix141
-rw-r--r--modules/desktops/hyprland/default.nix52
-rw-r--r--modules/desktops/hyprland/env.nix16
-rw-r--r--modules/desktops/hyprland/idle.nix37
-rw-r--r--modules/desktops/hyprland/plugins.nix42
-rw-r--r--modules/desktops/hyprland/settings.nix127
-rw-r--r--modules/desktops/hyprland/wallpaper.nix13
-rw-r--r--modules/desktops/ly.nix60
-rw-r--r--modules/desktops/sway/binds.nix91
-rw-r--r--modules/desktops/sway/config.nix124
-rw-r--r--modules/desktops/sway/default.nix52
-rw-r--r--modules/desktops/sway/idle.nix27
-rw-r--r--modules/desktops/wayland.nix24
14 files changed, 0 insertions, 901 deletions
diff --git a/modules/desktops/default.nix b/modules/desktops/default.nix
deleted file mode 100644
index 16406c9..0000000
--- a/modules/desktops/default.nix
+++ /dev/null
@@ -1,95 +0,0 @@
-{
- lib,
- config,
- pkgs,
- inputs,
- ...
-}: let
- inherit (lib) mkEnableOption mkIf optionals;
- cfg = config.desktops;
-in {
- imports = [
- ./hyprland
- ./sway
- ./ly.nix
- ./wayland.nix
- ];
-
- options.desktops = {
- enable = mkEnableOption "Enable baseline desktop utils and programs.";
- wayland = mkEnableOption "Enable wayland desktop components.";
- ly = mkEnableOption "Install the ly display manager.";
- hyprland = mkEnableOption "Install the Hyprland desktop.";
- sway = mkEnableOption "Install the sway desktop.";
- };
-
- config = mkIf cfg.enable {
- home-manager.users.${config.user} = {
- # desktop specific programs
- home.packages = with pkgs; [
- # gtk
- adwaita-icon-theme
- # codecs
- libaacs
- libavif
- libbluray
- libjxl
- # wayland
- cage
- grimblast
- wl-clipboard
- wl-clip-persist
- wl-mirror
- # xdg
- libnotify
- ];
- };
-
- # desktop only fonts
- fonts.packages =
- (with pkgs; [
- corefonts
- dejavu_fonts
- fira-code
- fira-code-symbols
- jetbrains-mono
- material-icons
- nerd-fonts.fira-code
- noto-fonts
- noto-fonts-cjk-sans
- noto-fonts-emoji
- twemoji-color-font
- vistafonts
- ])
- ++ (with inputs.apple-fonts.packages.${pkgs.system}; [
- sf-pro
- sf-mono
- sf-compact
- ]);
-
- fonts.fontconfig = {
- enable = true;
- defaultFonts = {
- serif = [
- "Twemoji"
- "DejaVu Serif"
- ];
- sansSerif = [
- "Twemoji"
- "DejaVu Sans"
- ];
- monospace = [
- "Fira Code"
- "FiraCode Nerd Font Mono"
- "Font Awesome 6 Pro Regular"
- "Twemoji"
- "DejaVu Sans Mono"
- ];
- emoji = [
- "Twemoji"
- "Noto Color Emoji"
- ];
- };
- };
- };
-}
diff --git a/modules/desktops/hyprland/binds.nix b/modules/desktops/hyprland/binds.nix
deleted file mode 100644
index 98d531b..0000000
--- a/modules/desktops/hyprland/binds.nix
+++ /dev/null
@@ -1,141 +0,0 @@
-{config, ...}: {
- home-manager.users.${config.user} = {
- wayland.windowManager.hyprland.settings = {
- # Keybinds
- "$mod" = "SUPER";
- bind = [
- # Launch programs
-
- "$mod, W, exec, ${config.default.browser}"
- "$mod, D, exec, ${config.default.appLauncher}"
- "$mod, L, exec, ${config.default.lockScreen}"
- "$mod, Return, exec, ${config.default.terminal}"
- ", Print, exec, grimblast copy area"
-
- # Misc
-
- "$mod SHIFT, L, exit"
- "$mod, tab, hyprexpo:expo, toggle"
-
- # Window operations
-
- "$mod SHIFT, Q, killactive"
- "$mod SHIFT, SPACE, togglefloating"
- "$mod, F, fullscreen"
- "$mod, J, togglesplit"
-
- # Move focus with mod + arrow keys
-
- "$mod, left, movefocus, l"
- "$mod, right, movefocus, r"
- "$mod, up, movefocus, u"
- "$mod, down, movefocus, d"
-
- # Move window across workspace with mod + arrow keys
-
- "$mod SHIFT, left, hy3:movewindow, l"
- "$mod SHIFT, right, hy3:movewindow, r"
- "$mod SHIFT, up, hy3:movewindow, u"
- "$mod SHIFT, down, hy3:movewindow, d"
-
- # Switch workspaces with mod + [0-9]
-
- "$mod, 1, workspace, 1"
- "$mod, 2, workspace, 2"
- "$mod, 3, workspace, 3"
- "$mod, 4, workspace, 4"
- "$mod, 5, workspace, 5"
- "$mod, 6, workspace, 6"
- "$mod, 7, workspace, 7"
- "$mod, 8, workspace, 8"
- "$mod, 9, workspace, 9"
-
- # Move active window to a workspace with mod + SHIFT + [0-9]
-
- "$mod SHIFT, 1, movetoworkspacesilent, 1"
- "$mod SHIFT, 2, movetoworkspacesilent, 2"
- "$mod SHIFT, 3, movetoworkspacesilent, 3"
- "$mod SHIFT, 4, movetoworkspacesilent, 4"
- "$mod SHIFT, 5, movetoworkspacesilent, 5"
- "$mod SHIFT, 6, movetoworkspacesilent, 6"
- "$mod SHIFT, 7, movetoworkspacesilent, 7"
- "$mod SHIFT, 8, movetoworkspacesilent, 8"
- "$mod SHIFT, 9, movetoworkspacesilent, 9"
- "$mod SHIFT, 0, movetoworkspacesilent, 10"
-
- # Move to tab
-
- "LALT, 1, hy3:focustab, index, 01"
- "LALT, 2, hy3:focustab, index, 02"
- "LALT, 3, hy3:focustab, index, 03"
- "LALT, 4, hy3:focustab, index, 04"
- "LALT, 5, hy3:focustab, index, 05"
- "LALT, 6, hy3:focustab, index, 06"
- "LALT, 7, hy3:focustab, index, 07"
- "LALT, 8, hy3:focustab, index, 08"
- "LALT, 9, hy3:focustab, index, 09"
- "LALT, 0, hy3:focustab, index, 10"
-
- "$mod SHIFT, B, hy3:makegroup, h"
- "$mod SHIFT, V, hy3:makegroup, v"
- "$mod SHIFT, C, hy3:changegroup, toggletab"
-
- # Scroll through existing workspaces with mod + scroll
-
- "$mod, mouse_down, workspace, e+1"
- "$mod, mouse_up, workspace, e-1"
- ];
-
- bindn = [
- # Focus windows with scroll wheel or middle click
-
- ", mouse:272, hy3:focustab, mouse"
- ", mouse_down, hy3:focustab, l, require_hovered"
- ", mouse_up, hy3:focustab, r, require_hovered"
- ];
-
- bindm = [
- # Move/resize windows with mod + LMB/RMB and dragging
-
- "$mod, mouse:272, movewindow"
- "$mod, mouse:273, resizewindow"
- ];
-
- binde = [
- # Audio
-
- # raise volume
- ", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
- # lower volume
- ", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
- # mute speaker
- ", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
- # mute mic
- ", XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
-
- # Media
-
- # play
- ", XF86AudioPlay, exec, playerctl play-pause"
- # next
- ", XF86AudioNext, exec, playerctl next"
- # prev
- ", XF86AudioPrev, exec, playerctl previous"
-
- # Backlight
-
- ", XF86MonBrightnessDown, exec, brightnessctl set 5%-"
- ", XF86MonBrightnessUp, exec, brightnessctl set 5%+"
- ];
-
- bindl = let
- monitor = builtins.elemAt config.monitors 0;
- cfg = "highres, auto, ${toString monitor.scale}, bitdepth, ${toString monitor.bitdepth}";
- in [
- # Laptops when docked
- ", switch:on:Lid, exec, hyprctl keyword monitor \"${monitor.name}, disable\""
- ", switch:off:Lid, exec, hyprctl keyword monitor \"${monitor.name}, ${cfg}\""
- ];
- };
- };
-}
diff --git a/modules/desktops/hyprland/default.nix b/modules/desktops/hyprland/default.nix
deleted file mode 100644
index f2b031b..0000000
--- a/modules/desktops/hyprland/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- inputs,
- config,
- system,
- lib,
- ...
-}: let
- inherit (lib) mkIf mkDefault;
- cfg = config.desktops;
-in {
- imports = [
- ./binds.nix
- ./env.nix
- ./idle.nix
- ./plugins.nix
- ./settings.nix
- ./wallpaper.nix
- ];
-
- config = mkIf cfg.hyprland {
- desktops.wayland = true;
-
- environment.systemPackages = [
- inputs.rose-pine-hyprcursor.packages.${system}.default
- ];
-
- xdg.portal = {
- extraPortals = [
- inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland
- ];
- config = {
- hyprland.common = ["gtk" "hyprland"];
- };
- };
-
- programs.hyprland = {
- enable = true;
- package = inputs.hyprland.packages.${system}.hyprland;
- portalPackage = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland;
- };
-
- home-manager.users.${config.user} = {
- wayland.windowManager.hyprland = {
- enable = true;
- package = inputs.hyprland.packages.${system}.hyprland;
-
- xwayland.enable = true;
- systemd.enable = true;
- };
- };
- };
-}
diff --git a/modules/desktops/hyprland/env.nix b/modules/desktops/hyprland/env.nix
deleted file mode 100644
index aff3f93..0000000
--- a/modules/desktops/hyprland/env.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{config, ...}: {
- home-manager.users.${config.user} = {
- wayland.windowManager.hyprland.settings = {
- env = [
- "XDG_CURRENT_DESKTOP,Hyprland"
- "XDG_SESSION_TYPE,wayland"
- "XDG_SESSION_DESKTOP,Hyprland"
- "MOZ_ENABLE_WAYLAND,1"
- "NIXOS_OZONE_WL,1"
-
- "HYPRCURSOR_THEME,rose-pine-hyprcursor"
- "HYPRCURSOR_SIZE,24"
- ];
- };
- };
-}
diff --git a/modules/desktops/hyprland/idle.nix b/modules/desktops/hyprland/idle.nix
deleted file mode 100644
index d09e665..0000000
--- a/modules/desktops/hyprland/idle.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{config, ...}: {
- home-manager.users.${config.user} = {
- services.hypridle = {
- enable = config.desktops.hyprland;
- systemdTarget = "hyprland-session.target";
-
- settings = {
- general = {
- lock_cmd = "pidof ${config.default.lockScreen} || ${config.default.lockScreen}";
- before_sleep_cmd = "loginctl lock-session";
- after_sleep_cmd = "hyprctl dispatch dpms on";
- ignore_dbus_inhibit = false;
- };
-
- listener = [
- # dim screen
- {
- timeout = 150;
- on-timeout = "brightnessctl -s set 10";
- on-resume = "brightnessctl -r";
- }
- # lock
- {
- timeout = 300;
- on-timeout = "loginctl lock-session";
- }
- # turn off screen
- {
- timeout = 350;
- on-timeout = "hyprctl dispatch dpms off";
- on-resume = "hyprctl dispatch dpms on";
- }
- ];
- };
- };
- };
-}
diff --git a/modules/desktops/hyprland/plugins.nix b/modules/desktops/hyprland/plugins.nix
deleted file mode 100644
index e4d66ef..0000000
--- a/modules/desktops/hyprland/plugins.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- inputs,
- config,
- system,
- ...
-}: {
- home-manager.users.${config.user} = {
- wayland.windowManager.hyprland = {
- plugins = [
- inputs.hyprland-plugins.packages.${system}.hyprexpo
- inputs.hy3.packages.${system}.hy3
- ];
-
- settings.plugin = {
- # hy3
- hy3 = {
- tabs = {
- height = 24;
- text_height = 9;
- text_padding = 10;
- padding = 2;
- render_text = true;
- text_font = "monospace";
- radius = config.theme.outerRadius;
- border_width = config.theme.borderWidth;
-
- "col.active" = "rgb(${config.theme.colors.base})";
- "col.active.border" = "rgb(${config.theme.colors.primary})";
- "col.active.text" = "rgb(${config.theme.colors.text})";
- "col.inactive" = "rgb(${config.theme.colors.base})";
- "col.inactive.border" = "rgb(${config.theme.colors.surface})";
- "col.inactive.text" = "rgb(${config.theme.colors.text})";
- };
-
- autotile = {
- enable = true;
- };
- };
- };
- };
- };
-}
diff --git a/modules/desktops/hyprland/settings.nix b/modules/desktops/hyprland/settings.nix
deleted file mode 100644
index da55533..0000000
--- a/modules/desktops/hyprland/settings.nix
+++ /dev/null
@@ -1,127 +0,0 @@
-{
- config,
- pkgs,
- lib,
- inputs,
- ...
-}: {
- home-manager.users.${config.user} = {
- wayland.windowManager.hyprland = {
- importantPrefixes = [
- "bezier"
- "enabled"
- "output"
- ];
-
- settings = {
- # Monitors
- monitorv2 =
- map (monitor: {
- output = monitor.name;
- mode = "highres";
- scale = toString monitor.scale;
- bitdepth = toString monitor.bitdepth;
- })
- config.monitors;
-
- # Autostart
- exec-once = config.autoRun;
-
- # General
- general = {
- gaps_in = config.theme.innerGap;
- gaps_out = config.theme.outerGap;
- layout = "hy3";
- resize_on_border = "yes";
- extend_border_grab_area = 20;
- border_size = config.theme.borderWidth;
- "col.active_border" = "rgb(${config.theme.colors.primary})";
- "col.inactive_border" = "rgb(${config.theme.colors.surface})";
- };
-
- # Gestures
- gestures = {
- workspace_swipe = true;
- workspace_swipe_fingers = 3;
- workspace_swipe_forever = true;
- workspace_swipe_cancel_ratio = 0.15;
- };
-
- # Decoration
- decoration = {
- rounding = config.theme.outerRadius;
- shadow.enabled = false;
- blur = {
- enabled = config.theme.blur;
- size = 4;
- passes = 2;
- noise = 0.008;
- contrast = 0.8916;
- brightness = 0.8;
- };
- };
-
- animations = {
- enabled = true;
-
- bezier = [
- "windowIn, 0.06, 0.71, 0.25, 1"
- "windowResize, 0.04, 0.67, 0.38, 1"
- ];
-
- animation = [
- "windowsIn, 1, 3, windowIn, slide #popin 20%"
- "windowsOut, 1, 3, windowIn, slide #popin 70%"
- "windowsMove, 1, 2.5, windowResize"
- "border, 1, 10, default"
- "borderangle, 1, 8, default"
- "fade, 1, 3, default"
- "workspaces, 1, 6, default"
- "layers, 1, 5, windowIn, slide"
- ];
- };
-
- # Input
- input = {
- kb_layout = "us";
- kb_variant = "";
- kb_model = "";
- kb_options = "gtp:alt_shift_toggle, compose:ralt";
- kb_rules = "";
- follow_mouse = 1;
- touchpad = {
- natural_scroll = "yes";
- };
- sensitivity = 0;
- };
-
- # XWayland
- xwayland = {
- force_zero_scaling = "true";
- use_nearest_neighbor = "false";
- };
-
- # Misc
- misc = {
- disable_hyprland_logo = true;
- disable_splash_rendering = true;
- key_press_enables_dpms = true;
- mouse_move_enables_dpms = true;
- enable_anr_dialog = false;
- vrr = 1;
- };
-
- # Ecosystem
- ecosystem = {
- no_update_news = true;
- no_donation_nag = true;
- };
-
- # Experimental
- experimental = {
- xx_color_management_v4 = true;
- };
- }; # end settings
- }; # end hyprland
- }; # end home-manager
-}
diff --git a/modules/desktops/hyprland/wallpaper.nix b/modules/desktops/hyprland/wallpaper.nix
deleted file mode 100644
index b877774..0000000
--- a/modules/desktops/hyprland/wallpaper.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{config, ...}: {
- home-manager.users.${config.user} = {
- services.hyprpaper = {
- enable = config.desktops.hyprland;
-
- settings = {
- preload = config.theme.wallpaper;
- wallpaper = ",${config.theme.wallpaper}";
- splash = false;
- };
- };
- };
-}
diff --git a/modules/desktops/ly.nix b/modules/desktops/ly.nix
deleted file mode 100644
index 9e9e51b..0000000
--- a/modules/desktops/ly.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- lib,
- config,
- pkgs,
- self,
- system,
- ...
-}: let
- inherit (lib) mkIf;
- cfg = config.desktops;
-in {
- config = mkIf cfg.ly {
- # display manager
- services.displayManager.ly = {
- enable = true;
- package = self.packages.${system}.ly;
-
- settings = let
- base = "0x00${config.theme.colors.base}";
- text = "0x00${config.theme.colors.text}";
- bold = "0x01${config.theme.colors.text}";
- error = "0x00${config.theme.colors.error}";
- save_file = pkgs.writeText "ly-prefs" ''
- ${config.user}
- 1
- '';
- in {
- # general
- clear_password = true;
- default_input = "password";
- xinitrc = "null";
- hide_version_string = true;
- hide_key_hints = true;
- session_log = "/dev/null";
- # state (evil)
- tty = 1;
- save = false;
- load = true;
- save_file = toString save_file;
- # background
- bg = base;
- error_bg = base;
- blank_box = true;
- # foreground
- fg = text;
- error_fg = error;
- border_fg = bold;
- };
- };
-
- # disable default login on tty 1
- systemd.services."autovt@tty1".enable = false;
- systemd.services."getty@tty1".enable = false;
-
- # fix env not being set
- systemd.services.display-manager = {
- environment.XDG_CURRENT_DESKTOP = "X-NIXOS-SYSTEMD-AWARE";
- };
- };
-}
diff --git a/modules/desktops/sway/binds.nix b/modules/desktops/sway/binds.nix
deleted file mode 100644
index 812d446..0000000
--- a/modules/desktops/sway/binds.nix
+++ /dev/null
@@ -1,91 +0,0 @@
-{config, ...}: let
- mod = "Mod4";
-in {
- home-manager.users.${config.user} = {
- wayland.windowManager.sway = {
- config = {
- keybindings = {
- # apps
- "${mod}+Return" = "exec ${config.default.terminal}";
- "${mod}+l" = "exec ${config.default.lockScreen}";
- "${mod}+d" = "exec ${config.default.appLauncher}";
- "${mod}+w" = "exec ${config.default.browser}";
-
- # exit
- "${mod}+Shift+l" = "exit";
- # kill focused window
- "${mod}+Shift+q" = "kill";
- # reload sway
- "${mod}+F5" = "reload";
-
- # audio
- "XF86AudioRaiseVolume" = "exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+";
- "XF86AudioLowerVolume" = "exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-";
- "XF86AudioMute" = "exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
- "XF86AudioMicMute" = "exec wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
-
- # media
- "XF86AudioPlay" = "exec playerctl play-pause";
- "XF86AudioNext" = "exec playerctl next";
- "XF86AudioPrev" = "exec playerctl previous";
-
- # backlight
- "XF86MonBrightnessDown" = "exec brightnessctl set 5%-";
- "XF86MonBrightnessUp" = "exec brightnessctl set 5%+";
-
- # screenshot
- "Print" = "exec grimblast copy area";
-
- # move focus
- "${mod}+Left" = "focus left";
- "${mod}+Down" = "focus down";
- "${mod}+Up" = "focus up";
- "${mod}+Right" = "focus right";
-
- # move focused window
- "${mod}+Shift+Left" = "move left";
- "${mod}+Shift+Down" = "move down";
- "${mod}+Shift+Up" = "move up";
- "${mod}+Shift+Right" = "move right";
-
- # switch workspace
- "${mod}+1" = "workspace number 1";
- "${mod}+2" = "workspace number 2";
- "${mod}+3" = "workspace number 3";
- "${mod}+4" = "workspace number 4";
- "${mod}+5" = "workspace number 5";
- "${mod}+6" = "workspace number 6";
- "${mod}+7" = "workspace number 7";
- "${mod}+8" = "workspace number 8";
- "${mod}+9" = "workspace number 9";
-
- # move focused container to workspace
- "${mod}+Shift+1" = "move container to workspace number 1";
- "${mod}+Shift+2" = "move container to workspace number 2";
- "${mod}+Shift+3" = "move container to workspace number 3";
- "${mod}+Shift+4" = "move container to workspace number 4";
- "${mod}+Shift+5" = "move container to workspace number 5";
- "${mod}+Shift+6" = "move container to workspace number 6";
- "${mod}+Shift+7" = "move container to workspace number 7";
- "${mod}+Shift+8" = "move container to workspace number 8";
- "${mod}+Shift+9" = "move container to workspace number 9";
-
- # layout
- "${mod}+Shift+d" = "layout default";
- "${mod}+Shift+b" = "layout splith";
- "${mod}+Shift+v" = "layout splitv";
- "${mod}+Shift+c" = "layout tabbed";
-
- # fullscreen
- "${mod}+f" = "fullscreen";
- # float
- "${mod}+Shift+space" = "floating toggle";
- # focus
- "${mod}+space" = "focus mode_toggle";
- # parent
- "${mod}+a" = "focus parent";
- };
- };
- };
- };
-}
diff --git a/modules/desktops/sway/config.nix b/modules/desktops/sway/config.nix
deleted file mode 100644
index c6c78ca..0000000
--- a/modules/desktops/sway/config.nix
+++ /dev/null
@@ -1,124 +0,0 @@
-{config, ...}: {
- home-manager.users.${config.user} = {
- wayland.windowManager.sway = {
- config = {
- # monitors
- output =
- (builtins.listToAttrs (map (mon: {
- name = mon.name;
- value = {
- dpms = "on";
- scale = toString mon.scale;
- render_bit_depth = toString mon.bitdepth;
- };
- })
- config.monitors))
- // {
- # wallpaper
- "*" = {
- bg = "${config.theme.wallpaper} fill";
- };
- };
-
- # inputs
- input = {
- "*" = {
- xkb_layout = "us";
- xkb_options = "compose:ralt";
- xkb_numlock = "enable";
- };
-
- "type:touchpad" = {
- tap = "enabled";
- natural_scroll = "enabled";
- middle_emulation = "enabled";
- };
- };
-
- startup =
- # autostart apps
- builtins.map (command: {
- inherit command;
- always = false;
- })
- config.autoRun;
-
- # colors
- colors = let
- base = "#${config.theme.colors.base}";
- surface = "#${config.theme.colors.surface}";
- primary = "#${config.theme.colors.primary}";
- text = "#${config.theme.colors.text}";
- white = "#${config.theme.colors.bright.white}";
- error = "#${config.theme.colors.error}";
- in rec {
- background = base;
-
- focused = {
- border = primary;
- background = base;
- text = text;
- indicator = white;
- childBorder = primary;
- };
-
- focusedInactive = {
- border = surface;
- background = base;
- text = text;
- indicator = surface;
- childBorder = surface;
- };
-
- unfocused = focusedInactive;
-
- urgent = {
- border = error;
- background = error;
- text = text;
- indicator = error;
- childBorder = error;
- };
-
- placeholder = unfocused;
- };
-
- window = {
- titlebar = false;
- border = config.theme.borderWidth;
- };
-
- floating = {
- titlebar = false;
- border = config.theme.borderWidth;
- modifier = "Mod4 normal";
- };
-
- gaps = {
- inner = config.theme.innerGap;
- outer = config.theme.outerGap;
- };
-
- modes = {};
- bars = [];
- };
-
- extraConfig = ''
- # gestures
- bindgesture swipe:right workspace prev
- bindgesture swipe:left workspace next
-
- # swayfx
- corner_radius ${toString config.theme.outerRadius}
- smart_corner_radius ${toString config.theme.outerRadius}
- blur ${
- if config.theme.blur
- then "enabled"
- else "disabled"
- }
- blur_radius 10
- blur_passes 3
- '';
- };
- };
-}
diff --git a/modules/desktops/sway/default.nix b/modules/desktops/sway/default.nix
deleted file mode 100644
index be3766d..0000000
--- a/modules/desktops/sway/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- lib,
- config,
- pkgs,
- ...
-}: let
- inherit (lib) mkIf mkDefault;
- cfg = config.desktops;
-in {
- imports = [
- ./binds.nix
- ./config.nix
- ./idle.nix
- ];
-
- config = mkIf cfg.sway {
- desktops.wayland = true;
-
- # TODO: set NIXOS_OZONE_WL env var
-
- xdg.portal = {
- config = {
- sway.common = ["gtk" "wlr"];
- };
- extraPortals = with pkgs; [
- xdg-desktop-portal-wlr
- ];
- };
-
- programs.sway = {
- enable = true;
- package = pkgs.swayfx;
- wrapperFeatures = {
- base = false;
- gtk = false;
- };
- };
-
- home-manager.users.${config.user} = {
- wayland.windowManager.sway = {
- enable = true;
- package = pkgs.swayfx;
-
- # TODO: get swayfx to work with check config
- checkConfig = false;
-
- xwayland = true;
- systemd.enable = true;
- };
- };
- };
-}
diff --git a/modules/desktops/sway/idle.nix b/modules/desktops/sway/idle.nix
deleted file mode 100644
index b3e3e06..0000000
--- a/modules/desktops/sway/idle.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{config, ...}: {
- home-manager.users.${config.user} = {
- services.swayidle = {
- enable = config.desktops.sway;
- systemdTarget = "sway-session.target";
-
- timeouts = [
- {
- timeout = 300;
- command = "${config.default.lockScreen}";
- }
- {
- timeout = 300;
- command = "swaymsg \"output * power off\"";
- resumeCommand = "swaymsg \"output * power on\"";
- }
- ];
-
- events = [
- {
- event = "before-sleep";
- command = "${config.default.lockScreen}";
- }
- ];
- };
- };
-}
diff --git a/modules/desktops/wayland.nix b/modules/desktops/wayland.nix
deleted file mode 100644
index 600651f..0000000
--- a/modules/desktops/wayland.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- lib,
- config,
- pkgs,
- ...
-}: let
- inherit (lib) mkIf;
- cfg = config.desktops;
-in {
- config = mkIf cfg.wayland {
- xdg.portal = {
- enable = true;
- xdgOpenUsePortal = true;
- extraPortals = with pkgs; [
- xdg-desktop-portal-gtk
- ];
- config = {
- default.common = ["gtk"];
- };
- };
-
- programs.xwayland.enable = true;
- };
-}