Arch Linux - GUI 環境について

GUI 環境について
Linux では、Windows などのように OS 自体に GUI の機能が付いているわけではないので、GUI を構成する各パーツごとにパッケージが分かれ、それぞれが多くの開発者によって作成されています。

それらのパーツをユーザーが一つ一つ選択するのは大変なため、複数のパーツを一つにまとめて統合デスクトップ環境として作成されたものがいくつか存在します。
GNOME、KDE、MATE、Xfce、LXDE などがそれに当たります。

GUI を構築する場合、統合デスクトップ環境の中から好きなものを選んでインストールするのが一番楽です。
必要なものをまとめてインストールでき、設定も GUI で行えたりします。

しかし、どれも気に入らない場合や、極限まで軽量化したい場合、自分好みにカスタマイズしたいという場合などは、自分で各パーツを選んで組み合わせることもできます。
ただし、その場合は、それぞれを手動でインストール&設定を行う必要があります。
フォント
>> フォント - ArchWiki

GUI 環境で日本語を表示するためには、日本語のフォントが必須となるので、まずは、GUI 環境で使うフォントをインストールしてください。

AUR にはパッケージがいくつもありますが、公式パッケージには、「IPA フォント」「Adobe Source Han フォント」「Noto CJK」 くらいしかありません。

デフォルトのフォントとして、公式パッケージにあるいずれかをインストールして、普段使い用のフォントはそれぞれのサイトからダウンロードした方が良いでしょう。

IPA フォントotf-ipafont
Adobe Source Han フォントadobe-source-han-sans-jp-fonts (ゴシック体)
adobe-source-han-serif-jp-fonts (明朝体)
Noto CJKnoto-fonts-cjk

あと、端末用フォントとして、「DejaVu Sans Mono」 (ttf-dejavu) がおすすめです。
手動でインストール
自分でダウンロードしたフォントを手動でインストールする場合は、フォントファイルを 「~/.local/share/fonts」 か 「/usr/share/fonts」 に置いた後、以下のコマンドで fontconfig のキャッシュを更新します。
(~/.fonts は現在、非推奨になっています)

$ fc-cache -fv
おすすめフォント
ブラウザ用には、「Rounded Mgen+」 「MiguMix 1P」。
テキストエディタ用には、「Migu 1M
プログラミング用には、「Ricty
日本語表示可能なビットマップフォントなら、「M+ BITMAP FONTS
がおすすめです。
統合デスクトップ環境
>> デスクトップ環境 - ArchWiki

統合デスクトップ環境を使いたい場合は、上記にリストがあるので、好きなものを選んで各ページで詳細を確認してください。

古い Windows OS のようなシンプル・軽量さを求めたい場合は、XfceLXDELXQt がおすすめです。
GUI を構成するのに必要なもの
GUI 環境を自分でカスタマイズしたい場合は、何が必要かを理解しておく必要があります。

ディスプレイサーバーGUI にとって一番基礎となるものです。
アプリケーションは、ディスプレイサーバーが実装している API を使って、ウィンドウを表示したりします。

今まではずっと 「X Window System (X11)」 が使われてきましたが、古くからあるものを無理矢理機能拡張して使ってきたため、実装に限界が来たので、新しく 「Wayland」 が開発されました。
2018 年現在では、まだ X11 から完全に移行できるだけの体制は整っていませんが、今後はデフォルトになっていくものと思われます。

>> Xorg - ArchWiki
>> Wayland - ArchWiki
GUI ツールキットアプリケーションは、ディスプレイサーバーの API を使って GUI を構築しますが、ディスプレイサーバーではメニューやボタンなどの各部品を実装していないので、それらはアプリ側が自分で実装することになります。
しかし、各開発者が各々で実装するのは手間がかかる上、外観に統一性がなくなるので、GUI の開発が簡単にできるように様々な機能をまとめてライブラリにしたのが、GUI ツールキットです。

現在は、多くのアプリが GTK+Qt で開発されています。
他にもいくつかマイナーなものもあります。
ディスプレイマネージャユーザーのログインやウィンドウマネージャの選択などを行うためのもので、起動後に一番最初に表示される GUI 画面となります。

>> ディスプレイマネージャ - ArchWiki
ウィンドウマネージャタイトルバーや枠などのウィンドウの外観や、デスクトップにおけるウィンドウの操作・動作などを実装するのが、ウィンドウマネージャです。
デスクトップの外観や機能性を決める上で一番重要になります。

>> ウィンドウマネージャ - ArchWiki
壁紙デスクトップの背景を表示するのにも別途アプリが必要です。

>> 壁紙設定
タスクバーメニューボタン、簡易ランチャー、ウィンドウ一覧、時計、システムトレイなどを表示するバーです。
必要な場合はインストールします。

>> タスクバー・パネル・ドック
ランチャー頻繁に使用するアプリのアイコンを置いたりして、簡単に起動できるようにするものです。
タスクバーを置かずにランチャーだけ置くといったこともできます。

>> アプリケーションランチャー
クリップボードマネージャディスプレイサーバーには、各アプリ間でデータを受け渡しするための実装があるため、クリップボードはそれを使ってデータをやりとりします。

(クリップボードにコピーを行うと、コピーを行ったアプリが貼り付けに備えてそのデータを保持しておきます。
他のアプリで貼り付けが行われると、貼り付けを行ったアプリがデータを持つアプリに要求して、クリップボードデータを受け取り、貼り付けが実行されます)

クリップボードの動作は基本的に上記のようになっているため、クリップボードデータを持つアプリが起動している間は他のアプリでそのデータを貼り付けることができますが、データを持つアプリが終了してしまうと、そのデータも消えてしまうため、その後は他のアプリで貼り付けることができなくなります。

このように、ディスプレイサーバー自体はクリップボードデータを保持しないため、アプリ終了後でもクリップボードデータを貼り付けられるようにしたい場合は、常にクリップボードデータを保持するアプリ (クリップボードマネージャ) を別途インストールする必要があります。

クリップボードマネージャが存在する場合、データを持つアプリは、終了時にクリップボードデータをクリップボードマネージャに渡すため、その後はクリップボードマネージャがデータの保持者となって、貼り付けに対応します。

起動しているアプリ間でコピー&ペーストができれば問題ないという場合は、インストールしなくて構いません。

>> クリップボード - ArchWiki
日本語 IM日本語入力を行う場合は、日本語用のインプットメソッドが必要になります。
現在では、Fcitx + Mozc を使うのが一般的です。

>> 国際化 - ArchWiki