···
1
-
{ pkgs, config, ... }:
1
+
{ pkgs, config, lib, ... }:
term = config.wayland.windowManager.sway.config.terminal;
homeDir = config.home.homeDirectory;
7
-
wayland.windowManager.sway = {
10
-
catppuccin.enable = true;
11
-
# nix-community/home-manager/issues/5311
12
-
checkConfig = false;
13
-
wrapperFeatures.base = true;
14
-
wrapperFeatures.gtk = true;
16
-
default_border pixel
17
-
focus_on_window_activation smart
9
+
enable = lib.mkEnableOption "GUI Configuration";
11
+
config = lib.mkIf cfg.enable {
12
+
home.sessionVariables = {
13
+
XDG_CURRENT_DESKTOP = "sway";
15
+
wayland.windowManager.sway = {
21
-
xdgAutostart = true;
24
-
terminal = "${pkgs.kitty}/bin/kitty";
25
-
menu = "exec ${term} --detach --class=launcher -o initial_window_height=500 -o initial_window_width=500 -o font_size=16 ${pkgs.sway-launcher-desktop}/bin/sway-launcher-desktop";
27
-
bars = [ { command = "true"; } ];
30
-
mouseWarping = true;
31
-
newWindow = "smart";
34
-
names = [ "IBM Plex Sans" ];
18
+
catppuccin.enable = true;
19
+
# nix-community/home-manager/issues/5311
20
+
checkConfig = false;
21
+
wrapperFeatures.base = true;
22
+
wrapperFeatures.gtk = true;
24
+
default_border pixel
25
+
focus_on_window_activation smart
29
+
xdgAutostart = true;
41
-
smartBorders = "off";
46
-
xkb_options = "caps:escape";
32
+
terminal = "${pkgs.kitty}/bin/kitty";
33
+
menu = "exec ${term} --detach --class=launcher -o initial_window_height=500 -o initial_window_width=500 -o font_size=16 ${pkgs.sway-launcher-desktop}/bin/sway-launcher-desktop";
35
+
bars = [ { command = "true"; } ];
38
+
mouseWarping = true;
39
+
newWindow = "smart";
49
-
accel_profile = "flat";
42
+
names = [ "IBM Plex Sans" ];
52
-
accel_profile = "adaptive";
53
-
scroll_factor = "1.5";
49
+
smartBorders = "off";
59
-
Escape = "mode default";
60
-
Return = "mode default";
61
-
Up = "resize shrink height 10 px";
62
-
Down = "resize grow height 10 px";
63
-
Left = "resize shrink width 10 px";
64
-
Right = "resize grow width 10 px";
65
-
h = "resize shrink width 10 px";
66
-
j = "resize grow height 10 px";
67
-
k = "resize shrink height 10 px";
68
-
l = "resize grow width 10 px";
54
+
xkb_options = "caps:escape";
57
+
accel_profile = "flat";
60
+
accel_profile = "adaptive";
61
+
scroll_factor = "1.5";
67
+
Escape = "mode default";
68
+
Return = "mode default";
69
+
Up = "resize shrink height 10 px";
70
+
Down = "resize grow height 10 px";
71
+
Left = "resize shrink width 10 px";
72
+
Right = "resize grow width 10 px";
73
+
h = "resize shrink width 10 px";
74
+
j = "resize grow height 10 px";
75
+
k = "resize shrink height 10 px";
76
+
l = "resize grow width 10 px";
76
-
bg = "${homeDir}/bgs/xenia-hangout-mocha.png fill";
84
+
bg = "${homeDir}/bgs/xenia-hangout-mocha.png fill";
80
-
{ command = "${pkgs.dex}/bin/dex -a"; }
81
-
{ command = "${homeDir}/scripts/unfuck-xdg-portals.fish"; }
86
-
command = "inhibit_idle fullscreen";
88
-
class = "Chromium|zoom|Firefox";
92
-
command = "floating enable, sticky enable, resize set 30 ppt 50 ppt, border pixel 4";
94
-
app_id = "^launcher$";
98
-
command = "resize set 20 ppt";
100
-
title = "Mumble PTT";
88
+
{ command = "${pkgs.dex}/bin/dex -a"; }
89
+
{ command = "${homeDir}/scripts/unfuck-xdg-portals.fish"; }
106
-
background = "$base";
109
-
background = "$base";
111
-
indicator = "$rosewater";
112
-
childBorder = "$pink";
114
-
focusedInactive = {
116
-
background = "$base";
118
-
indicator = "$rosewater";
119
-
childBorder = "$mauve";
123
-
background = "$base";
125
-
indicator = "$rosewater";
126
-
childBorder = "$mauve";
130
-
background = "$base";
132
-
indicator = "$overlay0";
133
-
childBorder = "$peach";
94
+
command = "inhibit_idle fullscreen";
96
+
class = "Chromium|zoom|Firefox";
100
+
command = "floating enable, sticky enable, resize set 30 ppt 50 ppt, border pixel 4";
102
+
app_id = "^launcher$";
106
+
command = "resize set 20 ppt";
108
+
title = "Mumble PTT";
136
-
border = "$overlay0";
139
-
indicator = "$overlay0";
140
-
childBorder = "$overlay0";
117
+
background = "$base";
119
+
indicator = "$rosewater";
120
+
childBorder = "$pink";
122
+
focusedInactive = {
124
+
background = "$base";
126
+
indicator = "$rosewater";
127
+
childBorder = "$mauve";
131
+
background = "$base";
133
+
indicator = "$rosewater";
134
+
childBorder = "$mauve";
138
+
background = "$base";
140
+
indicator = "$overlay0";
141
+
childBorder = "$peach";
144
+
border = "$overlay0";
145
+
background = "$base";
147
+
indicator = "$overlay0";
148
+
childBorder = "$overlay0";