みなさんArch Linuxしてますか。私は毎日してます。Archってインストール後にマジで何も入ってないですよね。でもむき出しのLinuxって感じで、インストール直後の状態はそれはそれで好きだったりするんですが。
ともかくそのままだと使い物にならないので、chrootの作業が終わってから最初に起動したときにやる、最低限必要な手順をまとめました。
Arch Linux自体のインストール手順は(USBメディアを使わずに)Arch Linuxをインストールする | endaaman.meを参照してください。
chrootから出る前に!
# passwd
# pacman -S networkmanager
rootユーザーのパスワードを入れ忘れるとchrootし直しになるのでこれだけは絶対忘れない。またノートPCなど要無線LANマシンはNetworkManagerなどがないとネットに繋げないので忘れずに入れておく。ログインしてからはnmtuiが便利。
ユーザー設定
sudoできるようにする
# pacman -S sudo
# EDITOR=vim visudo
%wheel ALL=(ALL) ALLの行をアンコメントする。
ユーザーを作成する
# useradd endaaman -m -s /usr/bin/zsh -m -G wheel
-mでホームディレクトリを作り、 -s でデフォルトシェルを指定し、 -G でグループを指定。グループは# usermod -aG wheel endaaman、シェルはchshであとから指定できる。
# passwd endaaman
でパスワードを設定する。これを忘れるとログインできない。
ロケール
ロケールの生成
# vim /etc/locale.gen
で使うロケールをアンコメントする。自分はen_US.UTF-8 UTF-8とja_JP.UTF-8 UTF-8だけ使っている。
# locale-gen
でロケール生成する。
ロケールの指定
# vim /etc/locale.conf
LANG=en_US.UTF-8
LC_COLLATE=ja_JP.UTF-8
で、基本はUS、並び順だけJPにするのが俺流。Cは英語にはなるがいろいろ不便が多いので使わない。
タイムゾーン
# timedatectl set-timezone Asia/Tokyo
Asia/Tokyoでいいでしょう。
スワップを使ったhibernate
カーネルパラメーターの設定
メモリをスワップ領域に退避させて電池消費を完全にゼロにするやつ。これをしておけば作業内容を維持しつつ、何日放置してもバッテリー消費なく使用再開できる。
# vim /etc/mkinitcpio.conf
HOOKS=(base udev autodetect modconf block resume filesystems keyboard fsck)
filesystemsの前にresumeを追加する。デバイスの識別の順序の関係で順番に意味があるので気をつける。
# mkinitcpio -p linux
で起動スクリプトに反映させる。
GRUBの設定
# vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="resume=/dev/sdaX loglevel=3 quiet"
/etc/default/grubのGRUB_CMDLINE_LINUX_DEFAULTの頭にresume=/dev/sdaXのように、スワップに使っているパーティションを指定する記述を追加する。
自分のばあいはスワップはresume=/dev/nvme0n1p2になっている(/dev/nvme0n1p1 が/bootで /dev/nvme0n1p3がシステム)。
さいごに
# grub-mkconfig -o /boot/grub/grub.cfg
するのを忘れない。
fcitx用の環境変数の設定
IMEはいろいろあるけど、現在はfcitx + Mozc一択だと思う。ユーザーレベルでシェル、デスクトップともに全体で使用する環境変数は~/.pam_environmentに記述する(システム全体では/etc/environmentを使う)。
$ vim ~/.pam_environment
GTK_IM_MODULE DEFAULT=fcitx
QT_IM_MODULE DEFAULT=fcitx
XMODIFIERS DEFAULT=@im=fcitx
シェルではなくデスクトップセッションの方で参照するもので、bashrcなどに書いたりすると混乱の元なので注意。
それではみなさま良きArch Linuxライフを。