Use satty to edit screenshots
This commit is contained in:
parent
99180536b1
commit
22daf9d874
2 changed files with 384 additions and 476 deletions
|
|
@ -1,39 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.modules.desktop.flameshot;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.modules.desktop.flameshot = {
|
|
||||||
enable = lib.my.mkBoolOpt false;
|
|
||||||
};
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
home-manager.users.${config.user.name} =
|
|
||||||
{ config, ... }:
|
|
||||||
{
|
|
||||||
services.flameshot = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.flameshot;
|
|
||||||
settings = {
|
|
||||||
General = {
|
|
||||||
showStartupLaunchMessage = false;
|
|
||||||
disabledTrayIcon = true;
|
|
||||||
showHelp = false;
|
|
||||||
showDesktopNotification = false;
|
|
||||||
filenamePattern = "%F_%T";
|
|
||||||
savePath = "${config.home.homeDirectory}/Pictures/Screenshots";
|
|
||||||
savePathFixed = true;
|
|
||||||
saveAfterCopy = true;
|
|
||||||
uiColor = "#83A598";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
home.packages = [ pkgs.grim ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -8,6 +8,7 @@
|
||||||
let
|
let
|
||||||
cfg = config.modules.desktop.wm;
|
cfg = config.modules.desktop.wm;
|
||||||
term = "${config.home-manager.users.${config.user.name}.programs.kitty.package}/bin/kitty";
|
term = "${config.home-manager.users.${config.user.name}.programs.kitty.package}/bin/kitty";
|
||||||
|
wallpaper = config.modules.desktop.wallpaper;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.modules.desktop.wm = {
|
options.modules.desktop.wm = {
|
||||||
|
|
@ -27,7 +28,6 @@ in
|
||||||
zsh.enable = true;
|
zsh.enable = true;
|
||||||
dunst.enable = true;
|
dunst.enable = true;
|
||||||
htop.enable = true;
|
htop.enable = true;
|
||||||
flameshot.enable = true;
|
|
||||||
};
|
};
|
||||||
hardware = {
|
hardware = {
|
||||||
audio.enable = true;
|
audio.enable = true;
|
||||||
|
|
@ -35,472 +35,419 @@ in
|
||||||
apps.rofi.enable = true;
|
apps.rofi.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.${config.user.name} = {
|
home-manager.users.${config.user.name} =
|
||||||
wayland.windowManager.sway = {
|
{ config, ... }:
|
||||||
enable = true;
|
{
|
||||||
systemd.enable = true;
|
wayland.windowManager.hyprland = {
|
||||||
xwayland = true;
|
enable = true;
|
||||||
config = {
|
systemd.enable = true;
|
||||||
modifier = "Mod4";
|
xwayland.enable = true;
|
||||||
input = {
|
settings = {
|
||||||
"type:keyboard" = {
|
"$mod" = "SUPER";
|
||||||
"xkb_layout" = "fr";
|
|
||||||
"xkb_variant" = "nodeadkeys";
|
|
||||||
"xkb_options" = "caps:escape";
|
|
||||||
"xkb_numlock" = "enabled";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
keybindings = {
|
env = [
|
||||||
"mod4+Return" = "exec ${term}";
|
"XCURSOR_SIZE,24"
|
||||||
"mod4+c" = "kill";
|
"WLR_NO_HARDWARE_CURSORS,1"
|
||||||
"mod4+Shift+r" = "reload";
|
|
||||||
"mod4+Shift+c" = "exit";
|
|
||||||
"mod4+Shift+a" = "exec ${term} -e pulsemixer";
|
|
||||||
"mod4+w" = "exec firefox";
|
|
||||||
"mod4+r" = "exec ${term} -e yazi";
|
|
||||||
"mod4+e" = "exec emacsclient -c";
|
|
||||||
"mod4+n" = "exec emacsclient -c --eval '(elfeed)'";
|
|
||||||
"mod4+i" = "exec ${term} -e htop";
|
|
||||||
"mod4+m" = "exec ${term} -e ncmpcpp";
|
|
||||||
"mod4+v" = "exec ${term} -e ncmpcpp -s visualizer";
|
|
||||||
"mod4+t" = "floating toggle";
|
|
||||||
"mod4+d" = "exec rofi -show drun -show-icons";
|
|
||||||
"mod4+Shift+p" = "exec rofi -show p -modi p:rofi-power-menu";
|
|
||||||
|
|
||||||
"mod4+h" = "focus left";
|
|
||||||
"mod4+j" = "focus down";
|
|
||||||
"mod4+k" = "focus up";
|
|
||||||
"mod4+l" = "focus right";
|
|
||||||
"mod4+Shift+h" = "move left";
|
|
||||||
"mod4+Shift+j" = "move down";
|
|
||||||
"mod4+Shift+k" = "move up";
|
|
||||||
"mod4+Shift+l" = "move right";
|
|
||||||
"mod4+f" = "fullscreen";
|
|
||||||
|
|
||||||
"XF86AudioRaiseVolume" = "exec pulsemixer --change-volume +1";
|
|
||||||
"XF86AudioLowerVolume" = "exec pulsemixer --change-volume -1";
|
|
||||||
"XF86AudioMute" = "exec pulsemixer --toggle-mute";
|
|
||||||
"XF86AudioPlay" = "exec mpc toggle";
|
|
||||||
"XF86AudioPause" = "exec mpc toggle";
|
|
||||||
"XF86AudioNext" = "exec mpc next";
|
|
||||||
"XF86AudioPrev" = "exec mpc prev";
|
|
||||||
"mod4+p" = "exec mpc toggle";
|
|
||||||
};
|
|
||||||
|
|
||||||
keycodebindings = {
|
|
||||||
"mod4+10" = "workspace number 1";
|
|
||||||
"mod4+11" = "workspace number 2";
|
|
||||||
"mod4+12" = "workspace number 3";
|
|
||||||
"mod4+13" = "workspace number 4";
|
|
||||||
"mod4+14" = "workspace number 5";
|
|
||||||
"mod4+15" = "workspace number 6";
|
|
||||||
"mod4+16" = "workspace number 7";
|
|
||||||
"mod4+17" = "workspace number 8";
|
|
||||||
"mod4+18" = "workspace number 9";
|
|
||||||
"mod4+19" = "workspace number 0";
|
|
||||||
|
|
||||||
"mod4+Shift+10" = "move container to workspace number 1";
|
|
||||||
"mod4+Shift+11" = "move container to workspace number 2";
|
|
||||||
"mod4+Shift+12" = "move container to workspace number 3";
|
|
||||||
"mod4+Shift+13" = "move container to workspace number 4";
|
|
||||||
"mod4+Shift+14" = "move container to workspace number 5";
|
|
||||||
"mod4+Shift+15" = "move container to workspace number 6";
|
|
||||||
"mod4+Shift+16" = "move container to workspace number 7";
|
|
||||||
"mod4+Shift+17" = "move container to workspace number 8";
|
|
||||||
"mod4+Shift+18" = "move container to workspace number 9";
|
|
||||||
"mod4+Shift+19" = "move container to workspace number 0";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
systemd.enable = true;
|
|
||||||
xwayland.enable = true;
|
|
||||||
settings = {
|
|
||||||
"$mod" = "SUPER";
|
|
||||||
|
|
||||||
env = [
|
|
||||||
"XCURSOR_SIZE,24"
|
|
||||||
"WLR_NO_HARDWARE_CURSORS,1"
|
|
||||||
];
|
|
||||||
|
|
||||||
xwayland = {
|
|
||||||
force_zero_scaling = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
general = {
|
|
||||||
layout = "dwindle";
|
|
||||||
gaps_in = 7;
|
|
||||||
gaps_out = 14;
|
|
||||||
border_size = 2;
|
|
||||||
"col.active_border" = "rgb(B28121)";
|
|
||||||
"col.inactive_border" = "rgb(504945)";
|
|
||||||
no_focus_fallback = false;
|
|
||||||
resize_on_border = false;
|
|
||||||
hover_icon_on_border = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
dwindle = {
|
|
||||||
preserve_split = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
debug = {
|
|
||||||
disable_logs = false;
|
|
||||||
enable_stdout_logs = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
input = {
|
|
||||||
kb_layout = "fr";
|
|
||||||
kb_options = "caps:escape";
|
|
||||||
numlock_by_default = "true";
|
|
||||||
touchpad = {
|
|
||||||
natural_scroll = false;
|
|
||||||
disable_while_typing = true;
|
|
||||||
tap-to-click = false;
|
|
||||||
middle_button_emulation = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gesture = [
|
|
||||||
"3, horizontal, workspace"
|
|
||||||
];
|
|
||||||
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
animation = [
|
|
||||||
"windows, 1, 2, default, popin 80%"
|
|
||||||
"windowsOut, 1, 2, default, popin 85%"
|
|
||||||
"windowsMove, 1, 2, default"
|
|
||||||
"workspaces, 1, 2, default"
|
|
||||||
"specialWorkspace, 1, 2, default"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
bind = [
|
|
||||||
"$mod, Return, exec, ${term}"
|
|
||||||
"$mod, C, killactive"
|
|
||||||
# "$mod SHIFT, Q, exit"
|
|
||||||
"$mod SHIFT, A, exec, ${term} -e pulsemixer"
|
|
||||||
"$mod, W, exec, firefox"
|
|
||||||
"$mod, R, exec, ${term} -e yazi"
|
|
||||||
"$mod, E, exec, emacsclient -c"
|
|
||||||
"$mod, N, exec, emacsclient -c --eval '(elfeed)'"
|
|
||||||
"$mod, I, exec, ${term} -e htop"
|
|
||||||
"$mod, M, exec, ${term} -e ncmpcpp"
|
|
||||||
"$mod, V, exec, ${term} -e ncmpcpp -s visualizer"
|
|
||||||
"$mod, T, togglefloating"
|
|
||||||
"$mod, D, exec, rofi -show drun -show-icons"
|
|
||||||
"$mod SHIFT, P, exec, rofi -show p -modi p:rofi-power-menu"
|
|
||||||
|
|
||||||
# Layout manipulation
|
|
||||||
"$mod SHIFT, O, layoutmsg, togglesplit"
|
|
||||||
"$mod, comma, splitratio, -0.1"
|
|
||||||
"$mod, semicolon, splitratio, +0.1"
|
|
||||||
|
|
||||||
"$mod, F, fullscreen, 0"
|
|
||||||
"$mod, X, exec, swaylock"
|
|
||||||
|
|
||||||
# Move focus
|
|
||||||
"$mod, H, movefocus, l"
|
|
||||||
"$mod, L, movefocus, r"
|
|
||||||
"$mod, K, movefocus, u"
|
|
||||||
"$mod, J, movefocus, d"
|
|
||||||
"$mod, left, movefocus, l"
|
|
||||||
"$mod, right, movefocus, r"
|
|
||||||
"$mod, up, movefocus, u"
|
|
||||||
"$mod, down, movefocus, d"
|
|
||||||
|
|
||||||
# Move window
|
|
||||||
"$mod SHIFT, H, movewindow, l"
|
|
||||||
"$mod SHIFT, L, movewindow, r"
|
|
||||||
"$mod SHIFT, K, movewindow, u"
|
|
||||||
"$mod SHIFT, J, movewindow, d"
|
|
||||||
"$mod SHIFT, left, movewindow, l"
|
|
||||||
"$mod SHIFT, right, movewindow, r"
|
|
||||||
"$mod SHIFT, up, movewindow, u"
|
|
||||||
"$mod SHIFT, down, movewindow, d"
|
|
||||||
|
|
||||||
# Switch workspaces with mainMod + [0-9]
|
|
||||||
"$mod, code:10, moveworkspacetomonitor, 1 current"
|
|
||||||
"$mod, code:10, workspace, 1"
|
|
||||||
"$mod, 1, moveworkspacetomonitor, 1 current"
|
|
||||||
"$mod, 1, workspace, 1"
|
|
||||||
"$mod, code:11, moveworkspacetomonitor, 2 current"
|
|
||||||
"$mod, code:11, workspace, 2"
|
|
||||||
"$mod, 2, moveworkspacetomonitor, 2 current"
|
|
||||||
"$mod, 2, workspace, 2"
|
|
||||||
"$mod, code:12, moveworkspacetomonitor, 3 current"
|
|
||||||
"$mod, code:12, workspace, 3"
|
|
||||||
"$mod, 3, moveworkspacetomonitor, 3 current"
|
|
||||||
"$mod, 3, workspace, 3"
|
|
||||||
"$mod, code:13, moveworkspacetomonitor, 4 current"
|
|
||||||
"$mod, code:13, workspace, 4"
|
|
||||||
"$mod, 4, moveworkspacetomonitor, 4 current"
|
|
||||||
"$mod, 4, workspace, 4"
|
|
||||||
"$mod, code:14, moveworkspacetomonitor, 5 current"
|
|
||||||
"$mod, code:14, workspace, 5"
|
|
||||||
"$mod, 5, moveworkspacetomonitor, 5 current"
|
|
||||||
"$mod, 5, workspace, 5"
|
|
||||||
"$mod, code:15, moveworkspacetomonitor, 6 current"
|
|
||||||
"$mod, code:15, workspace, 6"
|
|
||||||
"$mod, 6, moveworkspacetomonitor, 6 current"
|
|
||||||
"$mod, 6, workspace, 6"
|
|
||||||
"$mod, code:16, moveworkspacetomonitor, 7 current"
|
|
||||||
"$mod, code:16, workspace, 7"
|
|
||||||
"$mod, 7, moveworkspacetomonitor, 7 current"
|
|
||||||
"$mod, 7, workspace, 7"
|
|
||||||
"$mod, code:17, moveworkspacetomonitor, 8 current"
|
|
||||||
"$mod, code:17, workspace, 8"
|
|
||||||
"$mod, 8, moveworkspacetomonitor, 8 current"
|
|
||||||
"$mod, 8, workspace, 8"
|
|
||||||
"$mod, code:18, moveworkspacetomonitor, 9 current"
|
|
||||||
"$mod, code:18, workspace, 9"
|
|
||||||
"$mod, 9, moveworkspacetomonitor, 9 current"
|
|
||||||
"$mod, 9, workspace, 9"
|
|
||||||
"$mod, code:19, moveworkspacetomonitor, 10 current"
|
|
||||||
"$mod, code:19, workspace, 10"
|
|
||||||
"$mod, 0, moveworkspacetomonitor, 10 current"
|
|
||||||
"$mod, 0, workspace, 10"
|
|
||||||
|
|
||||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
|
||||||
"$mod SHIFT, code:10, movetoworkspace, 1"
|
|
||||||
"$mod SHIFT, 1, movetoworkspace, 1"
|
|
||||||
"$mod SHIFT, code:11, movetoworkspace, 2"
|
|
||||||
"$mod SHIFT, 2, movetoworkspace, 2"
|
|
||||||
"$mod SHIFT, code:12, movetoworkspace, 3"
|
|
||||||
"$mod SHIFT, 3, movetoworkspace, 3"
|
|
||||||
"$mod SHIFT, code:13, movetoworkspace, 4"
|
|
||||||
"$mod SHIFT, 4, movetoworkspace, 4"
|
|
||||||
"$mod SHIFT, code:14, movetoworkspace, 5"
|
|
||||||
"$mod SHIFT, 5, movetoworkspace, 5"
|
|
||||||
"$mod SHIFT, code:15, movetoworkspace, 6"
|
|
||||||
"$mod SHIFT, 6, movetoworkspace, 6"
|
|
||||||
"$mod SHIFT, code:16, movetoworkspace, 7"
|
|
||||||
"$mod SHIFT, 7, movetoworkspace, 7"
|
|
||||||
"$mod SHIFT, code:17, movetoworkspace, 8"
|
|
||||||
"$mod SHIFT, 8, movetoworkspace, 8"
|
|
||||||
"$mod SHIFT, code:18, movetoworkspace, 9"
|
|
||||||
"$mod SHIFT, 9, movetoworkspace, 9"
|
|
||||||
"$mod SHIFT, code:19, movetoworkspace, 10"
|
|
||||||
"$mod SHIFT, 0, movetoworkspace, 10"
|
|
||||||
|
|
||||||
# Scroll through existing workspaces with mainMod + scroll
|
|
||||||
"$mod, mouse_down, workspace, e-1"
|
|
||||||
"$mod, mouse_up, workspace, e+1"
|
|
||||||
|
|
||||||
# Media controls
|
|
||||||
", XF86AudioRaiseVolume, exec, pulsemixer --change-volume +1"
|
|
||||||
", XF86AudioLowerVolume, exec, pulsemixer --change-volume -1"
|
|
||||||
# ", XF86AudioMicMute, exec, pulsemixer --toggle-mute"
|
|
||||||
", XF86AudioMute, exec, pulsemixer --toggle-mute"
|
|
||||||
", XF86AudioPlay, exec, mpc toggle"
|
|
||||||
", XF86AudioPause, exec, mpc toggle"
|
|
||||||
", XF86AudioNext, exec, mpc next"
|
|
||||||
", XF86AudioPrev, exec, mpc prev"
|
|
||||||
"$mod, P, exec, mpc toggle"
|
|
||||||
|
|
||||||
", XF86MonBrightnessDown, exec, light -U 5"
|
|
||||||
", XF86MonBrightnessUp, exec, light -A 5"
|
|
||||||
|
|
||||||
# ", Print, exec, flameshot full"
|
|
||||||
", Print, exec, env QT_SCREEN_SCALE_FACTORS=0.66666666 flameshot gui"
|
|
||||||
];
|
|
||||||
|
|
||||||
bindm = [
|
|
||||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
|
||||||
"$mod, mouse:272, movewindow"
|
|
||||||
"$mod, mouse:273, resizewindow"
|
|
||||||
];
|
|
||||||
|
|
||||||
exec-once = [
|
|
||||||
"${pkgs.swaybg}/bin/swaybg --image ${config.modules.desktop.wallpaper} --mode fill"
|
|
||||||
"keepassxc"
|
|
||||||
];
|
|
||||||
|
|
||||||
misc = {
|
|
||||||
force_default_wallpaper = 0;
|
|
||||||
disable_hyprland_logo = true;
|
|
||||||
disable_splash_rendering = true;
|
|
||||||
animate_manual_resizes = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
systemd.enable = true;
|
|
||||||
settings = {
|
|
||||||
mainBar = {
|
|
||||||
layer = "top";
|
|
||||||
position = "bottom";
|
|
||||||
height = 25;
|
|
||||||
spacing = 2;
|
|
||||||
reload-style-on-change = true;
|
|
||||||
modules-left = [
|
|
||||||
"cpu"
|
|
||||||
"memory"
|
|
||||||
"disk"
|
|
||||||
"hyprland/window"
|
|
||||||
];
|
|
||||||
modules-center = [ "hyprland/workspaces" ];
|
|
||||||
modules-right = [
|
|
||||||
"mpd"
|
|
||||||
"battery"
|
|
||||||
"clock"
|
|
||||||
"tray"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
tray = {
|
xwayland = {
|
||||||
icon-size = 14;
|
force_zero_scaling = true;
|
||||||
spacing = 5;
|
|
||||||
show-passive-items = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
cpu = {
|
general = {
|
||||||
interval = 1;
|
layout = "dwindle";
|
||||||
format = " {usage}%";
|
gaps_in = 7;
|
||||||
tooltip = false;
|
gaps_out = 14;
|
||||||
|
border_size = 2;
|
||||||
|
"col.active_border" = "rgb(B28121)";
|
||||||
|
"col.inactive_border" = "rgb(504945)";
|
||||||
|
no_focus_fallback = false;
|
||||||
|
resize_on_border = false;
|
||||||
|
hover_icon_on_border = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
memory = {
|
dwindle = {
|
||||||
interval = 1;
|
preserve_split = true;
|
||||||
format = " {percentage}%";
|
|
||||||
tooltip = false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
disk = {
|
debug = {
|
||||||
interval = 60;
|
disable_logs = false;
|
||||||
format = " {free}";
|
enable_stdout_logs = true;
|
||||||
tooltip = false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
clock = {
|
input = {
|
||||||
format = " {:%A, %d %h %H:%M}";
|
kb_layout = "fr";
|
||||||
format-alt = " {:%d/%m/%Y %H:%M}";
|
kb_options = "caps:escape";
|
||||||
tooltip = false;
|
numlock_by_default = "true";
|
||||||
|
touchpad = {
|
||||||
|
natural_scroll = false;
|
||||||
|
disable_while_typing = true;
|
||||||
|
tap-to-click = false;
|
||||||
|
middle_button_emulation = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
gesture = [
|
||||||
|
"3, horizontal, workspace"
|
||||||
|
];
|
||||||
|
|
||||||
|
animations = {
|
||||||
|
enabled = true;
|
||||||
|
animation = [
|
||||||
|
"windows, 1, 2, default, popin 80%"
|
||||||
|
"windowsOut, 1, 2, default, popin 85%"
|
||||||
|
"windowsMove, 1, 2, default"
|
||||||
|
"workspaces, 1, 2, default"
|
||||||
|
"specialWorkspace, 1, 2, default"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
bind = [
|
||||||
|
"$mod, Return, exec, ${term}"
|
||||||
|
"$mod, C, killactive"
|
||||||
|
# "$mod SHIFT, Q, exit"
|
||||||
|
"$mod SHIFT, A, exec, ${term} -e pulsemixer"
|
||||||
|
"$mod, W, exec, firefox"
|
||||||
|
"$mod, R, exec, ${term} -e yazi"
|
||||||
|
"$mod, E, exec, emacsclient -c"
|
||||||
|
"$mod, N, exec, emacsclient -c --eval '(elfeed)'"
|
||||||
|
"$mod, I, exec, ${term} -e htop"
|
||||||
|
"$mod, M, exec, ${term} -e ncmpcpp"
|
||||||
|
"$mod, V, exec, ${term} -e ncmpcpp -s visualizer"
|
||||||
|
"$mod, T, togglefloating"
|
||||||
|
"$mod, D, exec, rofi -show drun -show-icons"
|
||||||
|
"$mod SHIFT, P, exec, rofi -show p -modi p:rofi-power-menu"
|
||||||
|
|
||||||
|
# Layout manipulation
|
||||||
|
"$mod SHIFT, O, layoutmsg, togglesplit"
|
||||||
|
"$mod, comma, splitratio, -0.1"
|
||||||
|
"$mod, semicolon, splitratio, +0.1"
|
||||||
|
|
||||||
|
"$mod, F, fullscreen, 0"
|
||||||
|
"$mod, X, exec, swaylock"
|
||||||
|
|
||||||
|
# Move focus
|
||||||
|
"$mod, H, movefocus, l"
|
||||||
|
"$mod, L, movefocus, r"
|
||||||
|
"$mod, K, movefocus, u"
|
||||||
|
"$mod, J, movefocus, d"
|
||||||
|
"$mod, left, movefocus, l"
|
||||||
|
"$mod, right, movefocus, r"
|
||||||
|
"$mod, up, movefocus, u"
|
||||||
|
"$mod, down, movefocus, d"
|
||||||
|
|
||||||
|
# Move window
|
||||||
|
"$mod SHIFT, H, movewindow, l"
|
||||||
|
"$mod SHIFT, L, movewindow, r"
|
||||||
|
"$mod SHIFT, K, movewindow, u"
|
||||||
|
"$mod SHIFT, J, movewindow, d"
|
||||||
|
"$mod SHIFT, left, movewindow, l"
|
||||||
|
"$mod SHIFT, right, movewindow, r"
|
||||||
|
"$mod SHIFT, up, movewindow, u"
|
||||||
|
"$mod SHIFT, down, movewindow, d"
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
"$mod, code:10, moveworkspacetomonitor, 1 current"
|
||||||
|
"$mod, code:10, workspace, 1"
|
||||||
|
"$mod, 1, moveworkspacetomonitor, 1 current"
|
||||||
|
"$mod, 1, workspace, 1"
|
||||||
|
"$mod, code:11, moveworkspacetomonitor, 2 current"
|
||||||
|
"$mod, code:11, workspace, 2"
|
||||||
|
"$mod, 2, moveworkspacetomonitor, 2 current"
|
||||||
|
"$mod, 2, workspace, 2"
|
||||||
|
"$mod, code:12, moveworkspacetomonitor, 3 current"
|
||||||
|
"$mod, code:12, workspace, 3"
|
||||||
|
"$mod, 3, moveworkspacetomonitor, 3 current"
|
||||||
|
"$mod, 3, workspace, 3"
|
||||||
|
"$mod, code:13, moveworkspacetomonitor, 4 current"
|
||||||
|
"$mod, code:13, workspace, 4"
|
||||||
|
"$mod, 4, moveworkspacetomonitor, 4 current"
|
||||||
|
"$mod, 4, workspace, 4"
|
||||||
|
"$mod, code:14, moveworkspacetomonitor, 5 current"
|
||||||
|
"$mod, code:14, workspace, 5"
|
||||||
|
"$mod, 5, moveworkspacetomonitor, 5 current"
|
||||||
|
"$mod, 5, workspace, 5"
|
||||||
|
"$mod, code:15, moveworkspacetomonitor, 6 current"
|
||||||
|
"$mod, code:15, workspace, 6"
|
||||||
|
"$mod, 6, moveworkspacetomonitor, 6 current"
|
||||||
|
"$mod, 6, workspace, 6"
|
||||||
|
"$mod, code:16, moveworkspacetomonitor, 7 current"
|
||||||
|
"$mod, code:16, workspace, 7"
|
||||||
|
"$mod, 7, moveworkspacetomonitor, 7 current"
|
||||||
|
"$mod, 7, workspace, 7"
|
||||||
|
"$mod, code:17, moveworkspacetomonitor, 8 current"
|
||||||
|
"$mod, code:17, workspace, 8"
|
||||||
|
"$mod, 8, moveworkspacetomonitor, 8 current"
|
||||||
|
"$mod, 8, workspace, 8"
|
||||||
|
"$mod, code:18, moveworkspacetomonitor, 9 current"
|
||||||
|
"$mod, code:18, workspace, 9"
|
||||||
|
"$mod, 9, moveworkspacetomonitor, 9 current"
|
||||||
|
"$mod, 9, workspace, 9"
|
||||||
|
"$mod, code:19, moveworkspacetomonitor, 10 current"
|
||||||
|
"$mod, code:19, workspace, 10"
|
||||||
|
"$mod, 0, moveworkspacetomonitor, 10 current"
|
||||||
|
"$mod, 0, workspace, 10"
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
"$mod SHIFT, code:10, movetoworkspace, 1"
|
||||||
|
"$mod SHIFT, 1, movetoworkspace, 1"
|
||||||
|
"$mod SHIFT, code:11, movetoworkspace, 2"
|
||||||
|
"$mod SHIFT, 2, movetoworkspace, 2"
|
||||||
|
"$mod SHIFT, code:12, movetoworkspace, 3"
|
||||||
|
"$mod SHIFT, 3, movetoworkspace, 3"
|
||||||
|
"$mod SHIFT, code:13, movetoworkspace, 4"
|
||||||
|
"$mod SHIFT, 4, movetoworkspace, 4"
|
||||||
|
"$mod SHIFT, code:14, movetoworkspace, 5"
|
||||||
|
"$mod SHIFT, 5, movetoworkspace, 5"
|
||||||
|
"$mod SHIFT, code:15, movetoworkspace, 6"
|
||||||
|
"$mod SHIFT, 6, movetoworkspace, 6"
|
||||||
|
"$mod SHIFT, code:16, movetoworkspace, 7"
|
||||||
|
"$mod SHIFT, 7, movetoworkspace, 7"
|
||||||
|
"$mod SHIFT, code:17, movetoworkspace, 8"
|
||||||
|
"$mod SHIFT, 8, movetoworkspace, 8"
|
||||||
|
"$mod SHIFT, code:18, movetoworkspace, 9"
|
||||||
|
"$mod SHIFT, 9, movetoworkspace, 9"
|
||||||
|
"$mod SHIFT, code:19, movetoworkspace, 10"
|
||||||
|
"$mod SHIFT, 0, movetoworkspace, 10"
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll
|
||||||
|
"$mod, mouse_down, workspace, e-1"
|
||||||
|
"$mod, mouse_up, workspace, e+1"
|
||||||
|
|
||||||
|
# Media controls
|
||||||
|
", XF86AudioRaiseVolume, exec, pulsemixer --change-volume +1"
|
||||||
|
", XF86AudioLowerVolume, exec, pulsemixer --change-volume -1"
|
||||||
|
# ", XF86AudioMicMute, exec, pulsemixer --toggle-mute"
|
||||||
|
", XF86AudioMute, exec, pulsemixer --toggle-mute"
|
||||||
|
", XF86AudioPlay, exec, mpc toggle"
|
||||||
|
", XF86AudioPause, exec, mpc toggle"
|
||||||
|
", XF86AudioNext, exec, mpc next"
|
||||||
|
", XF86AudioPrev, exec, mpc prev"
|
||||||
|
"$mod, P, exec, mpc toggle"
|
||||||
|
|
||||||
|
", XF86MonBrightnessDown, exec, light -U 5"
|
||||||
|
", XF86MonBrightnessUp, exec, light -A 5"
|
||||||
|
|
||||||
|
", Print, exec, grim -g \"$(slurp)\" - | satty -f -"
|
||||||
|
"SHIFT, Print, exec, grim - | satty -f -"
|
||||||
|
];
|
||||||
|
|
||||||
|
bindm = [
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
"$mod, mouse:272, movewindow"
|
||||||
|
"$mod, mouse:273, resizewindow"
|
||||||
|
];
|
||||||
|
|
||||||
|
exec-once = [
|
||||||
|
"${pkgs.swaybg}/bin/swaybg --image ${wallpaper} --mode fill"
|
||||||
|
"keepassxc"
|
||||||
|
];
|
||||||
|
|
||||||
|
misc = {
|
||||||
|
force_default_wallpaper = 0;
|
||||||
|
disable_hyprland_logo = true;
|
||||||
|
disable_splash_rendering = true;
|
||||||
|
animate_manual_resizes = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
style = ''
|
|
||||||
* {
|
|
||||||
border: none;
|
|
||||||
font-family: MesloLGS Nerd Font;
|
|
||||||
font-size: 12px;
|
|
||||||
min-height: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
tooltip {
|
programs.waybar = {
|
||||||
background: #282828;
|
enable = true;
|
||||||
border: 0px solid;
|
systemd.enable = true;
|
||||||
border-radius: 0px;
|
settings = {
|
||||||
}
|
mainBar = {
|
||||||
|
layer = "top";
|
||||||
|
position = "bottom";
|
||||||
|
height = 25;
|
||||||
|
spacing = 2;
|
||||||
|
reload-style-on-change = true;
|
||||||
|
modules-left = [
|
||||||
|
"cpu"
|
||||||
|
"memory"
|
||||||
|
"disk"
|
||||||
|
"hyprland/window"
|
||||||
|
];
|
||||||
|
modules-center = [ "hyprland/workspaces" ];
|
||||||
|
modules-right = [
|
||||||
|
"mpd"
|
||||||
|
"battery"
|
||||||
|
"clock"
|
||||||
|
"tray"
|
||||||
|
];
|
||||||
|
|
||||||
window#waybar {
|
tray = {
|
||||||
background: #282828;
|
icon-size = 14;
|
||||||
color: #ebdbb2;
|
spacing = 5;
|
||||||
}
|
show-passive-items = true;
|
||||||
|
};
|
||||||
|
|
||||||
#workspaces button {
|
cpu = {
|
||||||
padding: 0 0.6em;
|
interval = 1;
|
||||||
color: #a89984;
|
format = " {usage}%";
|
||||||
border-radius: 0px;
|
tooltip = false;
|
||||||
}
|
};
|
||||||
|
|
||||||
#workspaces button.active {
|
memory = {
|
||||||
color: #ebdbb2;
|
interval = 1;
|
||||||
background: #665c54;
|
format = " {percentage}%";
|
||||||
}
|
tooltip = false;
|
||||||
|
};
|
||||||
|
|
||||||
#workspaces button.urgent {
|
disk = {
|
||||||
color: #1d2021;
|
interval = 60;
|
||||||
background: #fb4934;
|
format = " {free}";
|
||||||
}
|
tooltip = false;
|
||||||
|
};
|
||||||
|
|
||||||
#workspaces button:hover {
|
clock = {
|
||||||
background: #665c54;
|
format = " {:%A, %d %h %H:%M}";
|
||||||
}
|
format-alt = " {:%d/%m/%Y %H:%M}";
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
|
||||||
#network,
|
};
|
||||||
#workspaces,
|
};
|
||||||
#bluetooth,
|
style = ''
|
||||||
#tray {
|
* {
|
||||||
color: #ebdbb2;
|
border: none;
|
||||||
padding: 0 5px;
|
font-family: MesloLGS Nerd Font;
|
||||||
margin: 0 5px;
|
font-size: 12px;
|
||||||
}
|
min-height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
#cpu,
|
tooltip {
|
||||||
#memory,
|
background: #282828;
|
||||||
#disk,
|
border: 0px solid;
|
||||||
#clock {
|
border-radius: 0px;
|
||||||
padding: 0 5px;
|
}
|
||||||
margin: 0 5px;
|
|
||||||
color: #83a598;
|
window#waybar {
|
||||||
}
|
background: #282828;
|
||||||
|
color: #ebdbb2;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
padding: 0 0.6em;
|
||||||
|
color: #a89984;
|
||||||
|
border-radius: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
color: #ebdbb2;
|
||||||
|
background: #665c54;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
color: #1d2021;
|
||||||
|
background: #fb4934;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: #665c54;
|
||||||
|
}
|
||||||
|
|
||||||
|
#network,
|
||||||
|
#workspaces,
|
||||||
|
#bluetooth,
|
||||||
|
#tray {
|
||||||
|
color: #ebdbb2;
|
||||||
|
padding: 0 5px;
|
||||||
|
margin: 0 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu,
|
||||||
|
#memory,
|
||||||
|
#disk,
|
||||||
|
#clock {
|
||||||
|
padding: 0 5px;
|
||||||
|
margin: 0 5px;
|
||||||
|
color: #83a598;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
package = pkgs.waybar.override { wireplumberSupport = false; };
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.satty = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
general = {
|
||||||
|
output-filename = "${config.home.homeDirectory}/Pictures/Screenshots/satty_%Y-%m-%d_%H-%M-%S.png";
|
||||||
|
copy-command = "wl-copy";
|
||||||
|
actions-on-enter = [
|
||||||
|
"save-to-clipboard"
|
||||||
|
"save-to-file"
|
||||||
|
"exit"
|
||||||
|
];
|
||||||
|
early-exit = true;
|
||||||
|
save-after-copy = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.activation.ensureScreenshotsDir = ''
|
||||||
|
${pkgs.coreutils}/bin/mkdir -p "$HOME/Pictures/Screenshots"
|
||||||
'';
|
'';
|
||||||
package = pkgs.waybar.override { wireplumberSupport = false; };
|
|
||||||
};
|
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
wlr-randr
|
wlr-randr
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
wdisplays
|
wdisplays
|
||||||
];
|
grim
|
||||||
};
|
slurp
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
programs.swaylock = {
|
programs.swaylock = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
package = pkgs.swaylock-effects;
|
package = pkgs.swaylock-effects;
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
ignore-empty-password = true;
|
ignore-empty-password = true;
|
||||||
daemonize = true;
|
daemonize = true;
|
||||||
# fade-in = 0.5;
|
# fade-in = 0.5;
|
||||||
indicator = true;
|
indicator = true;
|
||||||
clock = true;
|
clock = true;
|
||||||
datestr = "%d/%m/%Y";
|
datestr = "%d/%m/%Y";
|
||||||
screenshots = true;
|
screenshots = true;
|
||||||
hide-keyboard-layout = true;
|
hide-keyboard-layout = true;
|
||||||
indicator-caps-lock = true;
|
indicator-caps-lock = true;
|
||||||
bs-hl-color = "7daea3cc";
|
bs-hl-color = "7daea3cc";
|
||||||
caps-lock-bs-hl-color = "7daea3cc";
|
caps-lock-bs-hl-color = "7daea3cc";
|
||||||
caps-lock-key-hl-color = "d3869bcc";
|
caps-lock-key-hl-color = "d3869bcc";
|
||||||
font = "MesloLGS Nerd Font Propo";
|
font = "MesloLGS Nerd Font Propo";
|
||||||
font-size = "35";
|
font-size = "35";
|
||||||
indicator-idle-visible = true;
|
indicator-idle-visible = true;
|
||||||
indicator-radius = 100;
|
indicator-radius = 100;
|
||||||
indicator-thickness = 7;
|
indicator-thickness = 7;
|
||||||
inside-color = "32302f66";
|
inside-color = "32302f66";
|
||||||
inside-clear-color = "89b48266";
|
inside-clear-color = "89b48266";
|
||||||
inside-caps-lock-color = "e78a4e66";
|
inside-caps-lock-color = "e78a4e66";
|
||||||
inside-ver-color = "7daea366";
|
inside-ver-color = "7daea366";
|
||||||
inside-wrong-color = "ea696266";
|
inside-wrong-color = "ea696266";
|
||||||
key-hl-color = "a9b665cc";
|
key-hl-color = "a9b665cc";
|
||||||
layout-bg-color = "32302f00";
|
layout-bg-color = "32302f00";
|
||||||
layout-text-color = "d4be98";
|
layout-text-color = "d4be98";
|
||||||
line-color = "00000000";
|
line-color = "00000000";
|
||||||
ring-color = "e78a4ecc";
|
ring-color = "e78a4ecc";
|
||||||
ring-clear-color = "89b482cc";
|
ring-clear-color = "89b482cc";
|
||||||
ring-caps-lock-color = "e78a4ecc";
|
ring-caps-lock-color = "e78a4ecc";
|
||||||
ring-ver-color = "7daea3cc";
|
ring-ver-color = "7daea3cc";
|
||||||
ring-wrong-color = "ea6962cc";
|
ring-wrong-color = "ea6962cc";
|
||||||
separator-color = "00000000";
|
separator-color = "00000000";
|
||||||
text-color = "d4be98";
|
text-color = "d4be98";
|
||||||
text-clear-color = "d4be98";
|
text-clear-color = "d4be98";
|
||||||
text-caps-lock-color = "d4be98";
|
text-caps-lock-color = "d4be98";
|
||||||
text-ver-color = "d4be98";
|
text-ver-color = "d4be98";
|
||||||
text-wrong-color = "d4be98";
|
text-wrong-color = "d4be98";
|
||||||
effect-blur = "9x9";
|
effect-blur = "9x9";
|
||||||
effect-greyscale = true;
|
effect-greyscale = true;
|
||||||
# effect-vignette = "0.5:0.5";
|
# effect-vignette = "0.5:0.5";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue