3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

XDG Base Directory Specification を学ぶ最初の一歩 ~dotfile 地獄から抜け出すために~

3
Posted at

はじめに

Linux や macOS で作業していると、
ホームディレクトリ直下に大量のドットファイルが増えていきます。

~/.zshrc
~/.vimrc
~/.bash_history
~/.cache
~/.config
~/.local

最初は気になりませんが、
環境を長く使うほど、

  • 設定はどこにあるのか分からない
  • 消してよいファイルが判断できない
  • マシン移行が面倒

といった問題が顕在化します。

この混乱を整理するための 事実上の標準
XDG Base Directory Specification です。

本記事では、
「XDG を使い始めたいが、何から学べばよいか分からない」
という人向けに、最初に押さえるべきポイントだけを整理します。


XDG とは何か(結論から)

XDG は一言で言うと、

設定・データ・キャッシュの置き場所を分離するルール

です。

「どこに何を置くか」を決めることで、
環境が 読める・消せる・移せる ようになります。


最初に覚えるべき XDG 変数は 3 つだけ

XDG には多くの仕様がありますが、
最初は この 3 つだけで十分です。

1. XDG_CONFIG_HOME

設定ファイルの置き場所

echo $XDG_CONFIG_HOME

多くの環境では、

~/.config

です。

例:

  • ~/.config/zsh/
  • ~/.config/git/
  • ~/.config/nvim/

👉 **「設定はここ」**と即答できるようになります。


2. XDG_DATA_HOME

永続データの置き場所

echo $XDG_DATA_HOME

典型例:

~/.local/share

例:

  • zsh の履歴
  • アプリの内部データ
  • 言語処理系のキャッシュ以外の成果物

👉 消すと困るが、設定ではないものが入ります。


3. XDG_CACHE_HOME

消してよいキャッシュの置き場所

echo $XDG_CACHE_HOME

典型例:

~/.cache

👉
ここは原則として
「困ったら消してよい」
場所です。


なぜ XDG を学ぶと生産性が上がるのか

理由は単純です。

1. 探さなくてよくなる

  • 設定 → ~/.config
  • データ → ~/.local/share
  • キャッシュ → ~/.cache

という 脳内マップができます。


2. 壊すのが怖くなくなる

  • キャッシュは消してよい
  • データはバックアップ対象
  • 設定は Git 管理できる

判断が即座にできます。


3. マシン移行が楽になる

  • ~/.config を持っていけば設定が復元
  • 不要なゴミを持っていかずに済む

まず最初にやる 3 分の確認

XDG を学び始めるなら、
まずは 自分の環境を確認するのが最短です。

echo $XDG_CONFIG_HOME
echo $XDG_DATA_HOME
echo $XDG_CACHE_HOME

次に、

ls $XDG_CONFIG_HOME

を実行してみてください。

👉これだけでもう XDG 準拠の環境です!


zsh / prezto を使っている人向けの補足

zsh や prezto は、
XDG と非常に相性が良いツールです。

例:

  • HISTFILE~/.local/share/zsh/history に置ける
  • .zshrc~/.config/zsh/ に集約できる

つまり、

XDG を理解すると、zsh の理解も一段深くなります


まとめ

  • XDG は「設定整理のための思想とルール」

  • 最初は 3 変数だけ覚えればOK!

    • XDG_CONFIG_HOME
    • XDG_DATA_HOME
    • XDG_CACHE_HOME
  • 学び始めは「確認」からで十分

  • 生産性は 設定を増やすより、配置を理解することで上がります

XDG は派手な機能ではありませんが、
一度理解すると、環境全体が粛々と整っていきます。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?