Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

1. Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Morpheus
Minions

(usa Nenhuma)

Enviado em 02/06/2020 - 16:04h




No 10, você escolhe a pasta das imagens e o tempo para aparece na tela do Desktop.

Tem como fazer isso no Fluxbox?




Obrigado


  


2. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Giovanni  M
Giovanni_Menezes

(usa Void Linux)

Enviado em 02/06/2020 - 16:14h

Por script.

Já te passei o script em tópicos anteriores sobre fluxbox.


3. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Giovanni  M
Giovanni_Menezes

(usa Void Linux)

Enviado em 02/06/2020 - 19:54h

Você precisa criar o arquivo de texto vazio, exemplo nano wall.txt no diretorio /home/user/Wallpaper, como no meu caso



#!/bin/bash

while :; do

feh --bg-fill -f /home/user/Wallpaper/.wall.txt
sleep 2m
for i in /home/user/Wallpaper/*.*; do

feh --bg-fill "$i"
echo "$i"
echo -n > /home/user/Wallpaper/.wall.txt
echo "$i" > /home/user/Wallpaper/.wall.txt
#sleep 0.05
sleep 3m
done

done


Depois você adicona as imagens no diretorio Wallpaper ou em outro local dependendo de como vc deixo o script.


4. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Giovanni  M
Giovanni_Menezes

(usa Void Linux)

Enviado em 02/06/2020 - 19:57h

obs: o arquivo txt serve para guardar o ultimo wallpaper na reinicialização, se nada aparecer, pode ser pelo fato do script estar sendo executado pela primeira vez, basta aguardar 2 minutos que vai começar.


5. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Morpheus
Minions

(usa Nenhuma)

Enviado em 02/06/2020 - 20:40h


Giovanni_Menezes escreveu:

obs: o arquivo txt serve para guardar o ultimo wallpaper na reinicialização, se nada aparecer, pode ser pelo fato do script estar sendo executado pela primeira vez, basta aguardar 2 minutos que vai começar.




Obrigado em responde ao tópico.

Poderia comentar o script

No lugar do for não seria melhor usar o while para ler o arquivo por causa da memória ram



A parte relacionada a escolha do ajuste da imagem no 10 fica onde no script?

# Preencher
# Ajustar
# Ampliar
# Lado a lado
# Centralizar
# Estender


Tem dois sleep?

Como mudar o tempo no script?

# 1 minuto
# 10 minutos
# 30 minutos
# 1 hora
# 6 horas
# 1 dia


onde fica a parte de ordem aleatória?


6. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Giovanni  M
Giovanni_Menezes

(usa Void Linux)

Enviado em 02/06/2020 - 21:00h

Poderia comentar o script

No lugar do for não seria melhor usar o while para ler o arquivo por causa da memória ram


A quantidade de ram usada é baixa, insignificante diria, estou com essa máquina ligada a horas usando o script e esta
consumindo pouco mais de 12 mbs.



A parte relacionada a escolha do ajuste da imagem no 10 fica onde no script?

# Preencher
# Ajustar
# Ampliar
# Lado a lado
# Centralizar
# Estender


Essa parte e no Feh, veja a sessão Set the wallpaper na wiki do Arch
https://wiki.archlinux.org/index.php/feh

Veja a opção desejada e altere aqui:

feh --bg-fill -f /home/user/Wallpaper/.wall.txt


Tem dois sleep?


Sim, mas o primeiro só se aplica após o reboot, o wallpaper anterior antes do reboot permanece 2 muitos antes de passar para o próximo, você pode remover essa "persistência" se quiser


Como mudar o tempo no script?

# 1 minuto
# 10 minutos
# 30 minutos
# 1 hora
# 6 horas
# 1 dia


E só alterar o sleep
https://www.vivaolinux.com.br/dica/O-comando-sleep-dormir-minutos-horas-ou-ate-dias-nao-apenas-segun...


onde fica a parte de ordem aleatória?


O comando For vai passar um por um, não lembro se ele vai seguir ordem alfabética ou por data do arquivo, em todo caso ele só começa a repetir depois que todas as imagens foram postadas.

for i in /home/user/Wallpaper/*.*; do

feh --bg-fill "$i"


É um script bem simples, eu fiz só para as minhas necessidades, não tem comentário pq nunca pensei em "compartilhar" e também não tenho experiência em shell script, certamente cabe muitas melhorias mas para o que eu queria estava de bom tamanho.




7. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Mauricio Ferrari
mauricio123

(usa Slackware)

Enviado em 02/06/2020 - 21:24h


Giovanni_Menezes escreveu:

Você precisa criar o arquivo de texto vazio, exemplo nano wall.txt no diretorio /home/user/Wallpaper, como no meu caso



#!/bin/bash

while :; do

feh --bg-fill -f /home/user/Wallpaper/.wall.txt
sleep 2m
for i in /home/user/Wallpaper/*.*; do

feh --bg-fill "$i"
echo "$i"
echo -n > /home/user/Wallpaper/.wall.txt
echo "$i" > /home/user/Wallpaper/.wall.txt
#sleep 0.05
sleep 3m
done

done


Depois você adicona as imagens no diretorio Wallpaper ou em outro local dependendo de como vc deixo o script.



Até que tá bom. Com certeza o feh é o que aplica os wallpapers.

___________________________________
Conhecimento não se Leva para o Túmulo.


8. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Morpheus
Minions

(usa Nenhuma)

Enviado em 02/06/2020 - 22:07h


Giovanni_Menezes escreveu:


No lugar do for não seria melhor usar o while para ler o arquivo por causa da memória ram


A quantidade de ram usada é baixa, insignificante diria, estou com essa máquina ligada a horas usando o script e esta
consumindo pouco mais de 12 mbs.



E ser a pessoa tiver 80 mil ou mais wallpaper na pasta (for ou while?) para a memória ram?




A parte relacionada a escolha do ajuste da imagem no 10 fica onde no script?

# Preencher
# Ajustar
# Ampliar
# Lado a lado
# Centralizar
# Estender


Essa parte e no Feh, veja a sessão Set the wallpaper na wiki do Arch
https://wiki.archlinux.org/index.php/feh

Veja a opção desejada e altere aqui:

feh --bg-fill -f /home/user/Wallpaper/.wall.txt



Como seria a equivalência? Isso esta correto?

Preencher (--bg-fill )
Ajustar ()
Ampliar (--bg-max)
Lado a lado (--bg-tile)
Centralizar (--bg-center)
Estender ()

--bg-scale







Tem dois sleep?


Sim, mas o primeiro só se aplica após o reboot, o wallpaper anterior antes do reboot permanece 2 muitos antes de passar para o próximo, você pode remover essa "persistência" se quiser


Como mudar o tempo no script?

Vai fica faltando sleep

# 1 hora
# 6 horas
# 1 dia



E só alterar o sleep
https://www.vivaolinux.com.br/dica/O-comando-sleep-dormir-minutos-horas-ou-ate-dias-nao-apenas-segun...




Qual deles sleep 2m ou sleep 3m ?





onde fica a parte de ordem aleatória?


O comando For vai passar um por um, não lembro se ele vai seguir ordem alfabética ou por data do arquivo , em todo caso ele só começa a repetir depois que todas as imagens foram postadas.

for i in /home/user/Wallpaper/*.*; do

feh --bg-fill "$i"


Pensei que o tal nitrogen tinha essa função nas suas opções (imagem aleatória na tela ).




É um script bem simples, eu fiz só para as minhas necessidades, não tem comentário pq nunca pensei em "compartilhar" e também não tenho experiência em shell script, certamente cabe muitas melhorias mas para o que eu queria estava de bom tamanho.

Comentar o código é muito importante para uma futura manutenção, mesmo que seja para uso pessoal. Ideia do Morimoto





9. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Giovanni  M
Giovanni_Menezes

(usa Void Linux)

Enviado em 02/06/2020 - 22:33h

Vamos lá jovem, não da para ficar no ninho para sempre, tem que saltar da arvore e bater as asas também.

Pense, uma vez que você já sabe os comando, onde você pode conseguir descobrir o que fazem ? google


https://linux.die.net/man/1/feh
Sessão
Background Setting

Lá tem o detalhamento, você também poderia fazer uma tentativa no terminal só com simples comando com uma imagem de testes para ver.

Não vou mastigar mais que isso, boa sorte.



10. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Morpheus
Minions

(usa Nenhuma)

Enviado em 02/06/2020 - 23:23h

Ainda não entendi muito bem a lógica dos 2 loops: while e depois o for.

Roda duas vezes o feh?

Vou passar para o programa xmind o script

https://www.xmind.net/download/


Tem que colocar o loop?

-z , --randomize
Ao exibir vários arquivos em uma apresentação de slides , escolha aleatoriamente a lista de arquivos antes de exibir.


11. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Morpheus
Minions

(usa Nenhuma)

Enviado em 15/06/2020 - 14:44h


Giovanni_Menezes escreveu:

Você precisa criar o arquivo de texto vazio, exemplo nano wall.txt no diretorio /home/user/Wallpaper, como no meu caso



#!/bin/bash

while :; do

feh --bg-fill -f /home/user/Wallpaper/.wall.txt
sleep 2m
for i in /home/user/Wallpaper/*.*; do

feh --bg-fill "$i"
echo "$i"
echo -n > /home/user/Wallpaper/.wall.txt
echo "$i" > /home/user/Wallpaper/.wall.txt
#sleep 0.05
sleep 3m
done

done


Depois você adicona as imagens no diretorio Wallpaper ou em outro local dependendo de como vc deixo o script.




Obrigado em responde ao tópico.

O script ate faz o tal loop ...

Não esta pegando o papel de parede do arquivo ~/.fluxbox/lastwallpaper após "fazer logout" ou reboot no sistema.




12. Re: Plano de fundo (wallpaper) aleatório no Fluxbox tipo Windows 10

Giovanni  M
Giovanni_Menezes

(usa Void Linux)

Enviado em 15/06/2020 - 16:42h

#!/bin/bash

while :; do

feh --bg-fill -f /home/user/Wallpaper/.wall.txt (Coloque o endereço do wallpaper que vc quer fixo após o reboot, exemplo /homer/user/image.png)


sleep 2m (esse walpaper vai ficar na tela por 2 minutos)


for i in /home/user/Wallpaper/*.*; do (a partir daqui para abaixo o wallpaper é aleatorio)

feh --bg-fill "$i"
echo "$i"
echo -n > /home/user/Wallpaper/.wall.txt
echo "$i" > /home/user/Wallpaper/.wall.txt
#sleep 0.05
sleep 3m
done

done



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts