全部うろ覚えなので間違ってたらすみません(随時追記するかも)。
OSインストール
基本は公式に従う。
ネットワークに接続
wifi-menu
が楽でした。wpa_supplicant
を使う場合はこんな感じだった気がします。
# パスワードは対話的に入力 wpa_passphrase "<SSID>" > tmp.conf wpa_supplicant -B -i wlp2s0 -c tmp.conf dhcpcd
LVM on LUKSでインストール
基本は公式のwikiを見ればいいけど、よくわからないなあと思っていたところ、
dm-crypt/システム全体の暗号化 - ArchWiki
インストール手順が転がっていたのでこれを見ながらやればいい(ところどころ落とし穴があります)
まずはパーティションを切る。
fdisk /dev/nvme0n1
g
でGPT
のラベルを作成- bootパーティションをつくる:
n
で新規作成、サイズは+512M
、t
でラベル変更、c
でFAT32 (LBA)
を選ぶのが正解らしい(ここでなぜか1
:FAT12
を選んだ記憶があるけど、動いてるからまあいっか...) - 暗号化パーティションをつくる:
n
で新規作成、サイズは残りすべて、t
でラベル変更、83
でLinux
を選ぶ
あとはたぶんこんな感じです。
mkfs.vfat -F32 /dev/nvme0n1p1 cryptsetup luksFormat /dev/nvme0n1p2 cryptsetup open /dev/nvme0n1p2 cryptlvm pvcreate /dev/mapper/cryptlvm vgcreate vg0 /dev/mapper/cryptlvm # メモリ16GBのモデルなので lvcreate --size 16G vg0 --name swap lvcreate -l +100%FREE vg0 --name root mkfs.ext4 /dev/mapper/vg0-root mkswap /dev/mapper/vg0-swap mount /dev/mapper/vg0-root /mnt swapon /dev/mapper/vg0-swap mkdir /mnt/boot mount /dev/nvme0n1p1 /mnt/boot
/etc/mkinitcpio.conf
gistの方だと詳しく載ってなくて引っかかったけど、keyboard
とkeymap
がencrypt
の前にないと復号パスワードを入力できなくて永遠にブートできません。注意。手元のはこんな感じになってた。
HOOKS=(base udev autodetect modconf keyboard keymap block encrypt lvm2 resume filesystems fsck)
GNOME
GNOMEとGDMのインストール
GNOME別に付属アプリとかは全部はいらないなあ、と思って「gnome minimal install arch」とかでググると適当なgistが転がっているので真似します。
sudo pacman -S gnome-shell nautilus gnome-terminal guake gnome-tweak-tool gnome-control-center xdg-user-dirs gdm
あとはGDMを有効にすればよろしくやってくれるはず。
sudo systemctl enable gdm
.xprofile
の代わりは?
これはいまだに正解がわかりません...。Arch wikiだと/etc/environment
に書けという指示があったりしますが、いやいやユーザーごとの設定あるでしょ??とは思うものの、ググって出てきた、
~/.local/share/gdm/env.d/
(GDMが設定してくれるという噂を見たけど何も起こらない)~/.config/environment.d/
(systemdが設定してくれるという噂を見たけど何も起こらない)
は効果がなくて、結局~/.pam_environment
にこの辺のおまじないを書きました。
GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx LIBVA_DRIVER_NAME=iHD TERMINAL=alacritty
Xmodmapの代わりは?
これは、gsetting
というコマンドで以下を一度実行するだけです。
gsettings set org.gnome.desktop.input-sources xkb-options "['caps:ctrl_modifier']"
Firefox
Arch wikiにかかれているように、FirefoxはWayland用のモードがあります。
別にデフォルトのX11用のモードでも問題は感じなかったけど、いちおう変えておきます。Arch wikiだと/usr/share/applications/firefox.desktop
のExec
を編集するように書かれているけど、どうもここはFirefoxのアップデートのたびに上書きされちゃうっぽいので~/.pam_environment
に書きます。
MOZ_ENABLE_WAYLAND=1
Alacritty
よくわかりませんが、 WAYLAND_DISPLAY
環境変数があるとうまくうごかないらしいです。
/usr/share/applications/alacritty.desktop
のExec
に環境変数をつけます(これは~/.pam_enviromnent
に指定するにはちょっと厳しいので、アップデートがあるたびに直すしかなさそう)
Exec=env WAYLAND_DISPLAY= alacritty
キーボード設定
VS Codeでキーボードが英字配列で認識されてしまってなんでかなと思ったら、fcitxの設定で「規定のキーボードレイアウト」を「日本語」にしておかないとだめらしい。