nixos-config/users/rouven/modules/sway/default.nix

88 lines
3.1 KiB
Nix
Raw Normal View History

2023-06-06 12:59:29 +02:00
{ config, pkgs, lib, ... }:
2023-06-05 19:57:19 +02:00
{
imports = [
# ./hyprpaper.nix
./session.nix
./waybar.nix
2023-06-15 21:01:17 +02:00
./shikane.nix
2023-06-05 19:57:19 +02:00
];
wayland.windowManager.sway = {
enable = true;
2023-06-06 12:59:29 +02:00
config = rec {
startup = [
{
2023-06-19 13:22:15 +02:00
command = "${lib.getExe pkgs.swaybg} -i ${../../../../images/wallpaper.png}";
2023-06-06 12:59:29 +02:00
}
{
2023-06-19 13:22:15 +02:00
command = lib.getExe pkgs.autotiling-rs;
}
2023-06-06 12:59:29 +02:00
];
2023-06-05 19:57:19 +02:00
modifier = "Mod4";
2023-06-19 13:22:15 +02:00
menu = lib.getExe pkgs.fuzzel;
2023-06-05 19:57:19 +02:00
terminal = "${pkgs.foot}/bin/footclient";
bars = [ ];
gaps = {
outer = 5;
inner = 12;
};
input = {
"*" = {
xkb_layout = "us";
xkb_variant = "dvorak-alt-intl";
};
2023-06-19 10:37:17 +02:00
"2:7:SynPS/2_Synaptics_TouchPad" = {
tap = "enabled";
drag = "enabled";
middle_emulation = "enabled";
};
2023-06-05 19:57:19 +02:00
};
2023-06-06 12:59:29 +02:00
keybindings =
lib.mkOptionDefault {
"Mod1+space" = "exec ${menu}";
2023-06-19 13:22:15 +02:00
"Print" = "exec ${lib.getExe pkgs.sway-contrib.grimshot} copy area";
"XF86Launch2" = "exec ${lib.getExe pkgs.sway-contrib.grimshot} save area - | ${lib.getExe pkgs.swappy} -f -";
"XF86MonBrightnessUp" = "exec ${lib.getExe pkgs.light} -A 10";
"XF86MonBrightnessDown" = "exec ${lib.getExe pkgs.light} -U 10";
2023-06-06 12:59:29 +02:00
# audio controls
"XF86AudioMute" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-mute @DEFAULT_SINK@ toggle";
"XF86AudioMicMute" = "exec ${pkgs.pulseaudio}/bin/pactl set-source-mute @DEFAULT_SOURCE@ toggle";
"XF86AudioRaiseVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ +5%";
"XF86AudioLowerVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ -5%";
"Shift+XF86AudioRaiseVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-source-volume @DEFAULT_SOURCE@ +5%";
"Shift+XF86AudioLowerVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-source-volume @DEFAULT_SOURCE@ -5%";
"XF86Favorites" = "exec ${pkgs.systemd}/bin/loginctl lock-session";
2023-06-19 13:22:15 +02:00
"XF86PowerOff" = "exec ${lib.getExe pkgs.wlogout}";
2023-06-06 12:59:29 +02:00
"XF86Messenger" = "exec ${pkgs.swaynotificationcenter}/bin/swaync-client --toggle-panel";
"Cancel" = "exec ${pkgs.swaynotificationcenter}/bin/swaync-client --hide-latest";
"Shift+Cancel" = "exec ${pkgs.swaynotificationcenter}/bin/swaync-client --cloes-all";
};
2023-06-05 19:57:19 +02:00
};
};
xdg.configFile = {
2023-06-06 12:59:29 +02:00
"swaync".source = ./swaync;
2023-06-05 19:57:19 +02:00
"fuzzel/fuzzel.ini".text = ''
[main]
icon-theme=${config.gtk.iconTheme.name}
show-actions=yes
width=80
2023-06-19 13:22:15 +02:00
terminal=${lib.getExe pkgs.foot}
2023-06-05 19:57:19 +02:00
[colors]
background=${config.colorScheme.colors.base00}ff
text=${config.colorScheme.colors.base05}ff
match=${config.colorScheme.colors.base08}ff
selection=${config.colorScheme.colors.base02}ff
selection-text=${config.colorScheme.colors.base04}ff
border=${config.colorScheme.colors.base01}ff
'';
2023-06-06 12:59:29 +02:00
"swappy/config".text = ''
[Default]
save_dir = ~/Pictures/Screenshots/
early_exit = true
'';
2023-06-05 19:57:19 +02:00
};
}