#!/usr/bin/env bash # Color files PFILE="$HOME/.config/polybar/shapes/colors.ini" RFILE="$HOME/.config/polybar/shapes/scripts/rofi/colors.rasi" # Change colors change_color() { # polybar sed -i -e "s/background = #.*/background = $BG/g" $PFILE sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE sed -i -e "s/foreground-alt = #.*/foreground-alt = $FGA/g" $PFILE sed -i -e "s/shade1 = #.*/shade1 = $SH1/g" $PFILE sed -i -e "s/shade2 = #.*/shade2 = $SH2/g" $PFILE sed -i -e "s/shade3 = #.*/shade3 = $SH3/g" $PFILE sed -i -e "s/shade4 = #.*/shade4 = $SH4/g" $PFILE sed -i -e "s/shade5 = #.*/shade5 = $SH5/g" $PFILE sed -i -e "s/shade6 = #.*/shade6 = $SH6/g" $PFILE sed -i -e "s/shade7 = #.*/shade7 = $SH7/g" $PFILE sed -i -e "s/shade8 = #.*/shade8 = $SH8/g" $PFILE # rofi cat > $RFILE <<- EOF /* colors */ * { al: #00000000; bg: ${BG}FF; bg1: ${SH2}FF; bg2: ${SH3}FF; bg3: ${SH4}FF; fg: ${FG}FF; } EOF polybar-msg cmd restart } get_random_number() { RNUM=$(( ($RANDOM % $1) + 1 )) } get_random_color() { RCOLOR="#" for i in 1 2 3 4 5 6 do get_random_number "16" case $RNUM in "1") NEXTDIGIT="1";; "2") NEXTDIGIT="2";; "3") NEXTDIGIT="3";; "4") NEXTDIGIT="4";; "5") NEXTDIGIT="5";; "6") NEXTDIGIT="6";; "7") NEXTDIGIT="7";; "8") NEXTDIGIT="8";; "9") NEXTDIGIT="9";; "10") NEXTDIGIT="A";; "11") NEXTDIGIT="B";; "12") NEXTDIGIT="C";; "13") NEXTDIGIT="D";; "14") NEXTDIGIT="E";; "15") NEXTDIGIT="F";; "16") NEXTDIGIT="0";; esac RCOLOR="$RCOLOR$NEXTDIGIT" done echo $RCOLOR } # Main BG='#1f1f1f' # change to light bg FG='#FFFFFF' # change to dark fg FGA='#FFFFFF' # change to gray fg SH1=`get_random_color` SH2=`get_random_color` SH3=`get_random_color` SH4=`get_random_color` SH5=`get_random_color` SH6=`get_random_color` SH7=`get_random_color` SH8=`get_random_color` change_color