147 lines
6.7 KiB
Bash
Executable File
147 lines
6.7 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# mabox-logo - colorize Mabox logo, flat and 3d (cube). For use in Conky and panel (maybe)
|
|
|
|
. ~/.config/mabox/mabox.conf
|
|
mkdir -p "$HOME/.icons"
|
|
|
|
in_color=${logo_in_color:-#32B557}
|
|
in_opacity=${logo_in_opacity:-1.0}
|
|
out_color=${logo_out_color:-#FFFFFF}
|
|
out_opacity=${logo_out_opacity:-1.0}
|
|
|
|
LOGO_SQUARE=~/.icons/mabox-logo-square.svg
|
|
LOGO_3D=~/.icons/mabox-logo-3d.svg
|
|
LOGO_CIRCLE=~/.icons/mabox-logo-circle.svg
|
|
CONKYLOGO="$HOME/.config/conky/Mabox_logo_SVG_mbcolor.conkyrc"
|
|
|
|
mklogos(){
|
|
case "$1" in
|
|
--in-color|ic) in_color=${2};;
|
|
--out-color|oc) out_color=${2};;
|
|
--in-opacity|io) in_opacity=${2};;
|
|
--out-opacity|oo) out_opacity=${2};;
|
|
all)
|
|
in_color=${2}
|
|
in_opacity=${3}
|
|
out_color=${4}
|
|
out_opacity=${5}
|
|
;;
|
|
default)
|
|
in_color=#32B557
|
|
in_opacity=1
|
|
out_color=#F8F8FF
|
|
out_opacity=1
|
|
;;
|
|
esac
|
|
# square
|
|
cat <<EOF > ${LOGO_SQUARE}
|
|
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256">
|
|
<path fill="${out_color}" fill-opacity="${out_opacity}" d="M0 0v256h256V0Zm16 16h224v224h-64V80h-16v160H96V80H80v160H16Z"/>
|
|
<path fill="${in_color}" fill-opacity="${in_opacity}" d="M80 240H16V16h224v224h-64V80h-16v160H96V80H80z"/>
|
|
</svg>
|
|
EOF
|
|
[[ ! -f "$HOME/.icons/mabox-logo-square-default.svg" ]] && cp "${LOGO_SQUARE}" "$HOME/.icons/mabox-logo-square-default.svg"
|
|
# 3D cube
|
|
cat <<EOF > ${LOGO_3D}
|
|
<svg xmlns="http://www.w3.org/2000/svg" width="1350" height="1350">
|
|
<path fill="${out_color}" fill-opacity="${out_opacity}" d="m675.469 35.245-581.09 189.03 573.45 260.3 592.67-257.6Zm-213.776 133.16 426.42 8.963 18.258 174.98-474.193-.484zm12.086 12.408-22.95 159.87 438.91.56-16.76-153.299zm21.08 11.274 358.641 4.838 13.082 132.39-105.23-.058-3.8-99.654-31.413-.43 2.537 99.586-105.367-.024 4.232-99.35-30.318.237-9.194 99.297-113.021.037zM65.098 253.454s43.103 463.121 65.154 694.621c175.89 115.17 351.351 231.05 526.951 346.68l-8.725-774.42c-3.242-2.767-582.7-267.85-583.38-266.88Zm1215.804 5.781c0-.03-588.8 263.04-588.8 263.04s-2.279 771.42.445 772.48l523.742-344.43ZM101.086 323.19l503.76 235.5s4.76 663.97 4.056 663.58l-134.884-88.175s-12.32-302.85-17.327-453.86l-39.154-17.644 13.867 443.039c-1.841-.542-123.63-79.893-123.63-79.893l-28.112-427.64-31.494-14.84 23.963 415.01c.133 2.314-112.08-69.5-112.15-70.137zm1141.713 3.334s-33.266 401.952-51.188 602.782c-39.452 21.937-116.5 70.802-116.5 70.802l24.7-426.73-33.282 17.209s-18.493 291.631-28.556 437.361l-125.27 76.008 14.895-440.77-38.659 20.077-17.689 451.68-140.31 87.831c-1.678-139.65 9.001-663.87 9.001-663.87l-.004-.009z"/>
|
|
<path fill="${in_color}" fill-opacity="${in_opacity}" d="M122.026 956.98C105.255 801.33 102.813 778.14 50 228.92L676.71 22.64 1300 225.42l-69.336 733.18-557.89 368.76zm526.96-437.21c-3.242-2.767-582.7-267.85-583.38-266.88 0 0 43.103 463.12 65.154 694.62 175.89 115.17 351.35 231.05 526.95 346.68zm-174.46 613.76s-12.32-302.85-17.326-453.86l-39.155-17.644 13.867 443.04c-1.842-.541-123.63-79.894-123.63-79.894l-28.113-427.64-31.494-14.84 23.964 415.01c.134 2.314-112.08-69.499-112.15-70.137l-58.895-604.94 503.76 235.5s4.758 663.97 4.055 663.58zm742.27-183.77 64.614-691.09c0-.03-588.8 263.04-588.8 263.04s-2.28 771.42.444 772.48zm-476.35-391.43 502.86-232.37s-33.266 401.95-51.188 602.78c-39.452 21.937-116.5 70.803-116.5 70.803l24.7-426.73-33.281 17.21s-18.494 291.63-28.557 437.36l-125.27 76.008 14.896-440.77-38.658 20.077-17.691 451.68-140.31 87.831c-1.677-139.65 9.002-663.87 9.002-663.87zm520.56-331.92L675.976 34.68 94.886 223.71l573.45 260.3zM432.686 351.3l29.515-183.46 426.42 8.963 18.257 174.98zm440.8-163.92-399.2-7.131-22.951 159.87 438.91.559zm-249.67 140.79 4.232-99.35-30.318.238-9.194 99.296-113.02.038 19.851-136.87 358.64 4.838 13.082 132.39-105.23-.057-3.798-99.655-31.414-.43 2.536 99.585z"/>
|
|
</svg>
|
|
EOF
|
|
[[ ! -f "$HOME/.icons/mabox-logo-3d-default.svg" ]] && cp "${LOGO_3D}" "$HOME/.icons/mabox-logo-3d-default.svg"
|
|
## circle
|
|
cat <<EOF > ${LOGO_CIRCLE}
|
|
<svg width="512" height="512" viewBox="0 0 135.467 135.467">
|
|
<path fill="${in_color}" fill-opacity="${in_opacity}" d="M67.733.927A66.806 66.806 0 0 0 .927 67.733a66.806 66.806 0 0 0 66.806 66.807 66.806 66.806 0 0 0 66.807-66.807A66.806 66.806 0 0 0 67.733.927Zm0 12.282a54.524 54.524 0 0 1 54.525 54.524 54.524 54.524 0 0 1-54.525 54.525A54.524 54.524 0 0 1 13.21 67.733 54.524 54.524 0 0 1 67.733 13.21ZM38.1 38.1v59.267h16.933V55.033h4.234v42.334H76.2V55.033h4.233v42.334h16.934V38.1Z"/>
|
|
<path fill="${out_color}" fill-opacity="${out_opacity}" d="M67.733 13.209A54.524 54.524 0 0 0 13.21 67.733a54.524 54.524 0 0 0 54.524 54.525 54.524 54.524 0 0 0 54.525-54.525A54.524 54.524 0 0 0 67.733 13.21ZM38.1 38.1h59.267v59.267H80.433V55.033H76.2v42.334H59.267V55.033h-4.234v42.334H38.1Z"/>
|
|
</svg>
|
|
EOF
|
|
[[ ! -f "$HOME/.icons/mabox-logo-circle-default.svg" ]] && cp "${LOGO_CIRCLE}" "$HOME/.icons/mabox-logo-circle-default.svg"
|
|
|
|
mb-setvar logo_in_color=$in_color
|
|
mb-setvar logo_out_color=$out_color
|
|
mb-setvar logo_in_opacity=$in_opacity
|
|
mb-setvar logo_out_opacity=$out_opacity
|
|
}
|
|
mkconky() {
|
|
cat << 'EOF' > ${CONKYLOGO}
|
|
conky.config = {
|
|
-- WINDOW
|
|
own_window = true,
|
|
own_window_type = 'desktop',
|
|
own_window_transparent = true,
|
|
own_window_hints = 'undecorated,below,skip_taskbar,skip_pager,sticky',
|
|
own_window_class = 'Conky-nobg',
|
|
own_window_title = 'Mabox Logo SVG',
|
|
|
|
alignment = 'middle_middle',
|
|
gap_x = 0,
|
|
gap_y = 0,
|
|
minimum_height = 48,
|
|
minimum_width = 48,
|
|
template0 = [[~/.icons/mabox-logo-square.svg]],
|
|
template1 = [[48x48]],
|
|
|
|
draw_borders = false,
|
|
border_inner_margin = 0,
|
|
border_outer_margin = 0,
|
|
border_width = 0,
|
|
background = true,
|
|
no_buffers = true,
|
|
imlib_cache_size = 0,
|
|
double_buffer = true,
|
|
update_interval = 0.6,
|
|
};
|
|
|
|
conky.text = [[
|
|
${image ${template0} -s ${template1}}
|
|
]];
|
|
EOF
|
|
}
|
|
mkmenu() {
|
|
case "$LANG" in
|
|
pl*)
|
|
cp /usr/share/mabox/lang/pl/.config/conky/menuscripts/Mabox_logo_SVG.csv ~/.config/conky/menuscripts/Mabox_logo_SVG.csv
|
|
;;
|
|
*)
|
|
cp /usr/share/mabox/lang/en/.config/conky/menuscripts/Mabox_logo_SVG.csv ~/.config/conky/menuscripts/Mabox_logo_SVG.csv
|
|
;;
|
|
esac
|
|
}
|
|
size () {
|
|
sd "minimum_height.*$" "minimum_height = ${1}," ${CONKYLOGO}
|
|
sd "minimum_width.*$" "minimum_width = ${1}," ${CONKYLOGO}
|
|
sd "template1 =.*$" "template1 = [[${1}x${1}]]," ${CONKYLOGO}
|
|
}
|
|
type () {
|
|
case "$1" in
|
|
square)
|
|
sd "template0 =.*$" "template0 = [[~/.icons/mabox-logo-square.svg]]," ${CONKYLOGO}
|
|
;;
|
|
3d)
|
|
sd "template0 =.*$" "template0 = [[~/.icons/mabox-logo-3d.svg]]," ${CONKYLOGO}
|
|
;;
|
|
circle)
|
|
sd "template0 =.*$" "template0 = [[~/.icons/mabox-logo-circle.svg]]," ${CONKYLOGO}
|
|
;;
|
|
esac
|
|
}
|
|
init(){
|
|
mklogos default
|
|
mkconky
|
|
mkmenu
|
|
}
|
|
revcolors () {
|
|
mklogos all ${logo_out_color} ${logo_out_opacity} ${logo_in_color} ${logo_in_opacity}
|
|
}
|
|
|
|
case "$1" in
|
|
init) init;;
|
|
size)size "$2";;
|
|
type)type "$2";;
|
|
revcolors)revcolors;;
|
|
*)mklogos "$1" "$2" "$3" "$4" "$5";;
|
|
esac
|
|
|