[Linux] Arch Linuxでインストール後にすること

まだインストールが済んでいない場合はこちらをご覧ください。

https://qiita.com/hayattgd/items/759963a3a5f7f780d2b6

## pacmanを直す

たまにPGPのところでエラーが起きて何もインストールできなくなることがあるので一応書いておきます。

```terminal
$ pacman-key --init
$ pacman-key --populate
```

# yay(AURヘルパー)をインストール

Arch Linuxには[AUR(Arch User Repository)](https://aur.archlinux.org/)というものがあって、公式にはないアプリもここから大体入手できます。

:::note warn
マルウェアが入ってたりすることもあるので普通にソフトをいれるのと同じくらい慎重にすること！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3886798/ea44bca5-2794-4c3a-b60e-8da8014a7220.png)
投票数や人気度を参考にしましょう
:::


yayに必要なパッケージをインストール
```terminal
$ sudo pacman -S git binutils fakeroot make gcc base-devel
```

yayをインストール
```terminal
$ git clone https://aur.archlinux.org/yay.git
$ cd yay
$ makepkg -si
```

:::note info
使い方：
```terminal
$ yay -S example # パッケージのインストール
$ yay -Ss example # パッケージを検索
$ yay -R example # 削除
$ yay -Syu # 更新
```
大体`pacman`と同じような構文です。
:::


# 任意のDEかWMをインストール
## DE(デスクトップ環境)
DEは、Windowsのようにブラウザ、エクスプローラー、設定、ターミナル、テキストエディターなど、デスクトップの他に色々ついてくるやつです。
最初から全部ついてくるのでインストールの時間はかかりますが、何も設定しなくてもすぐ使えるところが利点です。
デスクトップ画面を超かっこよくしたかったりタイル型WMに憧れがない場合は素直にDEを入れましょう。

有名なもの：
- [KDE Plasma](https://kde.org)
- [Gnome](https://www.gnome.org/)
- [Xfce](https://www.xfce.org/)

ここでは[KDE Plasma](https://kde.org)をインストールします
```terminal
$ sudo pacman -S plasma
```

## WM(ウィンドウマネージャー)
WMは、ただウィンドウを表示するだけのもので、Windowsで言うところのエクスプローラーすらついてきません。
一見不便に思うかもれませんが、DEよりWMの方がいろいろ設定をいじれるので最終的に自分の好きなデスクトップが完成します。
~~[unixporn](https://www.reddit.com/r/unixporn/)を見たらもうデスクトップの改造から逃れられません~~
ちなみに、もちろんDEにもWMは入っていて、XfceなどはWMだけを別で使えたりします。

WMは主に３種類あって、

#### スタック型
Windowsのように、ウィンドウを自由に動かして、重ねたりできるWM
(フロート型とも言われる)

https://ja.wikipedia.org/wiki/スタック型ウィンドウマネージャ

有名なもの：
- [Xfwm](https://wiki.archlinux.jp/index.php/Xfwm) (XfceのWM)
- [Openbox](https://wiki.archlinux.jp/index.php/Openbox)

<sub>~~あまりスタック型WMは詳しくないので有名じゃないものを紹介してたらごめんなさい~~</sub>

#### タイル型
ウィンドウを自動的に分割してくれるので、ウィンドウ同士重なることがなくて見やすく、マウスを使わずとも操作が可能なWM(tmuxのウィンドウ版みたいな)

https://ja.wikipedia.org/wiki/タイル型ウィンドウマネージャ

有名なもの：
- [bspwm](https://wiki.archlinux.jp/index.php/Bspwm)
- [Sway](https://wiki.archlinux.jp/index.php/Sway)

#### 動的ウィンドウマネージャ
スタック型とタイル型を切り替えられるWM

有名なもの：
- [**Hyprland**](https://wiki.archlinux.jp/index.php/Hyprland) <sub>~~個人的に一番かっこいいと思うWM~~</sub>
- [awesome](https://wiki.archlinux.jp/index.php/awesome)

があります。

もっと大量のWMを知りたい方はこちら：

https://wiki.archlinux.jp/index.php/ウィンドウマネージャ#.E3.82.A6.E3.82.A3.E3.83.B3.E3.83.89.E3.82.A6.E3.83.9E.E3.83.8D.E3.83.BC.E3.82.B8.E3.83.A3.E4.B8.80.E8.A6.A7

### Hyprlandとその他諸々をインストール(ざっくり説明)

あくまで例としてなので、インストールするものは自由に変えていいです。
あとArchWikiも見てください

https://wiki.archlinux.jp/index.php/Hyprland

- WM：Hyprland
- ターミナル：foot
- ファイルマネージャー：thunar
- バー：waybar
- 通知：mako
- ランチャー：wofi

まずは[Hyprlandの公式のインストール方法](https://wiki.hyprland.org/Getting-Started/Installation/#packages)に従いましょう。

```terminal
$ sudo pacman -S hyprland
```

:::note info
このまま起動すると、黄色い警告が出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3886798/7eab6935-cb4b-419a-ae4b-54c7b9cae3ee.png)
これは、自動的に生成された設定を使用しているということを言っているので、`~/.config/hypr/hyprland.conf`にある`autogenerated=1`を消すか0に設定してやると消えます。
:::


その後、使うものを全部インストールしましょう

```terminal
$ sudo pacman -S foot thunar waybar mako wofi
```

次にデフォルトのターミナルとファイルマネージャーを変えます。35行辺りです。
お好きなエディターでどうぞ

```terminal
$ vim ~/.config/hypr/hyprland.conf
```

```diff_shell:~/.config/hypr/hyprland.conf
...
- $terminal = kitty
- $fileManager = dolphin
+ $terminal = foot
+ $fileManager = thunar
...
```

ちょうどその下にあるところで`waybar`を自動起動させます。

```diff_shell:~/.config/hypr/hyprland.conf
...
exec-once = waybar
...
```

これで設定は完了です。
- Windows + Q：ターミナルを起動
- Windows + C：フォーカスされてるアプリを終了
- Windows + M：Hyprlandを終了
- Windows + R：wofi(アプリケーションランチャー)を起動

もっと詳しいショートカットは`~/.config/hypr/hyprland.conf`の228行辺りに載ってます。

# ディスプレイマネージャーをインストール

ディスプレイマネージャー(DM)とはログイン画面のことです。直接コマンドでWMやDEを起動できるならないほうが起動が早かったりするので好みで入れてください。
有名なものは、
- [sddm](https://wiki.archlinux.jp/index.php/SDDM)
- [gdm](https://wiki.archlinux.jp/index.php/GDM)
- [lightdm](https://wiki.archlinux.jp/index.php/LightDM)

などがあります。
ここでは`sddm`をインストールします。
```terminal
$ sudo pacman -S sddm
$ sudo systemctl enable sddm
```

# できればやっておきたいこと

- sshの設定
- polkitの設定
- gvfs / gvfs-mtpの設定 (thunar用に)
- NetworkManagerの遅延起動 (システムの起動を早くするため)