Arch Linux のインストール

こちらのページに従って、インストールしました。
[Arch Linux をおしゃれに最速インストール](http://neko-mac.blogspot.com/2021/05/arch-linux.html)

日本語設定についてはこちらを参考にしました。
[Arch Linuxの日本語入力をfcitxからfcitx5に切り替える](http://note.kurodigi.com/archlinux-fcitx5/)

## インストール用USB の作成

ISO イメージのダウンロード

```bash
wget https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/iso/2024.01.01/archlinux-2024.01.01-x86_64.iso
```

USB への書き込み

```bash
sudo dd if=archlinux-2024.01.01-x86_64.iso of=/dev/sda oflag=direct bs=1048576
```

## USB でブート

日本語キーボードの設定

```bash
loadkeys jp106
```

大きなフォントに変更

```bash
setfont ter-128n
```

ネットワークの設定

```bash
iwctl
```

デバイス名の確認

```text
[iwd]# device list
```

接続ポイントの確認

```text
[iwd]# station wlan0 scan
[iwd]# station wlan0 get-networks
```

ネットワークに接続

```text
[iwd]# station wlan0 connect SSID
```

iwdコンソールを終了

```text
[iwd]# exit
```

## インストールするディスクの用意

状態の確認

```bash
lsblk
```

私は既存のパーティションを使いました。
SWAP は使わないので、EFI と root を用意しました。

```text
nvme0n1p9　　　root
nvme0n1p11    EFI
```

#### フォーマット

root

```bash
mkfs.ext4 /dev/nvme0n1p9
```

EFI

```bash
mkfs.fat -F32 /dev/nvme0n1p11
```

#### マウント

root

```bash
mount /dev/nvme0n1p9 /mnt
```

EFI

```bash
mkdir /mnt/boot
mount /dev/nvme0n1p11 /mnt/boot
```

## 準備用パッケージを仮インストール

```bash
pacstrap /mnt base linux linux-firmware
```

```bash
pacstrap /mnt man-db vim
```

fstab の作成

```bash
genfstab -U /mnt >> /mnt/etc/fstab
```

## chroot

```bash
arch-chroot /mnt
```

タイムゾーンの設定

```bash
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
```

```bash
hwclock --systohc
```

ローカライゼーション

```text:/etc/locale.gen
（省略）
en_US.UTF-8 UTF-8
（省略）
ja_JP.UTF-8 UTF-8
（省略）
```

```bash
locale-gen
```

ルートのパスワードの設定

```bash
passwd
```

#### GRUB の設定

必要パッケージのインストール

```bash
pacman -S grub efibootmgr dosfstools os-prober mtools
```

grub をインストール

```bash
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB_UEFI
```

設定ファイルの作成

```bash
grub-mkconfig -o /boot/grub/grub.cfg
```

#### プロセッサー用マイクロコードのインストール

私の端末は、AMD だったので

```bash
pacman -S amd-ucode
```

grub の設定ファイルを更新

```bash
grub-mkconfig -o /boot/grub/grub.cfg
```

#### ネットワークの設定に必要なパッケージをインストール

```bash
pacman -S networkmanager wpa_supplicant dialog
```

```bash
pacman -S iw iwd dhcpcd netctl
```

自動起動の設定

```bash
systemctl enable NetworkManager
```

## リブート

```bash
reboot
```

パソコンの起動画面で、F2キー等を押して起動時設定画面に入り、 「GRUB_UEFI」の項目をBOOT順の１番目に設定。 もしくは、単純に、UEFIの起動項目で「GRUB_UEFI」から起動。


USBメモリは再起動後、抜く。

## 再起動後　root でログイン

ネットワークの設定

```bash
nmtui
```

システムのアップデート

```bash
pacman -Syy
pacman -Syu
```

ユーザーの作成

```bash
useradd -u 1200 -m -g wheel uchida
passwd uchida
```

グループの作成

```bash
groupadd -g 1200 uchida
```

sudo のインストール

```bash
pacman -S sudo
```

```bash
EDITOR=vim visudo
```

```text
（省略）
%wheel ALL=(ALL:ALL) ALL
%wheel ALL=(ALL:ALL) NOPASSWD: ALL
%sudo   ALL=(ALL:ALL) ALL
（省略）
```

### root からログアウトし、作成した一般ユーザーでログインしなおす。

## 大きなフォントに変更

```bash
sudo pacman -S terminus-font
setfont ter-128n
```

## X の設定

```bash
sudo pacman -S xorg-server xorg-xinit xorg-xclock xterm
```

```bash
sudo pacman -S xfce4
```

インストール可能なドライバーを調べる

```bash
pacman -Ss xf86-video
```

ドライバーのインストール

例えば

```bash
sudo pacman -S xf86-video-intel
```

X の起動

```text:$HOME/.xinitrc
exec startxfce4
```

```bash
startx
```

## Google Chrome のインストール

必要なライブラリーのインストール

```bash
sudo pacman -S git
sudo pacman -S fakeroot
sudo pacman -S make
sudo pacman -S gcc
```

yay のインストール

```bash
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
```

yay を使ってインストール

```bash
yay -S google-chrome
```

フォントのインストール

```bash
sudo pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
```

```bash
sudo pacman -S otf-ipafont
```

Google Chrome を起動して日本語のページがちゃんと表示されることを確認。

## 日本語入力

```bash
sudo pacman -S fcitx5-im fcitx5-mozc
```

```text:$HOME/.xinitrc
export GTK_IM_MODULE="fcitx5"
export QT_IM_MODULE="fcitx5"
export XMODIFIERS='@im=fcitx5'
```

Ctrl + Blank で切り替え