Zmieniaj─ůca si─Ö tapeta

Automatyczna zmiana tapety - obrazek pobierany z National Geographic

Nawet naj┼éadniejsza babka na tapecie po pewnym czasie si─Ö nudzi. Je┼╝eli masz dost─Öp do internetu online, mo┼╝na pokusi─ç si─Ö o codzienn─ů zmian─Ö tapety na inn─ů.

Ten dokument prezentuje automatyczne pobieranie obrazka z internetu. Je┼╝eli ma by─ç wy┼Ťwietlany obrazek ze zbioru zgromadzonych zdj─Ö─ç na dysku - odsy┼éam do tego dokumentu

W tym przypadku wykorzystany został codziennie aktualizowany obrazek dnia z National Geographic.
Poniewa┼╝ m├│j laptop ma ekran panoramiczny 1280x800, dodane zosta┼éo jeszcze odpowiednie przeskalowanie obrazka. W u┼╝ywanym ┼Ťrodowisku graficznym nale┼╝y ustawi─ç na sta┼ée tapet─Ö na plik /tmp/tapeta.jpg a poni┼╝sz─ů zawarto┼Ť─ç umie┼Ťci─ç w /etc/network/if-up.d w pliku tapeta:


    #!/bin/sh
    if [ x$IFACE != x"lo" ]; then
    
        TAPETA=/tmp/t.jpg
                            
        wget -q -O- "http://photography.nationalgeographic.com/photography/photo-of-the-day?nav=TOPNAV" \
            | grep /photography/wallpaper/ \
            | sed -r 's/.*href="(.*)">W.*/http:\/\/photography.nationalgeographic.com\1/g' \
            > /tmp/url
        				 
        wget -q -O- -i /tmp/url \
            | grep "1280 x 1024" \
            | sed -r 's/.*href="(.*)"><img.*/http:\/\/photography.nationalgeographic.com\1/g' \
            > /tmp/url1
    							     
        if [ -s /tmp/url1 ]; then
            wget -i /tmp/url1 -O $TAPETA > /dev/null 2>&1
            if [ -s $TAPETA ]; then
                    convert $TAPETA -crop 1280x800+0+80 /tmp/t1.jpg
            fi
        else
            wget -q -O- -i /tmp/url \
                | grep "1024 x 768" \
                | sed -r 's/.*href="(.*)"><img.*/http:\/\/photography.nationalgeographic.com\1/g' \
                > /tmp/url1
            wget -i /tmp/url1 -O $TAPETA > /dev/null 2>&1
            if [ -s $TAPETA ]; then
                convert $TAPETA -filter lanczos -resize 1280x960 -quality 95 -unsharp 0.6x0.6+0.8+0.003 -crop 1280x800+0+80 /tmp/t1.jpg
            fi    
        fi
        rm -f /tmp/url
        rm -f /tmp/url1
        rm $TAPETA    
        if [ -s /tmp/t1.jpg ]; then
            mv /tmp/t1.jpg /tmp/tapeta.jpg 
        fi
    fi 

Pomys┼é pochodzi z grupy p.c.o.l. Codziennie ┼Ťwie┼╝a tapeta :)

Oczywi┼Ťcie nie zapominamy o odpowiednich prawach do pliku, czyli


    chmod 777 /etc/network/if-up.d/tapeta