Fluxbox - Slideshow de wallpapers aleatórios
Publicado por Sandro Marcell (última atualização em 07/11/2010)
[ Hits: 5.087 ]
Homepage: http://sanmarcell.wordpress.com
Script em zsh que uso para "montar" um slideshow de wallpapers aleatórios e que são trocados (via cron) a cada 15 minutos, sem repetir o último usado aqui no meu Fluxbox.
Para usá-lo é necessário o programa 'feh'.
Apesar do Fluxbox possuir o programa 'fbsetbg' que com a opção '-r' "randomiza" wallpapers, resolvi implementar minha própria versão porque gosto muito do zsh! =P
Falou!!!
#!/bin/zsh -f
#
# Fluxbox - Slideshow de wallpapers aleatorios =)
#
# Sandro Marcell <sandro_marcell@yahoo.com.br>
# Boa Vista, Roraima - 15/02/2010
#
# Agendamento via cron:
# 0-59/15 * * * * DISPLAY=:0.0 /path/script
#
# Dependencia:
# feh - image viewer and cataloguer <https://derf.homelinux.org/projects/feh/>
#
PATH="/bin:/usr/bin:/usr/local/bin"
[ $DISPLAY ] || exit 1
RANDOM=$$
wallpapers_dir="${HOME}/imagens/wallpapers" # Altere conforme o seu!
walls=(${wallpapers_dir}/*)
last_used_wallpaper=${(f)$(<${HOME}/.fehbg)}
function arrayShuffle {
integer n k
typeset -a array swap
array=(${*=})
(( n = $#array + 1 ))
while (( n > 1 ))
do
(( --n ))
(( k = (RANDOM * n / (32767 + 1)) + 1 ))
swap+=($array[k])
array[k]=$array[n]
array[n]=$swap
done
randomized=($swap[@])
}
arrayShuffle "$walls[@]:t"
while true
do
{
(( wallpaper = (RANDOM * $#walls / (32767 + 1)) + 1 ))
[[ "$randomized[wallpaper]" == "${last_used_wallpaper##*/}" ]] && continue
} always {
feh --bg-scale "${wallpapers_dir}/$randomized[wallpaper]" && xrefresh
break
}
done
exit $status
Programação do Dia da Tv Aberta
Pequeno, simples mas interessante chat desenvolvido totalmente em shell script.
Ajuste de horário e sincronismo
mailnow - Envia mensagens pelo shell
Backup e PHP conbinação explosiva.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (5)
Instalação do cosmic no archlinux (0)
Formas seguras de instalar Debian Sid [RESOLVIDO] (14)









