すべてのユーザーのXFCEデフォルトの壁紙を変更する

すべてのユーザーのXFCEデフォルトの壁紙を変更する

すべてのユーザーに対してXFCEネイティブ壁紙システムを変更する方法を理解しようとしています。

ただし、コマンドラインまたは一部の構成ファイルを編集して、システム全体の設定に対してこれを行う方法を見つけることはできません。

ありがとう

答え1

ソリューションを2つの部分に分けてみましょう。

  1. 設定が保存されている場所を見つけます。合理的なプログラムは、ユーザー設定を「ドット」ファイルに保存します$HOME。このファイルは通常.progname(より複雑な構成のファイルまたはディレクトリにすることができます)または以下にあります.config/。 XFCEは後者を使用し、デスクトップ設定は次の場所に保存されます。

    ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
    

    このファイルの構造は、マルチモニター設定、Xinerama、および他の多くを処理できるため、あまりにも単純ではありません。場合によっては、現在の背景が正確にどのように見えるかを知りたい場合は、現在の背景のファイル名を検索してください。

  2. これらの設定が新しく作成されたユーザーアカウントに伝播されることを確認してください。合理的なシステムでは、これは/etc/skel新しく作成されたユーザーアカウントのホームディレクトリにコピーされたファイルを保存する役割です(例:hier(7)マニュアルページを参照)。

したがって、ファイルをコピーした場合(先行ディレクトリをにコピー$HOME)、そうする必要があります。賢いコマンドを使用して、必要なすべてのディレクトリを作成できますinstall(Linuxでは通常coreutilsパッケージにあります)。

install -D -v \
    {$HOME,/etc/skel}/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml

既存のユーザーに対してもこの設定を変更する必要がある場合は、ほとんどのsed場合、既存のファイルを使用するだけで成功することができますが、エラーを防ぐために構成XMLを解析する必要があります(有名なSO投稿への必須リンク)。

関連情報