From 83536c7078bf46bbc3e96015fe3162c5bf807f90 Mon Sep 17 00:00:00 2001 From: Julien Malka Date: Sat, 4 Feb 2023 23:55:39 +0100 Subject: [PATCH] Added sway module --- home-manager-modules/sway/default.nix | 83 +++++++++++++++++++++++++++ machines/macintosh/home-julien.nix | 75 +----------------------- 2 files changed, 84 insertions(+), 74 deletions(-) create mode 100644 home-manager-modules/sway/default.nix diff --git a/home-manager-modules/sway/default.nix b/home-manager-modules/sway/default.nix new file mode 100644 index 0000000..f56e97b --- /dev/null +++ b/home-manager-modules/sway/default.nix @@ -0,0 +1,83 @@ +{ config, pkgs, lib, ... }: +let + cfg = config.luj.programs.sway; + modifier = "Mod4"; + terminal = "alacritty"; +in +with lib; +{ + options.luj.programs.sway = { + enable = mkEnableOption "Enable SwayWM"; + }; + + config = mkIf cfg.enable { + wayland.windowManager.sway = { + enable = true; + config = { + terminal = terminal; + modifier = modifier; + input = { + "*" = { + xkb_layout = "fr"; + xkb_variant = "mac"; + }; + }; + + gaps = { + right = 2; + left = 2; + top = 2; + bottom = 2; + inner = 7; + }; + + keybindings = lib.mkOptionDefault { + "${modifier}+ampersand" = "workspace 1"; + "${modifier}+eacute" = "workspace 2"; + "${modifier}+quotedbl" = "workspace 3"; + "${modifier}+apostrophe" = "workspace 4"; + "${modifier}+parenleft" = "workspace 5"; + "${modifier}+egrave" = "workspace 6"; + "${modifier}+minus" = "workspace 7"; + "${modifier}+underscore" = "workspace 8"; + "${modifier}+ccedilla" = "workspace 9"; + "${modifier}+agrave" = "workspace 10"; + + "${modifier}+Shift+ampersand" = "move container to workspace 1"; + "${modifier}+Shift+eacute" = "move container to workspace 2"; + "${modifier}+Shift+quotedbl" = "move container to workspace 3"; + "${modifier}+Shift+apostrophe" = "move container to workspace 4"; + "${modifier}+Shift+parenleft" = "move container to workspace 5"; + "${modifier}+Shift+egrave" = "move container to workspace 6"; + "${modifier}+Shift+minus" = "move container to workspace 7"; + "${modifier}+Shift+underscore" = "move container to workspace 8"; + "${modifier}+Shift+ccedilla" = "move container to workspace 9"; + "${modifier}+Shift+agrave" = "move container to workspace 10"; + + "${modifier}+h" = "focus left"; + "${modifier}+j" = "focus down"; + "${modifier}+k" = "focus up"; + "${modifier}+l" = "focus right"; + + "${modifier}+Shift+h" = "move left"; + "${modifier}+Shift+j" = "move down"; + "${modifier}+Shift+k" = "move up"; + "${modifier}+Shift+l" = "move right"; + + + "${modifier}+q" = "kill"; + "${modifier}+space" = "exec rofi -show run"; + "${modifier}+Return" = "exec ${terminal}"; + "${modifier}+f" = "fullscreen toggle"; + + "XF86MonBrightnessUp" = "exec brightnessctl s +10"; + "XF86MonBrightnessDown" = "exec brightnessctl s 10-"; + }; + }; + }; + + services.swayidle.enable = true; + + + }; +} diff --git a/machines/macintosh/home-julien.nix b/machines/macintosh/home-julien.nix index 69112f8..ea315bf 100644 --- a/machines/macintosh/home-julien.nix +++ b/machines/macintosh/home-julien.nix @@ -1,8 +1,4 @@ { pkgs, lib, config, ... }: -let - modifier = "Mod4"; - terminal = "alacritty"; -in { sops.secrets.ssh-macintosh-pub = { @@ -29,74 +25,7 @@ in luj.programs.git.enable = true; luj.programs.gtk.enable = true; luj.programs.alacritty.enable = true; - - wayland.windowManager.sway = { - enable = true; - config = { - terminal = terminal; - modifier = modifier; - input = { - "*" = { - xkb_layout = "fr"; - xkb_variant = "mac"; - }; - }; - - gaps = { - right = 2; - left = 2; - top = 2; - bottom = 2; - inner = 7; - }; - - keybindings = lib.mkOptionDefault { - "${modifier}+ampersand" = "workspace 1"; - "${modifier}+eacute" = "workspace 2"; - "${modifier}+quotedbl" = "workspace 3"; - "${modifier}+apostrophe" = "workspace 4"; - "${modifier}+parenleft" = "workspace 5"; - "${modifier}+egrave" = "workspace 6"; - "${modifier}+minus" = "workspace 7"; - "${modifier}+underscore" = "workspace 8"; - "${modifier}+ccedilla" = "workspace 9"; - "${modifier}+agrave" = "workspace 10"; - - "${modifier}+Shift+ampersand" = "move container to workspace 1"; - "${modifier}+Shift+eacute" = "move container to workspace 2"; - "${modifier}+Shift+quotedbl" = "move container to workspace 3"; - "${modifier}+Shift+apostrophe" = "move container to workspace 4"; - "${modifier}+Shift+parenleft" = "move container to workspace 5"; - "${modifier}+Shift+egrave" = "move container to workspace 6"; - "${modifier}+Shift+minus" = "move container to workspace 7"; - "${modifier}+Shift+underscore" = "move container to workspace 8"; - "${modifier}+Shift+ccedilla" = "move container to workspace 9"; - "${modifier}+Shift+agrave" = "move container to workspace 10"; - - "${modifier}+h" = "focus left"; - "${modifier}+j" = "focus down"; - "${modifier}+k" = "focus up"; - "${modifier}+l" = "focus right"; - - "${modifier}+Shift+h" = "move left"; - "${modifier}+Shift+j" = "move down"; - "${modifier}+Shift+k" = "move up"; - "${modifier}+Shift+l" = "move right"; - - - "${modifier}+q" = "kill"; - "${modifier}+space" = "exec rofi -show run"; - "${modifier}+Return" = "exec ${terminal}"; - "${modifier}+f" = "fullscreen toggle"; - - "XF86MonBrightnessUp" = "exec brightnessctl s +10"; - "XF86MonBrightnessDown" = "exec brightnessctl s 10-"; - }; - }; - }; - - services.swayidle.enable = true; - + luj.programs.sway.enable = true; home.pointerCursor = { name = "Adwaita"; @@ -130,8 +59,6 @@ in fonts.fontconfig.enable = true; - xsession.enable = true; - home.keyboard = { layout = "fr"; };