dotfiles/hm/desktop/screenshots/default.nix

28 lines
765 B
Nix

{
pkgs,
lib,
config,
...
}:
let
dir = config.xdg.userDirs.extraConfig.XDG_SCREENSHOTS_DIR;
gs =
mode:
pkgs.writeShellScript "grimshot-${mode}" ''
path="${dir}/$(date -Isec).png"
${lib.getExe pkgs.sway-contrib.grimshot} savecopy ${mode} "$path"
${pkgs.optipng}/bin/optipng "$path"
'';
mod = config.wayland.windowManager.sway.config.modifier;
in
{
config = lib.mkIf config.frogeye.desktop.xorg {
frogeye.folders.screenshots.path = "Screenshots";
home.packages = [ pkgs.sway-contrib.grimshot ];
wayland.windowManager.sway.config.keybindings = lib.mkOptionDefault {
"Print" = "exec ${gs "active"}";
"${mod}+Print" = "exec ${gs "screen"}";
"Ctrl+Print" = "exec ${gs "anything"}";
};
};
}