Forum Linux.gui gconftool wallpaper

Posté par  .
Étiquettes : aucune
0
6
mar.
2009
Bonsoir,

Jusqu' à présent j'avais un cron qui changeait mon fond d'ecran en piochant dans un repertoire de photo, lancé par un cron.
Aujourd'hui ça ne fonctionne plus.
La commande est bien lancé par le cron mais le fond d'ecran de change pas.
Par contre, si dans un terminal, durant la session je lance mon script ca fonctionne.
Donc j'ai essayé avec un xhost - et un DISPLAY=:0, meme chose, hors session, cela ne me change pas le fond d'écran.

Auriez vous une piste ?

En vous remerciant

gnome 2.2.23
Debian GNU/Linux squeeze/sid \n \l
gconftool-2 2.24.0
  • # path

    Posté par  . Évalué à 2.

    j'ai eu ce genre de probleme, c'était le path pas recupéré pour le cron.
    Un moyen est de mettre les commandes du script avec leur chemin complet.
    • [^] # Re: path

      Posté par  . Évalué à 1.

      Non je ne pense pas, tout est en dur


      #!/bin/bash
      #set -x

      export WALL_DIR='/data/Photos/'
      export TMP_FILE=`mktemp`

      #find ${WALL_DIR} -type f -name "*jpg" | nl -s: -n rz > ${TMP_FILE}
      find ${WALL_DIR} -type f | grep -v "/_" | nl -s: -n rz > ${TMP_FILE}
      NB=`wc -l ${TMP_FILE} | cut -d' ' -f1`
      let num=$RANDOM%$NB
      wallpaper=`grep -e "^0*$num:" ${TMP_FILE} | cut -d: -f2-`
      file "$wallpaper"|grep -qi image
      if [ $? -eq 0 ]; then
      /usr/bin/gconftool-2 -t sting --set /desktop/gnome/background/picture_filename "${wallpaper}"
      /usr/bin/gconftool-2 -t sting --set /desktop/gnome/background/picture_options "scaled"
      fi
      rm ${TMP_FILE}

      • [^] # Re: path

        Posté par  . Évalué à 1.

        /usr/bin/gconftool-2 -t sting --set /desktop/gnome/background/picture_filename "${wallpaper}"

        Il n'y aurait pas une faute de frappe ?
        L'option est "string" et non "sting"
        • [^] # Re: path

          Posté par  . Évalué à 1.

          Oui, entre autre c'est vrai...
          Mais j'ai trouvé
          merci

          https://bugs.launchpad.net/ubuntu/+source/gconf/+bug/285937
          • [^] # Re: path

            Posté par  . Évalué à 1.

            Ca marche en ayant rajouté ce qui suit en début de script


            export DISPLAY=0

            while read line ; do
            echo $line | grep -vqe "^#"
            if [ $? -eq 0 ]; then export $line; fi
            done < ~/.dbus/session-bus/$(cat /var/lib/dbus/machine-id)-$DISPLAY
  • # path

    Posté par  . Évalué à 0.

    j'ai eu ce probleme: c'etait le path , non recupéré par le cron.
    un moyen est de mettre des chemins absolus au commandes du script.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.