LoginSignup
7
5

Arch LinuxとHyprlandをインストールする

Last updated at Posted at 2023-07-09

インストールメディアのブート

ここではUSBメモリでインストールメディアを作成しブートする。

USBメモリにisoを焼く

https://www.archlinux.org/download/ からisoを落としておく。

hdiutil convert -format UDRW -o arch archlinux-2023.07.01-x86_64.iso
diskutil list # 焼きたいUSBメモリのパスを確認 (/dev/disk2 だったとする)
sudo dd if=arch.dmg of=/dev/disk2 bs=1m

ddがresource busyになる場合

先にアンマウントしておく必要がある。

df # /dev/disk2 の Mounted on を確認 (/Volumes/Arch だったとする)
diskutil umount /Volumes/Arch
sudo dd if=arch.dmg of=/dev/disk2 bs=1m

USBメモリをUEFIブートする

UEFIブートでセットアップするため、インストールメディアからUEFIブートしておく。
マシン起動時にF2を押してUEFIの設定画面に入り、USBメモリがUEFIブートされるように設定して再起動し、Boot Arch Linux (x86_64) を選択。/sys/firmware/efi が存在すればOK。

OSのインストール

https://wiki.archlinux.org/index.php/Installation_guide を見て進める。

初期設定

キーボード

loadkeys jp106

パーティショニング

https://wiki.archlinux.org/index.php/Partitioning によるとMaster Boot RecordとGUID Partition Tableの2つのやり方があり、後者のほうがモダンらしいので後者でやる。
ブートローダーにはGRUBを使うことにする。

https://wiki.archlinux.org/index.php/Beginners'_guide を参考にした。

パーティションの作成

EFI system partitionを作っておく必要がある。

lsblk | grep -v "rom\|loop\|airoot" # SSDがsda、USBメモリがsdbだった
parted /dev/sda # partedのインタラクティブシェルでSSDをいじり始める
(parted) mklabel gpt
(parted) mkpart ESP fat32 1MiB 513MiB
(parted) set 1 boot on
(parted) mkpart primary ext4 513MiB 100%
(parted) quit

ファイルシステムの初期化

lsblk /dev/sda # /dev/sda1がESP、/dev/sda2がrootパーティションであることを確認
mkfs.vfat -F32 /dev/sda1
mkfs.ext4 /dev/sda2

パーティションのマウント

mount /dev/sda2 /mnt # /mntにrootパーティションをマウント
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot # /mnt/bootにESPをマウント

インターネット接続

設定済みの無線LANルータに有線でつないでrebootしたらping google.comが通るようになった。

インストール

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

vim /etc/pacman.d/mirrorlist # 日本かUS以外のミラーをコメントアウトする
pacstrap -K /mnt base linux linux-firmware

いろいろ入る

初期設定

genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
ln -sf /usr/share/zoneinfo/Japan /etc/localtime # あるいは PST8PDT
hwclock --systohc
vi /etc/locale.gen # en_US.UTF-8とja_JP.UTF-8の行のコメントを外す。最初からja_JPだけでやると豆腐になる。
locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf
echo KEYMAP=jp106 > /etc/vconsole.conf
echo arch > /etc/hostname # 好きに選ぶ
passwd # rootパスワードを設定

Nvidia用の対応

https://wiki.hyprland.org/Nvidia/
Install the nvidia-dkms driver and add it to your initramfs & kernel parameters.
For people using grub you can do this by adding nvidia_drm.modeset=1 to the end of GRUB_CMDLINE_LINUX_DEFAULT= in /etc/default/grub, then run # grub-mkconfig -o /boot/grub/grub.cfg

in /etc/mkinitcpio.conf add nvidia nvidia_modeset nvidia_uvm nvidia_drm to your MODULES
run # mkinitcpio --config /etc/mkinitcpio.conf --generate /boot/initramfs-custom.img (make sure you have the linux-headers package installed first)

pacman -S nvidia-dkms linux-headers

/etc/mkinitcpio.confを以下のように編集する。

MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)
mkinitcpio -P --config /etc/mkinitcpio.conf

以下でgrubのインストール後、/etc/default/grubGRUB_CMDLINE_LINUX_DEFAULT= の最後に nvidia_drm.modeset=1 を追加する。その後にgrub-mkconfigをやる。

microcodeのアップデート

ブートローダーを入れる前にmicrocodeアップデートをいれておく。 https://wiki.archlinux.org/title/Microcode

pacman -S amd-ucode

GRUBのインストール

ブートローダーにGRUBを選んだので https://wiki.archlinux.org/index.php/GRUB を読む。

pacman -S grub efibootmgr
lsblk /dev/sda # これがArchをインストールしたドライブか確認
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ArchGRUB
grub-mkconfig -o /boot/grub/grub.cfg

dhcpcdをいれておく

pacman -S dhcpcd

再起動

exit
umount -R /mnt
reboot

これで素のArch Linuxがブートされるようになる。

GUI環境のセットアップ

yay

AURパッケージのインストールのためにyayをいれる。

sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si

hyprlandのインストール

https://wiki.hyprland.org/Getting-Started/Installation/ を読む。

# 本体
yay -S hyprland-nvidia
# ターミナル
sudo pacman -S kitty gtk3

Hyprland で起動する。Super+Qでkittyを起動、Super+MでHyprlandを終了する。SuperはHHKBだと◇。

セットアップは https://wiki.hyprland.org/Getting-Started/Master-Tutorial/ を読む。

設定ファイルは ~/.config/hypr/hyprland.conf にある。autogenerated = 1 をコメントアウトするとwarningが消せる。

waybar

yay -S waybar-hyprland-git

waybar-hyprland はGCC 13非互換だったので、それが直っている -git の方をいれた。

waybar で試しに起動するとmpdのwarningが出るので、mpdをいれておく。

sudo pacman -S mpd
sudo systemctl enable mpd
sudo systemctl start mpd

inputグループに対してのwarningに関しても、xremapのREADMEを見つつ何かやったかも。

デフォルトだとアイコンが豆腐なので、fontawesomeをいれる。

sudo pacman -S ttf-font-awesome

キーボード配列

~/.config/hypr/hyprland.confkb_layout の行を直す。

input {
    kb_layout = jp
}

xremap

yay -S xremap-hypr-bin

でインストールして、設定は

git clone https://github.com/k0kubun/dotfiles src/github.com/k0kubun/dotfiles

でdotfilesを眺めながら、.config/systemd/user/xremap.serviceを設置する。その後、

systemctl --user start xremap

キーリピート

~/.config/hypr/hyprland.conf に以下のように設定する。

input {
    repeat_delay = 200
    repeat_rate = 80
}
7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5