カスタム.debパッケージがインストールされたときに壁紙を変更したい。
Postinstスクリプトで、私はこれを書きました:
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ | cut -d= -f2- )
dbus-launch gsettings set org.gnome.destkop.backgroun picture-uri “file:///path/photo.png”
Dconfの値が変更されているのがわかりますが、他には何も起こりません(壁紙は変更されていません)。ただし、私の写真は「gnome-control-centerbackground」の現在の壁紙として表示されます。 (wtf !! ??)。
さらに、ログアウトして再度ログインすると、何もしなかったかのように以前のdconf値が返されます。
私はおかしくなりそうだ。
ありがとう!
.debインストーラー(したがってpostinstスクリプト)がルートから実行されるという事実を監視している可能性がありますか?壁紙はユーザーレベルで設定されます。
あなたが実際にやろうとしているのは、ユーザーに素敵な壁紙を「ルート」にすることです。