Files
nixos-config/overlay/scripts/wm-controls/chpaper.nix
pagedmov 8c007c3915 Moved scripts to the overlay folder to be used as packages
All scripts have been moved to the overlay folder in the top level directory

Overlay is now instantiated per configuration to make use of the host variable
2024-11-16 03:42:07 -05:00

20 lines
811 B
Nix
Executable File

{ pkgs }:
pkgs.writeShellApplication {
name = "chpaper";
runtimeInputs = with pkgs; [ chafa fzf ripgrep findutils coreutils ];
text = ''
paper="$\{self}/assets/wallpapers/$(find "$FLAKEPATH"/assets/wallpapers -exec basename {} \; | rg "\.\w+$" | fzf --preview "chafa -s 30x40 $FLAKEPATH/assets/wallpapers/{}")"
[ "$paper" = "$\{self}/assets/wallpapers/" ] && echo "Cancelling wallpaper change" && exit 1
echo "$paper" | xargs -I {} sed -i '/wallpaper =/s|"[^"]*"|"{}"|' "$FLAKEPATH"/modules/sys/environment/stylix.nix
echo "Successfully changed wallpaper. Rebuild now?" && \
select choice in "Yes" "No"; do
case $choice in
"Yes")
rebuild;systemctl --user restart hyprpaper;exit 0;;
"No")
echo "Exiting...";exit 0;;
esac
done
'';
}