diff --git a/common/home.nix b/common/home.nix index 546a91c..43aa65d 100644 --- a/common/home.nix +++ b/common/home.nix @@ -1,19 +1,9 @@ -{ - pkgs, - config, - inputs, - ... -}: { +{ pkgs, config, inputs, ... }: { home = { username = "avery"; homeDirectory = "/home/avery"; stateVersion = "24.05"; - packages = with pkgs; [ - python3 - rclone - xdg-user-dirs - xdg-utils - ]; + packages = with pkgs; [ python3 rclone xdg-utils ]; }; programs.home-manager.enable = true; } diff --git a/hosts/totsugeki/desktop/default.nix b/hosts/totsugeki/desktop/default.nix index 22f174e..f0cd74d 100644 --- a/hosts/totsugeki/desktop/default.nix +++ b/hosts/totsugeki/desktop/default.nix @@ -19,7 +19,6 @@ obs-studio picard protonup-qt - grim libsForQt5.ark libsForQt5.dolphin libsForQt5.dolphin-plugins @@ -34,12 +33,12 @@ playerctl qbittorrent r2modman - slurp swww wl-clipboard (import ./scripts/colorpicker.nix { inherit pkgs; }) (import ./scripts/currently-playing.nix { inherit pkgs; }) (import ./scripts/change-wallpaper.nix { inherit pkgs; }) + (import ./scripts/screenshot.nix { inherit pkgs; }) (pkgs.buildEnv { name = "desktop-scripts"; paths = [ ./scripts_legacy ]; diff --git a/hosts/totsugeki/desktop/hyprland.nix b/hosts/totsugeki/desktop/hyprland.nix index 06f1e48..15d6533 100644 --- a/hosts/totsugeki/desktop/hyprland.nix +++ b/hosts/totsugeki/desktop/hyprland.nix @@ -82,8 +82,8 @@ "SUPER SHIFT, 9, movetoworkspace, 9" "SUPER SHIFT, 0, movetoworkspace, 10" - "SUPER, S, exec, screenshot.sh full" - "SUPER + SHIFT, S, exec, screenshot.sh section" + "SUPER, S, exec, screenshot full" + "SUPER + SHIFT, S, exec, screenshot section" "MOD3, C, exec, colorpicker" diff --git a/hosts/totsugeki/desktop/scripts/screenshot.nix b/hosts/totsugeki/desktop/scripts/screenshot.nix new file mode 100644 index 0000000..75ade5a --- /dev/null +++ b/hosts/totsugeki/desktop/scripts/screenshot.nix @@ -0,0 +1,36 @@ +{ pkgs }: + +pkgs.writeShellApplication { + name = "screenshot"; + runtimeInputs = with pkgs; [ + dunst + grim + libjxl + slurp + wl-clipboard + xdg-user-dirs + ]; + text = '' + usage() { + echo "Usage: screenshot { full | section }" + exit 1 + } + + test -n 1 || usage + + FILE_NAME=$(date +'Screenshot_%Y%m%d_%H%M%S') + TEMPORARY_PATH="/tmp/$FILE_NAME.png" + SCREENSHOT_PATH="$(xdg-user-dir PICTURES)/$FILE_NAME.jxl" + if [ "$1" == "full" ]; then + grim "$TEMPORARY_PATH" + elif [ "$1" == "section" ]; then + grim -g "$(slurp -b '#000000aa' -w 0)" "$TEMPORARY_PATH" + else + usage + fi + wl-copy < "$TEMPORARY_PATH" + cjxl "$TEMPORARY_PATH" "$SCREENSHOT_PATH" + dunstify --raw_icon="$TEMPORARY_PATH" "Captura de pantalla realizada" "Guardada como $FILE_NAME.jxl" + rm "$TEMPORARY_PATH" + ''; +} diff --git a/hosts/totsugeki/desktop/scripts_legacy/bin/screenshot.sh b/hosts/totsugeki/desktop/scripts_legacy/bin/screenshot.sh deleted file mode 100755 index be11147..0000000 --- a/hosts/totsugeki/desktop/scripts_legacy/bin/screenshot.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh - -missing_params() { - echo "Missing parameters, usage: screenshot.sh " - exit 1 -} - -test -n 1 || missing_params - -FILE_NAME=$(date +'Screenshot_%Y%m%d_%H%M%S') -TEMPORARY_PATH="/tmp/$FILE_NAME.png" -SCREENSHOT_PATH=$(xdg-user-dir PICTURES)/$FILE_NAME.jxl - -if [ $1 == "full" ]; then - grim $TEMPORARY_PATH -elif [ $1 == "section" ]; then - grim -g "$(slurp -b '#000000aa' -w 0)" $TEMPORARY_PATH -fi -if [ $? == 0 ]; then - wl-copy < $TEMPORARY_PATH - cjxl $TEMPORARY_PATH $SCREENSHOT_PATH - dunstify --raw_icon=$TEMPORARY_PATH "Captura de pantalla realizada" "Guardada como $FILE_NAME.jxl" - rm $TEMPORARY_PATH -fi