Ubah wallpaper desktop dari terminal

11

Saya menjalankan Mint 13 dengan Cinnamon 1.6. Saya ingin wallpaper desktop saya berubah secara otomatis tergantung pada waktu hari itu. Jadi, hal pertama yang terlintas dalam pikiran adalah menyiapkan pekerjaan cron untuk melakukannya untuk saya. Masalahnya, saya tidak tahu cara mengganti wallpaper dari script / terminal.

Apa yang ingin saya ketahui:
1) Bagaimana seseorang mengubah latar belakang dari terminal?
2) Apakah sudah ada cara bawaan untuk melakukan ini?

agregat1166877
sumber
1
Apa DE kamu?
Daisy
@ warl0ck - Cinnamon 1.6
aggregate1166877

Jawaban:

19

Ini adalah jawaban yang benar untuk pertanyaan itu. Yang lainnya hanya akan menjadi retasan

 gsettings set org.cinnamon.desktop.background picture-uri  "file:///filename"
Manusia Ramblin
sumber
4
Tanpa penjelasan, ini tidak berguna.
vonbrand
8
Itu adalah jawaban yang benar untuk kueri. Mengapa Anda perlu penjelasan? Ini adalah cara yang benar untuk mengubah wallpaper di desktop Cinnamon.
Ramblin Man
1
..dan satu-satunya jawaban yang berhasil. +1
aggregate1166877
10

Dengan Linux Mint 16 (tidak yakin tentang versi lain), Anda dapat menggunakan gsettingskeduanya untuk mendapatkan informasi tentang wallpaper saat ini serta mengaturnya .

The man gsettingsadalah sedikit tipis, tapi TAB selesai akan bekerja paling langkah di perintah berikut.

Mendapatkan informasi:

gsettings get org.cinnamon.desktop.background picture-uri
gsettings get org.cinnamon.desktop.background picture-opacity
gsettings get org.cinnamon.desktop.background picture-options

Untuk mengubah opsi apa pun, cukup ubah "dapatkan" ke "set" dan tambahkan nilai baru ke akhir.

Berikut ini adalah skrip cepat yang akan menggilir daftar wallpaper yang diketahui:

#!/bin/sh
#
# Set the wallpaper from a list
#
# The list, all can be found in $BASE
BASE="file:///home/tigger/.wallpapers/"
LIST="shot1.png another.png just_no_space_in_name.png keep_adding.png"

# The current wallpaper
current=`gsettings get org.cinnamon.desktop.background picture-uri`
opacity=`gsettings get org.cinnamon.desktop.background picture-opacity`
options=`gsettings get org.cinnamon.desktop.background picture-options`

# loop over the list until we find a match
matched=0
new=""
for wp in $LIST
do
    if [ $matched -eq 1 ]
    then
        new="${BASE}${wp}"
        break
    elif [ "'${BASE}${wp}'" = "${current}" ]
    then
        matched=1
    fi
done

# if "$new" is blank, then we show the first shot
if [ "$new" = "" ]
then
    new=${BASE}${LIST%% *}
fi

# set the wallpaper
gsettings set org.cinnamon.desktop.background picture-uri \'${new}\'
gsettings set org.cinnamon.desktop.background picture-opacity ${opacity}
gsettings set org.cinnamon.desktop.background picture-options ${options}
Tigger
sumber
2

Dalam hal sistem x window Anda ingin mengubah latar belakang jendela root. The "builtin" -tool untuk mengubah pengaturan jendela ini xsetroot. Sayangnya itu agak ketinggalan jaman, misalnya hanya mendukung untuk memilih bitmap untuk gambar latar belakang.

Saya lebih suka alat ini hsetrootdaripada xsetroot. Kedua alat harus digunakan dari baris perintah.

Selain itu saya dapat membayangkan bahwa Anda dapat menyesuaikan pengaturan jendela root melalui database x resource tetapi saya tidak dapat menemukan informasi terkait sekarang.

pengguna1146332
sumber
hsetroot tampaknya persis seperti yang saya inginkan, tetapi tidak mengatur latar belakang desktop saya; alih-alih, ini menetapkan latar belakang pemilihan ruang kerja saat saya mengarahkan kursor ke sudut panas. Ada ide?
aggregate1166877
2

Coba ini:

xsetbg /path/to/wallpaper.jpg
Emanuel Berg
sumber
Terima kasih, tetapi itu tidak mempengaruhi wallpaper. Namun itu mengubah layar yang ditampilkan saat logout. Saya mulai berpikir bahwa Cinnamon memperlakukan pengaturan x11 dengan cara yang berbeda dari lingkungan lain.
aggregate1166877
@ user1166877: Wierd, ini berfungsi untuk saya. Saya sudah menggunakan Metacity dan Openbox sebagai window manager, tapi saya rasa ini "di bawah" itu. Lihatlah dengan tepat apa yang saya gunakan jika itu bisa memberikan petunjuk tentang apa yang berbeda.
Emanuel Berg
2

Bekerja untuk saya di Linuxmint 13 dengan Cinnamon 1.4.

  • cinnamon-settings desktop # in terminal> Hapus centang "Biarkan pengelola file menangani desktop"
  • ganti wallpaper Anda dengan feh
    feh --bg-fill ~ / Gambar / my_wallpaper.png
Lo G2G
sumber
1

Ada sesuatu yang disebut DesktopNova .

elwc
sumber