Advertisement
Guest User

Untitled

a guest
May 25th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.18 KB | None | 0 0
  1. #!/usr/bin/env sh
  2.  
  3. interval=610
  4. animate_speed=2
  5. walldir="$HOME"/weatherbg
  6. url_latest="http://radar.weather.gov/Conus/RadarImg/latest.gif"
  7. url_animated="http://radar.weather.gov/Conus/Loop/NatLoop.gif"
  8. dest_latest="$walldir"/latest-doppler.gif
  9. dest_animated="$walldir"/animated-doppler.gif
  10.  
  11. mkdir -pv "$walldir"
  12.  
  13. function dl_doppler()
  14. {
  15.     echo "downloading latest doppler"
  16.     wget -O "$dest_animated" "$url_animated"
  17.     convertops="-coalesce"
  18.     frames="$walldir"/frames.jpg
  19.     convert "$dest_animated" "$convertops" "$frames"
  20.  
  21.         mkdir -pv "$walldir"/dark
  22.     files=()
  23.     for i in *.jpg ; do
  24.         [[ -f "$i" ]] && convert "$i" -modulate 75 "$walldir"/dark/"$i"
  25.     done
  26.  
  27.  
  28. }
  29.  
  30. function loop_frames()
  31. {
  32.     files=()
  33.     for i in *.jpg ; do
  34.         [[ -f "$i" ]] && files+=("$i")
  35.     done
  36.     loop_time=${#files[@]}
  37.     n_loops=$(($interval/$loop_time*animate_speed))
  38.     echo "looping frame sequence " "$n_loops" "times"
  39.     for i in $(seq 1 "$n_loops") ; do
  40.         for var in "${files[@]}" ; do
  41.             feh --bg-scale "$var"
  42.             sleeptime=$(bc -l <<< "scale=2; 1/"$animate_speed"")
  43.             sleep "$sleeptime"
  44.  
  45.         done
  46.     done
  47. }
  48.  
  49. cd "$walldir"
  50. while :
  51. do
  52.     dl_doppler
  53.         cd dark
  54.     loop_frames
  55.         cd -
  56. done
  57. cd -
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement