2 changed files with 84 additions and 0 deletions
@ -0,0 +1,77 @@ |
|||
#! /bin/bash |
|||
|
|||
# ./colorscheme /path/to/image |
|||
|
|||
# This script does 4 things. |
|||
# => Generate colorscheme with pywal |
|||
# => Copy colors to polybar |
|||
# => Copy colors to rofi |
|||
# => Change the background image path in i3 config |
|||
polybarcfg="$HOME/.config/polybar/config" |
|||
roficfg="$HOME/.config/rofi/appsmenu.rasi" |
|||
powercfg="$HOME/.config/rofi/powermenu/powermenu.rasi" |
|||
powerconfirmcfg="$HOME/.config/rofi/powermenu/powermenu-confirm.rasi" |
|||
glavacfg="$HOME/.config/glava/bars.glsl" |
|||
rofilist=("$powercfg" "$roficfg" "$powerconfirmcfg" ) |
|||
if [ -f "$1" ]; then |
|||
|
|||
# Generate coloerscheme |
|||
picture=$(echo $1 | sed 's+~+/home/akshay+') |
|||
wal -i $picture |
|||
|
|||
# Takes the colors from pywal json files in .cache and stores in 3 files glavacolors, polycolors and roficolors |
|||
jsonfile="$HOME/.cache/wal/schemes/"$(echo $picture | sed -e "s+/+_+g" -e "s+\.+_+g")"_dark_None_None_1.1.0.json" |
|||
cat $jsonfile | grep -E 'color[0-9]' | sed -e "s/ //g" -e 's/"//g' -e "s/:/ = /" -e "s/,//g" > polycolors |
|||
cat polycolors | sed -e 's/ =/:/' | sed -e 's/^/ /' | sed -e 's/$/;/' > roficolors |
|||
cat polycolors > glavacolors && sed -i 's/ //g' glavacolors |
|||
sed -i '1,3d;5,15d;' glavacolors |
|||
|
|||
cat glavacolors |
|||
# Replace glava bars colors |
|||
awk -i inplace 'BEGIN{FS=OFS="="} |
|||
NR==FNR {color[$1]=$2 ; next } |
|||
FNR!=NR && $1 in color {$2=color[$1]} |
|||
1' glavacolors glavasync.sh |
|||
./glavasync.sh $glavacfg |
|||
rm glavacolors |
|||
|
|||
# Copyi/Replace colors from polycolors to ~/.config/polybar/... |
|||
if grep -Eq 'color[0-9]' $polybarcfg; then |
|||
awk -i inplace 'BEGIN{FS=OFS="="} |
|||
NR==FNR {color[$1]=$2 ; next } |
|||
FNR!=NR && $1 in color {$2=color[$1]} |
|||
1' polycolors $polybarcfg |
|||
else |
|||
cp $polybarcfg $polybarcfg.backup |
|||
sed -i '/\[colors]/r polycolors' $polybarcfg |
|||
fi |
|||
rm polycolors |
|||
|
|||
# Copy/Replace colors from roficolors to ~/.config/rofi/... |
|||
# polycolors and roficolrs are created repeatedly as each copy/replace moves the values from file to the config files |
|||
for i in "${rofilist[@]}" |
|||
do |
|||
if grep -Eq ' color[0-9]' $i; then |
|||
awk -i inplace 'BEGIN{FS=OFS=": "} |
|||
NR==FNR {color[$1]=$2 ; next } |
|||
FNR!=NR && $1 in color {$2=color[$1]} |
|||
1' roficolors $i |
|||
else |
|||
echo "2 here" |
|||
cp $i $i.backup |
|||
sed -i '/\* {/r roficolors' $i |
|||
fi |
|||
cat $jsonfile | grep -E 'color[0-9]' | sed -e "s/ //g" -e 's/"//g' -e "s/:/ = /" -e "s/,//g" > polycolors |
|||
rm roficolors |
|||
cat polycolors | sed -e 's/ =/:/' | sed -e 's/^/ /' | sed -e 's/$/;/' > roficolors |
|||
rm polycolors |
|||
done |
|||
rm roficolors |
|||
|
|||
# Replace backgroup image path in i3config |
|||
cd ~/.config/i3 |
|||
awk -v t=$1 '$3 ~ /feh$/ {$5=t}1' config > config.rm |
|||
mv config.rm config |
|||
else |
|||
echo "Image doesnt exist" |
|||
fi |
|||
@ -0,0 +1,7 @@ |
|||
#! /bin/bash |
|||
|
|||
color15=#ccd9d4 |
|||
color3=#628679 |
|||
|
|||
sed -i '/@fg:mix/d' $1 |
|||
echo '#define COLOR @fg:mix('$color15', '$color3', clamp(d / GRADIENT, 0, 1))' >> $1 |
|||
Loading…
Reference in new issue