Added sway module

This commit is contained in:
Julien Malka 2023-02-04 23:55:39 +01:00
parent b1a76a8b82
commit 83536c7078
Signed by: Luj
GPG key ID: 6FC74C847011FD83
2 changed files with 84 additions and 74 deletions

View file

@ -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;
};
}

View file

@ -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";
};