Fluxbox - Slideshow de wallpapers aleatórios
Publicado por Sandro Marcell (última atualização em 07/11/2010)
[ Hits: 4.684 ]
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
Verifica quais ports necessitam de atualização
Gerar senhas aleatórias de qualquer tamanho
Firewall com proxy transparente completo
Agora temos uma assistente virtual no fórum!!! (247)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Lançado Ubuntu 24.04 Final (5)
redirecionando saida de comando touch para o AWK[AJUDA] (1)
iso de sistema 32 bit em atividade (14)
conflicting values set for option signed-by regarding source (1)