FiP_ Posted April 18, 2007 Share Posted April 18, 2007 Bonsoir à tous, je me suis recement remis à linux, avec une debian (testing) et fluxbox. J'ai un petit soucis dans fluxbox, en ce qui concerne les fonds d'écran : - j'ai un dossier "WALLPAPERS", où sont stockées toutes les jolies images qui font la bonne taille - pour changer de fond d'écran, je fait : fbsetbg -r /mnt/auto/winD/WALLPAPERS - parfois, j'obtient un message d'erreur en faisant cette commande. En effet, le dossier WALLPAPERS contient des sous dossiers. Quand fbsetbg tombe par hasard sur un nom de dossier dans WALLPAPERS, au lieu d'un fichier image, forcement ça ne marche pas. Existe t il un moyen (astuce / script / option de fbsetbg que j'aurais manquée) pour que fbsetbg choisisse une image au hasard dans WALLPAPERS, ainsi que dans tous ses sous dossiers ? edit: ajouté "[résolu] au titre" Link to comment Share on other sites More sharing options...
Daemonium Posted April 20, 2007 Share Posted April 20, 2007 Au bol : fbsetbg -r /mnt/auto/winD/WALLPAPERS/*/*.png /mnt/auto/winD/WALLPAPERS/*/*.jpg /mnt/auto/winD/WALLPAPERS/*.png /mnt/auto/winD/WALLPAPERS/*.jpg Mais je connais pas vraiment le système, donc c'est à essayer quoi :) Link to comment Share on other sites More sharing options...
FiP_ Posted April 20, 2007 Author Share Posted April 20, 2007 Malheureusement ça ne marche pas.. fbsetbg c'est un script, je suppose que je vais devoir le modifier pour qu'il sache gérer les sous dossiers. Merci en tout cas. :) Link to comment Share on other sites More sharing options...
Daemonium Posted April 20, 2007 Share Posted April 20, 2007 Ben poste le script ici, on sait jamais Link to comment Share on other sites More sharing options...
FiP_ Posted April 20, 2007 Author Share Posted April 20, 2007 Ok c'est résolu (a peu près) J'ai trouvé, dans fbsetbg, la partie qui choisi un fichier au hasard : # random wallpaper code if [ "$option" = random ]; then # Lets make one thing clear... wallpaperdir=$wallpaper if [ -z "$wallpaperdir" ]; then message "No random wallpaper directory specified." exit 1 fi if [ -d "$wallpaperdir" ]; then number_of_wallpapers=`ls $wallpaperdir|wc -l` if find_it random_number; then randomnumber=$(random_number) # some shells don't support $RANDOM elif [ -z $RANDOM ]; then randomnumber=`(echo $$;time ps; w; date )2>&1 | cksum | cut -f1 -d' '` else randomnumber=$RANDOM fi wallpapernumber=`expr $randomnumber % $number_of_wallpapers + 1` #remember previous wallpaper if [ ! "$remember" = false ]; then remembercommand fi remember=false #set -x wallpaper="$wallpaperdir/`ls $wallpaperdir|sed -n ${wallpapernumber}p`" option='$aspect' # have to choose something... else message "Invalid random wallpaper directory specified." exit 1 fi fi J'ai copié fbsetbg dans un "fbsetbg-manu", et j'ai rajouté ça : (...) remember=false #set -x wallpaper="$wallpaperdir/`ls $wallpaperdir|sed -n ${wallpapernumber}p`" option='$aspect' # have to choose something... if [ -d "$wallpaper" ]; then fbsetbg -r $wallpaper exit 0 fi else message "Invalid random wallpaper directory specified." exit 1 fi C'est assez simple en fait, je teste si le "fichier" qu'il a choisi au hasard est un dossier, et si oui je relance le script sur ce dossier là. Qu'en pensez vous ? Ce qui m'ennuie, c'est que si fbsetbg est mis à jour je devrais le refaire. Je devrais peut être proposer cet ajout sur le forum de fluxbox Link to comment Share on other sites More sharing options...
Daemonium Posted April 20, 2007 Share Posted April 20, 2007 Joli ! Ben hésites pas, c'est une amélioration fort utile je pense :) Link to comment Share on other sites More sharing options...
lorinc Posted April 20, 2007 Share Posted April 20, 2007 oui, l'idée est bonne, envoie le patch aux devs, je penses qu'ils incluront Link to comment Share on other sites More sharing options...
FiP_ Posted April 20, 2007 Author Share Posted April 20, 2007 oui, l'idée est bonne, envoie le patch aux devs, je penses qu'ils incluront Ok j'en ai parlé ici: http://sourceforge.net/forum/message.php?msg_id=4272069 (pour ceux que ça intéresse ^^) Edit : a zut je viens de me rendre compte que j'ai mis "fbsetbg -r $wallpaper" au lieu de "fbsetbg-manu -r $wallpaper" (la version modifiée). Ce qui signifie que s'il y a des sous-sous-dossiers, ça pourrait faire un message d'erreur encore. Mais bon c'est rapide à changer. Link to comment Share on other sites More sharing options...
tuXXX Posted April 20, 2007 Share Posted April 20, 2007 Ok j'en ai parlé ici: http://sourceforge.net/forum/message.php?msg_id=4272069 (pour ceux que ça intéresse ^^) Je te propose "exit $?" à la place du "exit 0" après "fbsetbg -r $wallpaper" Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.