XDG ユーザーディレクトリ

提供: ArchWiki
2020年8月21日 (金) 09:47時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (→‎インストール)
ナビゲーションに移動 検索に移動

関連記事

ユーザーディレクトリとは Documents, Downloads, Music, Desktop などの $HOME ディレクトリに配置されるユーザー共通のディレクトリのセットのことです。ファイルマネージャの中ではそれぞれアイコンが割り振られ、プログラムやアプリケーションによって参照されることがよくあります。xdg-user-dirs はこれらのディレクトリを自動で生成するプログラムです。詳細は freedesktop.org のウェブサイトを見て下さい。

ヒント: ~/Desktop ディレクトリも自動で作成するため、このプログラムはファイルマネージャを使って Openbox などのウィンドウマネージャのデスクトップを管理したいというユーザーにとって特に有用です。

インストール

xdg-user-dirs パッケージをインストールしてください。

ヒント: 一部の デスクトップ環境 ではすでにインストールされています。例: GNOME

デフォルトディレクトリの作成

$HOME ディレクトリの中に、ローカライズされた完全なデフォルトユーザーディレクトリを作成するには、次のコマンドを入力:

$ xdg-user-dirs-update
ヒント: 英語のディレクトリを作成するには、LC_ALL=C xdg-user-dirs-update --force を使います。

コマンドを実行すると、以下も自動的に作成されます:

  • ローカルの ~/.config/user-dirs.dirs 設定ファイル: アカウントごとのホームディレクトリを見つけて使用するのにアプリケーションが使用。
  • グローバルの /etc/xdg/user-dirs.defaults 設定ファイル: 一般のホームディレクトリを見つけて使うのにアプリケーションが使用。
  • ローカルの ~/.config/user-dirs.locale 設定ファイル: 使用しているロケールにあわせて言語を設定するのに使用。

カスタムディレクトリの作成

ローカルの ~/.config/user-dirs.dirs とグローバルの /etc/xdg/user-dirs.defaults どちらの設定ファイルも次のような環境変数を使ってユーザーディレクトリを指定しています: XDG_DIRNAME_DIR="$HOME/directory_name"。設定ファイルのサンプルは以下のようになります (どれもテンプレートのディレクトリです):

XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_TEMPLATES_DIR="$HOME/.Templates"
XDG_VIDEOS_DIR="$HOME/Videos"

xdg-user-dirs は、適当なユーザーディレクトリを記述しているローカルの設定ファイルを読み込むため、カスタムフォルダを指定することが可能です。例えば ~/.config/user-dirs.dirsXDG_DOWNLOAD_DIR 変数のカスタムフォルダを $HOME/Internet にすれば、どのアプリケーションもこの変数でこのディレクトリを使用します。

ノート: 多くの設定ファイルと同じように、ローカル設定はグローバル設定を上書きします。新しいカスタムディレクトリを作成する必要もあります。

また、コマンドラインを使ってカスタムフォルダを指定することもできます。例えば以下のコマンドは上述のように設定ファイルを編集したのと同じになります:

$ xdg-user-dirs-update --set DOWNLOAD ~/Internet

設定されているディレクトリを確認

一度設定されれば、xdg-user-dirs で全てのユーザーディレクトリを表示することができます。例えば、以下のコマンドは Templates ディレクトリの場所を表示します (ローカルの設定ファイルの XDG_TEMPLATES_DIR 変数に相当):

$ xdg-user-dir TEMPLATES