Kirjoittaja Aihe: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla  (Luettu 7676 kertaa)

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Olen tehnyt Lubuntu 16.04:een forumilla olevista ohjeista scriptin joka hakee Forecan sääennusteen ja liittää sen taustakuvaan.
Komentoriviltä ajettaessa scripti toimii mutta kun laitan cronin ajamaan sen tasatunnein niin taustakuva ei päivity. Noutaa kyllä kuvat ja liittää ne.

Tämä scriptin rivi asettaa taustakuvan
Koodia: [Valitse]
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit
crontab -e
Koodia: [Valitse]
0 * * * * /home/user/.taustakuva/saaforeca.sh
Eikö tuo cron ajetakkin user käyttäjänä?
Ihan kuin cron ei tietäisi kenen taustakuva päivitetään.
« Viimeksi muokattu: 26.06.16 - klo:17.25 kirjoittanut JJK »

raimo

  • Käyttäjä
  • Viestejä: 4155
  • openSUSE Tumbleweed
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #1 : 23.06.16 - klo:10.51 »
Olen tehnyt Lubuntu 16.04:een forumilla olevista ohjeista scriptin joka hakee Forecan sääennusteen ja liittää sen taustakuvaan.
Komentoriviltä ajettaessa scripti toimii mutta kun laitan cronin ajamaan sen tasatunnein niin taustakuva ei päivity. Noutaa kyllä kuvat ja liittää ne.

Tämä scriptin rivi asettaa taustakuvan
Koodia: [Valitse]
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit
crontab -e
Koodia: [Valitse]
0 * * * * /home/user/.taustakuva/saaforeca.sh
Eikö tuo cron ajetakkin user käyttäjänä?
Ihan kuin cron ei tietäisi kenen taustakuva päivitetään.

Varmistuksena että eihän crontabissa oikeasti ole polussa user vaan sen tilalla jk ? Eli näin:
Koodia: [Valitse]
0 * * * * /home/jk/.taustakuva/saaforeca.sh
Onhan saaforeca.sh tiedostolla suoritusoikeudet?
Koodia: [Valitse]
chmod +x /home/jk/.taustakuva/saaforeca.sh
Laita koko skripti näkyville, vika voi olla siinäkin.
Tietä käyden tien on vanki. Vapaa on vain umpihanki.
Aaro Hellaakoski

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #2 : 25.06.16 - klo:00.10 »
Crontabissa on oikea polku. Tuli äpähuomiossa kopioitua eräänlaisista muistiinpanoista.
Koodia: [Valitse]
0 * * * * /home/jk/.taustakuva/saaforeca.sh
Tässä vielä scripti
Koodia: [Valitse]
#!/bin/bash
wget -q -O /home/jk/.taustakuva/Kiiminki-saa.png http://www.foreca.fi/meteogram.php?loc_id=100652858&lang=fi
sleep 5
convert /home/jk/.taustakuva/Kiiminki-saa.png -density 300 -quality 100 -trim -bordercolor white -border 5 -bordercolor none -border '10x35' /home/jk/.taustakuva/Kiiminki-saa.png
convert /home/jk/.taustakuva/lines-wallpaper_1920x1200.png /home/jk/.taustakuva/Kiiminki-saa.png -gravity SouthEast -composite -format png -quality 100 /home/jk/.taustakuva/saa.png
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

Scriptille on annettu suoritusoikeudet kaikille.
Annoin vielä varalta tämän
Koodia: [Valitse]
chmod +x /home/jk/.taustakuva/saaforeca.shMutta taustakuva ei päivity cronilla.
« Viimeksi muokattu: 25.06.16 - klo:00.14 kirjoittanut JJK »

jekku

  • Käyttäjä
  • Viestejä: 2624
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #3 : 25.06.16 - klo:08.35 »
....
Mutta taustakuva ei päivity cronilla.

Eli kuvan aikaleima ei muutu, mutta kun ajat skriptin käsin, niin päivittyy?
Kuinkahan usein tuo kuva muuten päivittynee forecan sivulla.

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #4 : 25.06.16 - klo:09.25 »
Siis kuvat kyllä päivittyy. Mutta tämä rivi ei vaihda taustakuvaa cronilla ajettaessa
Koodia: [Valitse]
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

jarmala

  • Käyttäjä
  • Viestejä: 773
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #5 : 25.06.16 - klo:21.50 »
Siis kuvat kyllä päivittyy. Mutta tämä rivi ei vaihda taustakuvaa cronilla ajettaessa
Koodia: [Valitse]
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

Tuolla kerrotaan, mikä se taustakuva on. Onko siihen mahdollista lisätä jotain "reload" -parametria?
Ubuntu 18.04 LTS, Gnome Flashback Metacity, Xeon E3-1245 V2, 8 GB
Ubuntu 22.04 LTS, KDE Plasma, Celeron N5105, 8 GB

mrl586

  • Käyttäjä
  • Viestejä: 4638
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #6 : 26.06.16 - klo:02.00 »
Ainakin variety kykenee vaihtamaan taustakuvan automaattisesti.

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #7 : 26.06.16 - klo:15.30 »
Eikö tuo cron ajetakkin user käyttäjänä?
Ihan kuin cron ei tietäisi kenen taustakuva päivitetään.

Cronin kautta ajettuna skripti ei saa mitään X-palvelimeen tai työpöytäympäristöön liittyviä ympäristömuuttujia, ja muiden työpöytäohjelmien tapaan pcmanfm kaipaa todennäköisesti DISPLAY-muuttujaa. Kokeile näin:

Koodia: [Valitse]
DISPLAY=:0.0 pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: Forecan sääennuste taustakuvaan cronilla
« Vastaus #8 : 26.06.16 - klo:17.24 »

Cronin kautta ajettuna skripti ei saa mitään X-palvelimeen tai työpöytäympäristöön liittyviä ympäristömuuttujia, ja muiden työpöytäohjelmien tapaan pcmanfm kaipaa todennäköisesti DISPLAY-muuttujaa. Kokeile näin:

Koodia: [Valitse]
DISPLAY=:0.0 pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

Hienoa.
Jotain tälläistä ajattelinkin mutta en tajunnut sen liittyvän DISPLAYhin.
Kiitos.
Nyt toimii.

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #9 : 19.09.17 - klo:21.17 »
Avataas tämä vanha aihe uudelleen.

Jokin aika sitten päivitysten jälkeen scripitin suorituksesta avautuu aina uusi virhe-ikkuna: Työpöydänhallinta ei ole käytössä
Eikä työpöydäntaustakuva päivity.

Virhe tulee display muuttujasta
Koodia: [Valitse]
DISPLAY=:0.0
Mistä asiaa vois tarkemmin tutkia?

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #10 : 19.09.17 - klo:21.59 »
Avataas tämä vanha aihe uudelleen.

Jokin aika sitten päivitysten jälkeen scripitin suorituksesta avautuu aina uusi virhe-ikkuna: Työpöydänhallinta ei ole käytössä
Eikä työpöydäntaustakuva päivity.

Virhe tulee display muuttujasta
Koodia: [Valitse]
DISPLAY=:0.0
Mistä asiaa vois tarkemmin tutkia?

Kuulostaa ennemmin siltä, että pcmanfm ei vain onnistu asettamaan taustakuvaa, koska se ei vastaa työpöydän taustan piirtämisestä. Vai toimiiko tämä komento päätteessä ajettuna herjaamatta tuota samaa?

Koodia: [Valitse]
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #11 : 19.09.17 - klo:22.01 »

Kuulostaa ennemmin siltä, että pcmanfm ei vain onnistu asettamaan taustakuvaa, koska se ei vastaa työpöydän taustan piirtämisestä. Vai toimiiko tämä komento päätteessä ajettuna herjaamatta tuota samaa?

Koodia: [Valitse]
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

Toimii päättessä herjaamatta virheistä.

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #12 : 19.09.17 - klo:22.34 »
Ok. Mikä DISPLAY siellä sitten on käytössä, jos tarkistat päätteessä:

Koodia: [Valitse]
echo $DISPLAY
Kokeile samaa arvoa cronjobissa.

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #13 : 20.09.17 - klo:15.02 »
Koodia: [Valitse]
echo $DISPLAY
:0.0
Sama näyttäs vielä olevan.

Tämäkin toimii samoin.
Koodia: [Valitse]
export DISPLAY=:0.0
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

Jos tuon scriptin ajaa itse päätteessä niin toimii hyvin. Mutta miksi cronilla ei toimi??
« Viimeksi muokattu: 20.09.17 - klo:18.11 kirjoittanut JJK »

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #14 : 20.09.17 - klo:18.20 »
Ilmeisesti muuttunut versiopäivitysten myötä niin, että myös ympäristömuuttujat XDG_RUNTIME_DIR (ja ehkä XAUTHORITY) tarvitaan:

https://stackoverflow.com/questions/45873124/pcmanfm-set-wallpaper-fails-on-raspbian-stretch-in-cron

Lainaus
I had exactly the same issue, except I am running Lubuntu 17.04. It appeared lately after a recent update, though cannot pinpoint when. After lot's of research I became suspicious that one of the XDG enviromental variables must be exported too. Following some trial and error, I found that exporting XDG_RUNTIME_DIR solved the problem for me. You may want to give it a try.

To figure out the value run: echo $XDG_RUNTIME_DIR

The working wallpaper changer running from cron for me now looks like:

Koodia: [Valitse]
#!/bin/bash

export DISPLAY=:0
export XAUTHORITY=/home/krisz/.Xauthority
export XDG_RUNTIME_DIR=/run/user/1000
pcmanfm --set-wallpaper=${dir}/${file} --wallpaper-mode=crop

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #15 : 20.09.17 - klo:18.41 »
Kiitti taas paljon nm

Näillä toimii:
Koodia: [Valitse]
export DISPLAY=:0.0
export XDG_RUNTIME_DIR=/run/user/1000
pcmanfm --set-wallpaper=/home/jk/.taustakuva/saa.png --wallpaper-mode=fit

XAUTHORITY ei näytä tarvivan.

Jtkone

  • Käyttäjä
  • Viestejä: 876
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #16 : 22.09.17 - klo:17.12 »
Sorry JJK, että sekaannun tähän ketjuun, mutta miten tuon Forecan location id saa selville?
Laitoin nimittäin itselleni tämän ketjun innoittamana saman. Hyvin toimii, mutta paikkakunta ei täsmää.

JJK

  • Käyttäjä
  • Viestejä: 359
  • Ubuntu Mate 22.04
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #17 : 22.09.17 - klo:22.12 »
Näyttää muuttuneen sivustokin jotenkin siitä, kun minä omani tein.

Mutta etsi paikka ja "+lisää omasäähän"
Omasää näkyy pienessä ruudussa ja sen alaosassa on poistalinkki.
Mene linkin päälle niin näet osoitteen
Minulla "http://www.foreca.fi/Finland/Kiiminki?rem=100652858"

Jtkone

  • Käyttäjä
  • Viestejä: 876
    • Profiili
Vs: [Ratkaistu] Forecan sääennuste taustakuvaan cronilla
« Vastaus #18 : 29.09.17 - klo:16.00 »
Kiitos JJK. Nyt toimii kotipaikkakunnan sääennuste.