LoginSignup
12
3

More than 3 years have passed since last update.

Linuxのホームディレクトリに作られる、.configディレクトリ($HOME/.config)ってなんだ?

Last updated at Posted at 2019-05-16

TL;DR

  • ソフトウェアが設定ファイルなどを置く$HOME/.configというディレクトリは、XDG Base Directory仕様に則ったもの
  • ユーザー個別の設定ファイルを置く用途で利用される

$HOME/.configディレクトリってなんだ?

Linuxでソフトウェアを利用していると、その時の設定情報などを$HOME/.configディレクトリ内に作るものを目にすると思います。

たとえば、Visual Studio Codeであれば$HOME/.config/Codeですね。

settings.jsonであれば、$HOME/.config/Code/User/settings.jsonにあるわけです。

いろんなソフトウェアがこの$HOME/.config配下にディレクトリを作っていくので、「これはなにに従っているのだろう?」と思って調べた結果「XDG Base Diretory仕様」にいきつきました。

XDG Base Directory仕様

XDG Base Directory仕様とは、「FreeDesktop.org」によって定められたものです。

XDG Base Directory Specification

FreeDesktop.orgとは、

freedesktop.org(フリーデスクトップドットオルグ。fd.o(エフディードットオー)などと略されることもある)は、Unix系のシステムの環境のデスクトップ環境(もっぱらX Window Systemを利用する)の、相互運用性の向上と共通基盤技術の整備を目指したプロジェクトである。

だそうで。

「XDG」というのは、FreeDesktop.orgが以前に「X Destop Group」と名乗っていた時の名残りだとか。

freedesktop.org

このXDG Base Directory仕様のうち、$XDG_CONFIG_HOMEがユーザーごとの設定ファイルを配置するディレクトリで、そのデフォルト値が$HOME/.configなのだとか。

なるほどですねぇ。

(名前の重複で困ったりしないのかな…?)

XDG Base Directory仕様には、その他にもキャッシュ、データファイル、ランタイムの情報、システムディレクトリなどが定められているので、見てみると面白いかもしれません。

XDG Base Directory サポート

参考

Debian 管理者ハンドブック

12
3
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
12
3