#!/bin/bash ## # This will render an image of a fractal in XaoS ## # Assumptions made: # 1. XaoS is in the foreground when you run the script (launch it from a hotkey or like this `$ script.sh true`) # 2. XaoS is fullscreen ## # Dependencies: ydotool ## # Usage: xaos-render.sh [press alt tab (true or false)] [save path] [x_resolution] [y_resolution] # defaults to 4k ## SAVE_PATH="${2:-/home/blake/Pictures/fractiles/xaos-render-$RANDOM-}" # needs to be absolute X_RESOLUTION="${3:-3840}" Y_RESOLUTION="${4:-2160}" # must be run as root for ydotool to work if [[ $(id -u) -ne 0 ]] ; then echo "Please run as root" ; exit 1 ; fi ydotoold & sleep 0.2 YDOTOOLD_PID=$! "${1:-false}" && ydotool key alt+tab && sleep 0.1 # ydotool mousemove --absolute 0 0 ydotool key --key-delay 4 alt+s ydotool key --key-delay 4 8 # ydotool click --buttons left # ydotool key --key-delay 4 d{o,o}{w,w}{n,n} enter # sleep 0.1 ydotool key ctrl+a ydotool type "$SAVE_PATH" ydotool key tab tab ydotool type "$X_RESOLUTION" ydotool key tab ydotool type "$Y_RESOLUTION" ydotool key enter kill -SIGTERM $YDOTOOLD_PID