This commit is contained in:
Slava Rogozhkin 2025-08-18 19:37:18 +03:00
parent f5745e6e8a
commit cc9a398c14
1 changed files with 56 additions and 2 deletions

58
cw
View File

@ -3,6 +3,60 @@
# исходя из параметров подключенных мониторов устанавливает соответствующие обои. # исходя из параметров подключенных мониторов устанавливает соответствующие обои.
# #
# TO-DO # TO-DO
# [ ] - Определение данных исходного изображения: получение ширины и высоты # [X] - Определение данных исходного изображения: получение ширины и высоты
# [ ] - Определение вертикальности изображения: если ширина больше высоты -> горизонтальное, иначе вертикальное # [X] - Определение вертикальности изображения: если ширина больше высоты -> горизонтальное, иначе вертикальное
# [ ] - Определение данных о мониторах: имя, вертикальность # [ ] - Определение данных о мониторах: имя, вертикальность
# [X] - Проверка зависимостей: feh, ffmpeg, X11
# [ ] - Определение соответствия изображения параметрам монитора
# [ ] - Установка изображний на рабочий стол
# [X] - Получение пути изображения
# Проверка зависимостей
requirements_apps=('feh' 'ffmpeg' 'xdpyinfo' 'awk')
for app in ${requirements_apps[@]}; do
if [ ! $app -version &> /dev/null ] || [ $app --version &> /dev/null ]; then
echo "$app not installed"
exit 1
fi
done
# Проверка сессии (Х11)
if [ $XDG_SESSION_TYPE != 'x11' ]; then
echo "For X.Org"
exit 1
fi
IMGSTORAGE="$HOME/vault/wallpaper"
get_path_img() {
find "$IMGSTORAGE" -type f | shuf -n 1
}
get_width_img() {
ffprobe -v error -select_streams v:0 -show_entries stream=width -of default=nw=1:nk=1 '"$1"'
}
get_height_img() {
ffprobe -v error -select_streams v:0 -show_entries stream=height -of default=nw=1:nk=1 '"$1"'
}
get_orientation_img() {
if [ "$1" > "$2" ]; then
printf 'horizontal'
else
printf 'vertical'
fi
}
get_width_mon() {
xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $1}'
}
get_height_mon() {
xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $2}'
}
# VAR
for i in {1..100}; do
img=$(get_path_img)
orientation_img=$(get_orientation_img $(get_width_img $img) $(get_height_img $img))
echo $img $orientation_img | grep 'vertical'
done