我想在安装自定义 .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-center background”中。(wtf!!??)。
而且,当我注销并再次登录时,以前的 dconf 值会返回,就好像我没有做任何事情一样。
我要疯了。
谢谢!
答案1
您是否忽略了 .deb 安装程序 (以及 postinst 脚本) 从 root 运行的事实?壁纸是在用户级别设置的。
您实际上想要做的是给用户“root”一张漂亮的壁纸。