···1+{pkgs, ...}: {
2+ users.groups.input = {};
3+ roles.base.user.extraGroups = ["input"];
4+ hm.services.fusuma = {
5+ enable = true;
6+ extraPackages = with pkgs; [xdotool wmctrl coreutils];
7+ settings.swipe."3" = {
8+ left = {
9+ workspace = "next"; # Switch to next workspace
10+ keypress = {
11+ LEFTSHIFT.window = "next"; # Move window to next workspace
12+ LEFTMETA.command = "xdotool key --clearmodifiers super+ctrl+Left"; # Move window to left side
13+ };
14+ };
15+ right = {
16+ workspace = "prev"; # Switch to previous workspace
17+ keypress = {
18+ LEFTSHIFT.window = "prev"; # Move window to previous workspace
19+ LEFTMETA.command = "xdotool key --clearmodifiers super+ctrl+Right"; # Move window to right side
20+ };
21+ };
22+ up = {
23+ command = "xdotool key Control_L+F10"; # Workspace overview
24+ keypress.LEFTMETA.window.maximized = "toggle"; # Toggle Maximize/Unmaximize Window
25+ };
26+ down = {
27+ command = "xdotool key Control_L+F12"; # Workspace overview
28+ keypress.LEFTMETA.window = "close"; # Toggle Maximize/Unmaximize Window
29+ };
30+ };
31+ };
32+}
+7
users/leah/presets/plasma/sddm.nix
···0000000
···1+{
2+ services.xserver.displayManager.sddm = {
3+ enable = true;
4+ # TODO: use ibus if ibus is enabled, or fallback to compose, NEVER use virtual keyboard
5+ settings.General.InputMethod = "compose";
6+ };
7+}