feat: more laptop config

This commit is contained in:
Patrick Großmann 2023-09-24 20:43:44 +02:00
parent b1943da1cc
commit da8591f749
Signed by: patrick
GPG key ID: 451F95EFB8BECD0F
5 changed files with 106 additions and 142 deletions

View file

@ -11,7 +11,7 @@
mouse.accelProfile = "flat"; mouse.accelProfile = "flat";
touchpad = { touchpad = {
accelProfile = "flat"; accelProfile = "flat";
accelSpeed = "0.5"; accelSpeed = "1";
naturalScrolling = true; naturalScrolling = true;
disableWhileTyping = true; disableWhileTyping = true;
}; };

View file

@ -1,22 +1,17 @@
{ {config, ...}: {
config, # import shared sway config
lib, imports = [../sway3.nix];
...
}: {
stylix.targets.i3.enable = true; stylix.targets.i3.enable = true;
xsession.windowManager.i3 = { xsession.windowManager.i3 = {
enable = true; enable = true;
config = config = {
lib.attrsets.recursiveUpdate menu = "rofi -show drun";
(import ../sway3.nix) keybindings = let
{ cfg = config.xsession.windowManager.i3.config;
menu = "rofi -show drun"; in {
keybindings = let "Menu" = "exec ${cfg.menu}";
cfg = config.xsession.windowManager.i3.config; "${cfg.modifier}+c" = "exec ${cfg.menu}";
in {
"Menu" = "exec ${cfg.menu}";
"${cfg.modifier}+c" = "exec ${cfg.menu}";
};
}; };
};
}; };
} }

View file

@ -1,3 +1,9 @@
{
config,
nixosConfig,
lib,
...
}:
# shared sway/i3 config # shared sway/i3 config
let let
modifier = "Mod4"; modifier = "Mod4";
@ -6,136 +12,86 @@ let
right = "s"; right = "s";
up = "l"; up = "l";
terminal = "kitty"; terminal = "kitty";
in { cfg = {
inherit modifier terminal; inherit modifier terminal;
focus = { focus = {
followMouse = false; followMouse = false;
mouseWarping = false; mouseWarping = false;
}; };
#bindkeysToCode = true; #bindkeysToCode = true;
window.titlebar = false; window.titlebar = false;
floating.titlebar = false; floating.titlebar = false;
workspaceLayout = "stacking"; workspaceLayout = "stacking";
workspaceOutputAssign = [ bars = [config.lib.stylix.i3.bar];
{
workspace = "1";
output = "DP-4";
}
{
workspace = "2";
output = "DP-4";
}
{
workspace = "3";
output = "DP-4";
}
{
workspace = "4";
output = "DP-4";
}
{ workspaceOutputAssign = let
workspace = "F1"; output = out: workspaces:
output = "HDMI-0"; map (x: {
} workspace = x;
{ output = out;
workspace = "F2"; })
output = "HDMI-0"; workspaces;
} in
{ {
workspace = "F3"; "desktopnix" =
output = "HDMI-0"; output "HDMI-0" ["1" "2" "3" "4"]
} ++ output "DP-4" ["j" "d" "u" "a"]
{ ++ output "DVI-D-0" ["F1" "F2" "F3" "F4"];
workspace = "F4"; "patricknix" =
output = "HDMI-0"; output "eDP-1" ["1" "2" "3" "4"]
} ++ output "DP-1" ["j" "d" "u" "a"];
}
.${nixosConfig.node.name}
or {};
{ keybindings =
workspace = "Q"; (lib.attrsets.mergeAttrsList (map (x: {
output = "DVI-D-0"; "${modifier}+${x.workspace}" = "workspace ${x.workspace}";
} "${modifier}+Shift+${x.workspace}" = "move container to workspace ${x.workspace}";
{ })
workspace = "W"; cfg.workspaceOutputAssign))
output = "DVI-D-0"; // {
} "${modifier}+t" = "exec ${terminal}";
{ "${modifier}+b" = "exec firefox";
workspace = "E"; "${modifier}+m" = "exec thunderbird";
output = "DVI-D-0"; "${modifier}+q" = "kill";
}
{
workspace = "R";
output = "DVI-D-0";
}
];
keybindings = {
"${modifier}+t" = "exec ${terminal}";
"${modifier}+b" = "exec firefox";
"${modifier}+m" = "exec thunderbird";
"${modifier}+q" = "kill";
"${modifier}+${left}" = "focus left"; "${modifier}+${left}" = "focus left";
"${modifier}+${down}" = "focus down"; "${modifier}+${down}" = "focus down";
"${modifier}+${up}" = "focus up"; "${modifier}+${up}" = "focus up";
"${modifier}+${right}" = "focus right"; "${modifier}+${right}" = "focus right";
"${modifier}+Left" = "focus left"; "${modifier}+Left" = "focus left";
"${modifier}+Down" = "focus down"; "${modifier}+Down" = "focus down";
"${modifier}+Up" = "focus up"; "${modifier}+Up" = "focus up";
"${modifier}+Right" = "focus right"; "${modifier}+Right" = "focus right";
"${modifier}+Shift+${left}" = "move left"; "${modifier}+Shift+${left}" = "move left";
"${modifier}+Shift+${down}" = "move down"; "${modifier}+Shift+${down}" = "move down";
"${modifier}+Shift+${up}" = "move up"; "${modifier}+Shift+${up}" = "move up";
"${modifier}+Shift+${right}" = "move right"; "${modifier}+Shift+${right}" = "move right";
"${modifier}+Shift+Left" = "move left"; "${modifier}+Shift+Left" = "move left";
"${modifier}+Shift+Down" = "move down"; "${modifier}+Shift+Down" = "move down";
"${modifier}+Shift+Up" = "move up"; "${modifier}+Shift+Up" = "move up";
"${modifier}+Shift+Right" = "move right"; "${modifier}+Shift+Right" = "move right";
"${modifier}+v" = "splith"; "${modifier}+v" = "splith";
"${modifier}+udiaeresis" = "splitv"; "${modifier}+udiaeresis" = "splitv";
"${modifier}+Return" = "fullscreen toggle"; "${modifier}+Return" = "fullscreen toggle";
"${modifier}+odiaeresis" = "layout stacking"; "${modifier}+odiaeresis" = "layout stacking";
"${modifier}+y" = "layout tabbed"; "${modifier}+y" = "layout tabbed";
"${modifier}+z" = "layout toggle split"; "${modifier}+z" = "layout toggle split";
"${modifier}+f" = "floating toggle"; "${modifier}+f" = "floating toggle";
"${modifier}+space" = "focus mode_toggle"; "${modifier}+space" = "focus mode_toggle";
"${modifier}+comma" = "workspace prev_on_output"; "${modifier}+comma" = "workspace prev_on_output";
"${modifier}+period" = "workspace next_on_output"; "${modifier}+period" = "workspace next_on_output";
};
"${modifier}+1" = "workspace number 1";
"${modifier}+2" = "workspace number 2";
"${modifier}+3" = "workspace number 3";
"${modifier}+4" = "workspace number 4";
"${modifier}+F1" = "workspace F1";
"${modifier}+F2" = "workspace F2";
"${modifier}+F3" = "workspace F3";
"${modifier}+F4" = "workspace F4";
"${modifier}+j" = "workspace Q";
"${modifier}+d" = "workspace W";
"${modifier}+u" = "workspace E";
"${modifier}+a" = "workspace R";
"${modifier}+Shift+1" = "move container to workspace number 1";
"${modifier}+Shift+2" = "move container to workspace number 2";
"${modifier}+Shift+3" = "move container to workspace number 3";
"${modifier}+Shift+4" = "move container to workspace number 4";
"${modifier}+Shift+F1" = "move container to workspace F1";
"${modifier}+Shift+F2" = "move container to workspace F2";
"${modifier}+Shift+F3" = "move container to workspace F3";
"${modifier}+Shift+F4" = "move container to workspace F4";
"${modifier}+Shift+J" = "move container to workspace Q";
"${modifier}+Shift+D" = "move container to workspace W";
"${modifier}+Shift+u" = "move container to workspace E";
"${modifier}+Shift+a" = "move container to workspace R";
}; };
in {
wayland.windowManager.sway.config = cfg;
xsession.windowManager.i3.config = cfg;
} }

View file

@ -2,9 +2,10 @@
config, config,
pkgs, pkgs,
nixosConfig, nixosConfig,
lib,
... ...
}: { }: {
# import shared i3 config
imports = [../sway3.nix];
home.packages = [ home.packages = [
pkgs.wdisplays pkgs.wdisplays
]; ];
@ -12,8 +13,6 @@
wayland.windowManager.sway = { wayland.windowManager.sway = {
enable = true; enable = true;
config = config =
lib.attrsets.recursiveUpdate
(import ../sway3.nix)
{ {
menu = "fuzzel"; menu = "fuzzel";
input = { input = {
@ -25,9 +24,10 @@
repeat_delay = "235"; repeat_delay = "235";
repeat_rate = "60"; repeat_rate = "60";
accel_profile = "flat"; accel_profile = "flat";
pointer_accel = "0.5"; pointer_accel = "0.3";
}; };
"type:touchpad" = { "type:touchpad" = {
pointer_accel = "0.5";
natural_scroll = "enabled"; natural_scroll = "enabled";
}; };
}; };
@ -55,6 +55,19 @@
}; };
}; };
}; };
patricknix = {
output = {
"Acer Technologies XB271HU #ASP7ytE/6A7d" = {
mode = "2560x1440@59.951Hz";
pos = "0,0";
};
"AU Optronics 0x30EB Unknown" = {
mode = "3840x2160@60.002Hz";
pos = "2560,0";
scale = "2";
};
};
};
} }
.${nixosConfig.node.name} .${nixosConfig.node.name}
or {}; or {};

View file

@ -42,7 +42,7 @@
../common ../common
../common/impermanence.nix ../common/impermanence.nix
../common/graphical/Xorg ../common/graphical/Xorg
#../common/graphical/wayland ../common/graphical/wayland
../common/programs/direnv.nix ../common/programs/direnv.nix
../common/programs/htop.nix ../common/programs/htop.nix