BREAKING NEWS

[4]

Arch Linux をおしゃれに最速インストール

本家のArch Linuxのインストールガイドを見ながら久しぶりにインストールすると、 だいたいリブートした後に、 「あれ?ネットにつながらない」とか、 「あれ?vimがない」とか、 「え?なんで補完効かないんだ!」とか 「このキーCtrlに入れかわってないやん」とか、 「コンソールの字が小さくて見えない、、」とかとか、 いろんな面倒くさい事が残されていて、 ちっともインストール作業が終らなかったりするものなのです。


そこで、 UEFIパソコンにArch Linuxをインストールする際の俺式チェックメモ。 Arch Linux を何度かインストールしたことあるけど、 久しぶりにインストールする時「あれなんだっけ?」となる時のチェック用です。


本家インストールガイドは以下


archlinux Installation guid

インストールメディアの用意

まず、Arch Linux Downloadsのページから日本にあるミラーを探し、 そこから「archlinux-2023.03.01-x86_64.iso」の様に日付入りのisoファイルをダウンロード。


次に、USBメモリを用意を用意。容量は16Gや32Gので問題ありません(isoファイルは1Gもない)。


isoファイルとUSBメモリを用意したら、windowsかlinuxのどちらかの方法で、 isoファイルをUSBメモリにインストールして、Arch Linux起動システムUSBを作ります。 おすすめは、windowsのrufusで作る方。


windowsならrufus

rufusというソフトを使います。 実行ファイルそのものが配布されており、インストールは不要。 起動するとダイアログが開くので、USBメモリとisoファイルを適切に指定し、後はそのままの設定でスタートするだけ。


linuxならdd

まず、USBメモリをパソコンに取り付けて、そのデバイスファイル名をlsblkコマンドで確認します。


# lsblk

ddコマンドで、isoファイルとusbのデバイスファイル名を指定。 なお、パーティション名ではなく、デバイス名を指定することに注意しましょう。 (/dev/hda1ではなく、/dev/hda)


# dd if=iso_file_path of=/dev/your_usb_device bs=4M

USBメディアでArch Linuxのライブシステムを起動

パソコンの電源を切った状態で、USBメディアをパソコンに差し電源を入れます。 それから、パソコンの設定をするための画面に入るためのボタンをゆっくり適当に連打します。 パソコンの設定をするための画面に入るためのボタンは、 特殊なものでない限り、F2、F1、F10、ESC、Delのどれかです。 PCがLenovoならF1キー、それ以外ならまずはF2キーで試しましょう。 ダメっぽい場合、次はDelキーを試します。 それでもダメな場合は、「BIOS キー」等でググってみましょう。


設定画面が起動したら、 まず、Secure Bootに関する項目を「Disabled」等、使わない設定に変更します。


次に、UEFIでの起動項目を探して、USBから起動します。


Arch Linuxのライブシステムが起動すると、自動的にrootでログインした状態になっています。


コンソールでは、初めにキーボードの設定を行いましょう。 デフォルトはUSキーボードなので、一般的な日本語キーボードを使っている場合、記号の位置が異なっています。 そこで、次のコマンドを入力しましょう。


# loadkeys jp106

文字が小さくて見にくい場合には、次のコマンドで大きなフォントに切り替える事が出来ます。


# setfont ter-128n

インターネットに繋ぐ

pingコマンドで、インターネット接続を確認します。 デスクトップパソコン等で、イーサネットケーブルで有線接続している場合はインターネットに繋がっているはずです。


# ping archlinux.org

しかし、ノートパソコン等で、有線ではなくwifi接続の場合は、 名前解決が出来ない等のエラーが表示されて、ネットワークに接続出来ていないはずです。 そこで、次からの手順でwifiを使ってネットワークに接続しましょう。


wifiの接続用SSIDと接続用パスワードを準備しておく。 wifiルーター側で行うMACアドレス制限等をクリアしておく。 パソコン側のMACアドレスが必要ならば「ip a」で確認できる。


「iwctl」コマンドを使います。(iwを必要に応じて参照)


# iwctl


コンソールが起動するので、まず、デバイス名を確認。入力は補完が効くので適宜タブ。


[iwd]# device list


上記で確認したwifiデバイス名がwlan0として、 次に接続ポイントを確認します。


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


接続ポイントが確認できたら、次の入力( SSIDの部分は、自分のところのSSIDに入れ替える事を忘れずに )を行い、 出てきたパスワードプロンプトにパスワードを渡します。


[iwd]# station wlan0 connect SSID


数秒待って特にエラーが出なければ、 exitコマンドでiwdコンソールを終了します。


[iwd]# exit


システムの時計を合わす

システムがネットワークに繋がったら、システムの時計をネットワーク上の時計に合わせます。


# timedatectl set-ntp true


インストールするディスクを準備する

パソコンに繋がっているディスクを確認するには「lsblk」コマンドを使います。



ルートになっている sda や nvme0n1 がディスクのデバイス名であり、 その下にぶらさがっている sda1 や nvme0n1p1 がパーティション名になります。


UEFIで起動が管理されている場合、 複数のEFI領域でブートローダー等を個別に管理できます。 Windowsとデュアルブートにする場合、 もとからあるWindowsが使っているEFIパーティションはそのままにしておき、 ArchLinuxのブートローダー用に もうひとつ新しくEFIパーティションを作ってあげればOKです。


パーティションを切る

ディスクにパーティションを切るのは、「cgdisk」コマンド、 慣れていれば「fdisk」コマンドで行います。 lsblk等で確認したディスクのデバイス名がnvme0n1ならば、 以下の様に cgdiskの引数として、 デバイスファイルのパス(/dev/ディレクトリにあるデバイスファイル)を 渡して起動します。


# cgdisk /dev/nvme0n1

「EFI」、「/(root)」、「swap」の3つのパーティションを作ります。 ArchLinuxだけをインストールするなら、 既存のパーティションを全部「del」して、 それから「new」して行き、 最後に「write」します。



場所 大きさはじまり 大きさ終わり gdisk's code 名前
1つ目 そのままリターン +512M(はじめから512Mうしろ) ef00 ARCH EFI
2つ目 そのままリターン -3G(終わりから3G手前) 8300 ARCH ROOT
3つ目 そのままリターン そのままリターン 8200 swap

gdisk's codeはGUIDとは別のgdisk固有の識別番号。 ココで確認。


windows等と同居なら、これらの作業をはじめる前に、 windowsのディスクの管理でWindowsのパーティションを縮小して 空領域を作っておきます。 ここでは、その空領域(free spaceと表示される)に、 それぞれのパーティションを「new」して行き、 最後に「write」します。


fdiskコマンドについては「Fdisk」を参照。


フォーマットする

Windowsと同居させる場合、 デバイスファイル名を間違えないように細心の注意を払いましょう。 lsblk や cgdisk をもう一度起動したって構いません。 ディスクのサイズ等がヒントになります。 下記の sdxY となっている部分を 該当のパーティション を表す自分のデバイスファイル名に置き換えます。


EFIパーティション


# mkfs.fat -F32 /dev/sdxY


ルートパーティション


# mkfs.ext4 /dev/sdxY


swapパーティション


# mkswap /dev/sdxY


パーティションをマウントして、swapも起動

ルートパティションを/mntにマウント


# mount /dev/sdxY /mnt


まず、/mnt/bootを作成し、そこにEFIパーティションをマウントします。


# mkdir /mnt/boot
# mount /dev/sdxY /mnt/boot


swapを起動


# swapon /dev/sdxY


EFIパーティションが2つある時

Windowsと同居していて、EFIパーティションが2つある場合、 ここで、/mnt/win_boot等のディレクトリを作成し、 そこに、WinodwsのEFIパーティションをマウントしておきます。


# mkdir /mnt/win_boot
# mount /dev/sdxY /mnt/win_boot

こうしておく事で、この後行なう作業で、 自動的に/etc/fstabにマウントの指示が書き込まれ、 いつでもWindowsのEFIパーティションがマウントされるようになります。 そして、Linux側にWindowsのEFIパーティションをマウントしておけば、 grub設定の際、gurbが簡単にWindowsの事を認識できるようになります。


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

準備中のディスクにパッケージをインストールします。


本家のインストールガイドでは、編集対象になる設定ファイル等を/mnt以下に入れてchroot出来るようにするために baseとlinuxパッケージを以下のようにpacstrapする指示をしているので、 まずは、以下のものをインストールします。


# pacstrap /mnt base linux linux-firmware


但し、これはArch Linuxの「ミニマムなインストール設定」の例ではないことに注意が必要です。 本家のインストールガイドでも、続いてその下に、他のものを自分の都合に合わせて適宜インストールするように指示しています。


インストール作業中はネットワークに繋がっているはずなので、 chrootしたあとにもpacmanを使って足りないパッケージはインストールが出来ます。 ですから、それほど神経質になる必要はありませんが、 base以外に、少なくともvim等のエディタは必須です。 そして、zsh、zsh-completions、grml-zsh-configをいれておけば、 何の設定もなくls関連のエイリアスやパッケージ名の補完が使えるのでおすすめです。 更には、manも入れておけば、作業中、手元でいろんな確認が出来るので、これもおすすめ。


  • base
  • linux
  • linux-firmware
  • man-db
  • vim
  • zsh
  • zsh-completions
  • grml-zsh-config

以上を踏まえて、pacstrapコマンドに、必要パッケージを追加して以下のように実行します。


# pacstrap /mnt man-db vim zsh zsh-completions grml-zsh-config


設定を行う

インストールするシステムの設定ファイルを適切に書き込んで行きます。


fstab

/etc/fstabの内容を自動生成して追加書き込みをします。


# genfstab -U /mnt >> /mnt/etc/fstab


chroot

インストール先の環境と同じパスを使うためのおまじないである「arch-chroot」コマンドを使います。


# arch-chroot /mnt


chroot環境に入ると、素のbash環境になるので、それまでの色付きのプロンプトの色がなくなります。 しかし、ここで、既にインストールしておいたzshを起動することで、インストールメディアのライブ環境にあるgrml-zshの環境が同様に使えるようになります。


# zsh


インストールを終わる際は、一旦、zsh環境から抜けて(exit)、bash環境に戻り、そこから再度抜けて(exit)、インストールライブ環境に戻ること。


タイムゾーン等の設定

タイムゾーンを設定


# ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime


システムの時刻をBISOの時刻にコピーする


# hwclock --systohc


BISOの時刻がUTCになるので、Windowsと共存する場合、以下のようにWindows側で調整します (「WindowsでUTCを使う」 を参照)。 Windowsの設定は、linuxのインストールが一段落してから別途やりましょう。


Windowsでの手順は、まず、インターネット時刻機能をオフにする。


それから、次に、以下のレジストリにDWORD値で十六進数の1を設定(うまく行かないときはQWORD値)


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal


ローカライゼーション

/etc/locale.genを編集して、「en_US.UTF-8 UTF-8」と「ja_JP.UTF-8 UTF-8」の行をアンコメントします。


...
en_US.UTF-8 UTF-8
....
ja_JP.UTF-8 UTF-8
....


編集を保存してエディタを終了したら、次のコマンドを実行して、localeを作成します。


# locale-gen


local-genの実行が終わってlocaleが出来たら、/etc/locale.confを次のように編集します。


LANG=en_US.UTF-8


コンソールの設定雛形

/etc/vconsole.confファイルでは、 コンソール用のキーボードの種類とフォントを設定が出来ます(X環境とは無関係)。 以下は、vconsole.confの雛形。


KEYMAP=us
#KEYMAP=jp106
#FONT=


コンソールのキーボードでCapslockをCtrlやESCにする

コンソール上で、CapslockキーをCtrlキーに変更する場合、 まず、keymapファイルを置く場所を作り、デフォルトのキーマップをコピーして、zipを解凍し、 カスタム用のキーマップとして適当な名前にリネームします。 (以下、usキーボードの例)


# mkdir -p /usr/local/share/kbd/keymaps
# cp /usr/share/kbd/keymaps/i386/qwerty/us.map.gz /usr/local/share/kbd/keymaps/
# cd /usr/local/share/kbd/keymaps/
# gunzip us.map.gz
# mv us.map my_custom_us.map
# vim my_custom_us.map


my_custom_us.mapファイルを開いたら、keycode 58やkeykode 29辺りをEscapeやControlに書き換えます。


keycode 58 Control


書き換えたカスタムのキーマップを反映させるには、loadkeysコマンドで以下のようにキーマップのフルパスを渡します。


# loadkeys /usr/local/share/kbd/keymaps/my_custom_us.map


書き換えたカスタムのキーマップをシステム立ち上げで自動的に読み込むようにするためには、 /etc/vconsole.confのKEYMAPにカスタムファイルのフルパスをを指定します。(zipで圧縮しないようにする)


KEYMAP=/usr/local/share/kbd/keymaps/my_custom_us.map


ここで、うちの環境では、Capsロックがシフトキーと同時押しで機能する等の場合、うまく調整できないキーボードもありました。 また、Xの環境では別途キーの入れ替え設定をする必要があるので、インストール作業中は、出来る範囲の程々に設定しておきましょう。 突っ込んで調べたい場合は、以下のリンクを参照。



コンソールの文字を大きくする

コンソールのフォントをインストール先の環境でも大きくするために、 まず、コンソール用の追加のフォントパッケージ「terminus-font」をインストールします。


# pacman -S terminus-font


次に、/etc/vconsole.confのFONTにフォント名を指定すれば、次回起動時から自動的にこのフォントが使われるようになります。


FONT=ter-128n


ホスト名の設定

/etc/hostnameを次の様に編集します。


mycoolhostname


/etc/hostsを同じホスト名を使ってを次の様に編集します。


127.0.0.1	localhost
::1		localhost
127.0.1.1	mycoolhostname.localdomain	mycoolhostname


rootのパスワード

rootのパスワードをpasswdコマンドで設定します。


# passwd


ブートローダーにGRUBを使う

Arch Linuxでは、複数のブートの仕方がありますが、 その中のGRUBを使います。


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

ブートローダーにgrubを使う準備を行います。 まず、必要なパッケージをインストールします。


  • grub
  • efibootmgr
  • dosfstools
  • os-prober
  • mtools

# pacman -S grub efibootmgr dosfstools os-prober mtools


grubをインストールする

次のコマンドで、grubローダーアプリをUEFIが読める場所にインストールします。 --efi-directoryは、EFIパーティションをマウントしているパス(/boot)を指定します。


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


grubの設定ファイルを作る

grubをインストールした初回は、そして、以降はgrubの設定に変更があった時に、必ず忘れずに、以下のコマンドでgrubの設定ファイルgrub.cfgを作成します。


# grub-mkconfig -o /boot/grub/grub.cfg


プロセッサ用マイクロコード

Intel、AMDのどちらかのプロセッサ用マイクロコードを適用します。 まず、パッケージのインストール。


  • intel-ucode
  • amd-ucode

# pacman -S intel-ucode


マイクロコードパッケージをインストールした後、 GRUBでブートロードしている場合は、次のコマンドで設定ファイルを更新します。


# grub-mkconfig -o /boot/grub/grub.cfg


その他の起動方法の場合は、「マイクロコード」を参照


ネットワーク設定

インストール時のライブ環境は、ネットワークが使えるように整備されていますが (インストール作業中である今現在、ネットに繋がっている)、 インストールする先の環境では、自動的にこのネットにつながる環境が引き継がれません。 必ず、自らネットワーク管理の環境を構築する必要があり、 これを行わないとインストールした環境でブートした時にネットに繋がることが出来ません。


また、自らネットワークの環境を構築しようとする時、 Arch Linuxのwikiで解説されているネットワーク管理の方法は複数あり、 これらを知らずに混在させると、混乱のもとになります。


これらを踏まえて、このノートではもっとも簡単でいて洗練されている「networkmanager」の環境を構築します。


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

必須に加えて、一般的な管理のものも含めてインストールします。


  • networkmanager
  • wpa_supplicant
  • iw
  • iwd
  • dialog
  • dhcpcd
  • netctl

まず、必須のパッケージのインストール。 途中、選択肢が出る場合、デフォルトでOK。


# pacman -S networkmanager wpa_supplicant dialog


その他、トラブルの際に役に立つパッケージもインストールしておきます。


# pacman -S iw iwd dhcpcd netctl


systemctlで、NetworkManageが自動で立ち上がる登録をします。


# systemctl enable NetworkManger


混乱が起こらないように、この先のNetworkManagerの設定は、次回再起動後に行います。 (次の起動時には、上で設定したNetworkManagerが自動的に起動される)


リブートして新しい環境へ

chrootされた状態から、exitコマンドで抜けます。 (zsh起動している場合は、zshからぬけて、chroot(bash環境)から抜ける)


# exit


USBのライブ環境に戻るので、rebootコマンドでリブートします。


# reboot


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


USBメモリは再起動後、抜いて構いません。


ネットワークの設定

ログインプロンプトにrootでログインし、 ネットワークへの接続をpingかipで確認します。


# ping archlinux.org


接続されていない場合、次のコマンドでNetworkManage設定メニューを表示します。


# nmtui


メニュー型インターフェイスの設定プログラムが立ち上がるので、 「Activate a connection」を選択して、wifi等の設定を行います。


nmtuiで一度、設定しておけば、次回システム起動時は適当に繋がります。 ノート等で複数wifiポイントを利用する場合でも、各ポイントで初回に設定しておけば、 各ポイント毎に自動で繋がってくれます。 接続設定は一般的に「プロファイル」と呼ばれ、プロファイルもnmtuiの「edit a connection」から編集出来ます。


nmtuiの使い方は、まず初めに、「Activate a connection」。


もしその設定を変更する必要があれば、「edit a connection」を使います(普段は使わないということ)。


ネットワークに接続できたら、システムを次のコマンドでアップデートします。


# pacman -Syu


また、pacmanの出力をカラー化して見やすくします。


# vim /etc/pacman.conf


/etc/pacman.confを開いたら、 Colorの前の#を消して、アンコメントしましょう。 ついで、ILoveCandyの一行を追加します。 更に、ParallelDownloadsの前の#も消して、 アンコメントすると、 リポジトリからの複数のパッケージを同時に ダウンロードしてくれるようになります。


# Misc options
....
Color
ILoveCandy
....
ParallelDownloads = 5
....


アカウントの準備とsudo

一般アカウントを作成し、sudoの権限が使えるようにします。 「neko」というアカウント名の場合、useraddコマンドで以下のようにwheelグループに所属するようにアカウントを作成します。


# useradd -m -G wheel neko


以下のコマンドを実行して、 作成したアカウントのパスワードを設定します。


# passwd neko


次にsudoパッケージをインストールします。


# pacman -S sudo


インストールが出来たら、wheelグループのアカウントにsudo権限を与える設定を行います。 以下のように、好きなエディタをEDITOR変数に設定して、visudoコマンドを実行します。


# EDITOR=vim visudo


自動的にエディタで設定ファイルが開かれるので、 wheelに関する以下のような一行の先頭にある(#)を消して、以下と同じ様にして、 保存し、終了します。


%wheel ALL=(ALL:ALL) ALL


sudoの設定が完了したら、さっそく、新しいアカウントでログインしなおしましょう。


一般ユーザーでの仮設定

普段遣いのシェルをzshに変更し、 Arch Linuxでパッケージ化されているzshの簡単な設定を追加します。


その前に、「which」コマンドをインストールします。


$ sudo pacman -S which


chshコマンドを使ってログインシェルをzshにします。 コマンド実行後、ログインし直すとzshの環境になります。


$ chsh -s $(which zsh)


grml-zsh環境では、一般的な.zshrc以外に、2つの設定ファイルが使われることを把握しておきましょう。


  • ~/.zshrc.pre
  • ~/.zshrc.local

バッテリー状態表示

インストール設定作業中、 ノートパソコンの場合コンソールでもバッテリー状態が見れると便利なのでgrml-zshの既定の設定を利用して、 バッテリー残量表示します。


$ vim ~/.zshrc.pre


~/.zshrc.preを開いて、次の一行を加えます。


GRML_DISPLAY_BATTERY=1


編集後、保存して終了。次のコマンドで、zshを再起動。


$ exec zsh


編集行を使いやすく

定番のzshカスタマイズもついでに入れます。


$ sudo pacman -S zsh-syntax-highlighting zsh-autosuggestions 


パッケージをインストールしたら、 ~/.zshrc.localをエディタで開きます。


$ vim ~/.zshrc.local


次の2行を加えましょう。


source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.plugin.zsh                                                                          
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.plugin.zsh


編集後、保存して終了。次のコマンドで、zshを再起動。


$ exec zsh


更にユーザー権限で、rebootやshutdownが通るように polkitパッケージを入れておきます。


$ sudo pacman -S polkit


時計の設定ふたたび

新しい環境で時計の設定をしておきます。


$ sudo timedatectl set-ntp true


Windowsとのデュアルブート

設定ファイル/etc/default/grubを開きます。


$ sudoedit /etc/default/grub


# GRUB_DISABLE_OS_PROBER=falseの行の先頭の # を 消して、アンコメントします。


設定ファイルの書き換えが終ったら、忘れずにgrubを以下のコマンドで更新します。


$ sudo grub-mkconfig -o /boot/grub/grub.cfg


再起動すれば、grubのメニューにWindowsの起動項目が追加されているはずです。


yayのインストール

AUR用のpacmanラッパー「yay」をインストールします。 開発先は、以下のリンク。


GitHub - Jguer/yay

GitHub - Jguer/yay

Yet another Yogurt - An AUR Helper written in Go.

ページの指示に従って、まず、Arch Linuxの必要なパッケージをインストールします。 途中で聞かれる選択肢は、全部インストールするのデフォルトでOK。


$ sudo pacman -S --needed git base-devel


aurリポジトリから、以下のコマンドでyayをクローンします。


$ git clone https://aur.archlinux.org/yay.git


yayディレクトリに入って、ビルドします。


$ cd yay
$ makepkg -si


goパッケージがインストールされ、yayがビルドされ、最後に、インストールされます。途中に聞かれる質問はyesで大丈夫です。 インストールが完了し、プロンプトが戻れば、yayディレクトリは必要ないので削除して構いません。


ranger

設定作業は、コンソール上で動くファイラを使うのが便利です。 そこで人気のあるrangerをインストールして置きましょう。


ranger logo

ranger

ranger is a console file manager with VI key bindings.

必要パッケージは次の通り。 コンソール上では、画像プレビューが出来ないかもしれませんが、 必要なもののインストールと設定はついでにしておきます。


  • ranger
  • highlight
  • w3m
  • imlib2
  • feh
  • python-pillow

まずは必須のパッケージ。


$ sudo pacman -S ranger highlight


画像プレビューで必要になるものを入れておく。


$ sudo pacman -S w3m imlib2 feh python-pillow


インストールが終わったら、次のコマンドでデフォルトの設定ファイルを作成します。


$ ranger --copy-config=all


設定ファイルのうち~/.config/ranger/rc.confをエディタで開きます。


$ vim ~/.config/ranger/rc.conf


ファイル内の該当部分を以下のように設定しましょう。


...
# Show hidden files? You can toggle this by typing 'zh'
set show_hidden true
...

# Use one of the supported image preview protocols
set preview_images true
...

# Draw borders around columns?
set draw_borders both
...

# Which colorscheme to use?  These colorschemes are available by default:
# default, jungle, snow, solarized
set colorscheme jungle
...



rangerは高機能で、色々なことが出来ますが、逆に、出来ることが多すぎて色々と混乱してしまうかもしれません。 慣れないうちは、ファイル操作(コピーや移動)については、無理にrangerでやらなくても、シェルで普段道理にやればOKです。


rangerはカーソルキーの上下左右で直感的に、ディレクトリの移動とファイルの選択が行えます。 最終的には、テキストファイルの場合、vimでファイルが開かれます(vim使わない人は、「:q!」という終了コマンドだけ把握しておきましょう)。


rangerを初めて使う人は、以下の2つだけ暗記しましょう。 これで十分、コンソール上の作業効率が爆上がりします。


「Shift + s」でシェルを開く(ディレクトリ移動)

rangerは、「Shift + s」を押すと、 現在のディレクトリをカレントディレクトリとするシェルが開き、 そのシェルからexitすると、rangerに戻ることが出来ます。 ディレクトリの移動に関しては、シェルで行うより、 ranger上でカーソルキーを使って直感的に移動するほうが快適です。


また、rangerに慣れるまでは、ranger自体でファイル操作する必要はありません。 シェルに入って普段どおり、シェル上でファイル操作するほうが安全で確実です。


「i」でプレピューモード

rangerは、右画面に選択されているファイルの中身をプレビューします。 しかし、プレビューは画面に表示されている一部だけです。ここで、「i」キーをおすと、 プレピューモードになって自由にファイル内を見渡すことが出来るようになります。 もういちど、「i」を押せばプレビューモードから抜けます。


Neovim

vimに関する設定は、ひとそれぞれなのですが、 いざ、新規のパソコンにvimに関する環境を構築(引っ越し)しようとすると、 めんどくさかったりしそうですよねぇ。 そこで、自分好みの設定はあとでやるとして、 とりあえず、neovimをインストールしてモダンな状態を作ってしまう手順です。


まずは、neovimインストールに必要となるパッケージのインストールです。


  • neovim
  • python-pynvim
  • xsel
  • nodejs

$ sudo pacman -S neovim python-pynvim xsel nodejs


ついでに、バーチャルコンソールでもステータスラインがまぁまぁ綺麗になるように、powerlineフォントもインストールします。


$ yay -S powerline-console-fonts-git


バーチャルコンソールでのフォントの変更は、setfontコマンド、若しくは、 永続的な変更は以下の通り/etc/vconsole.confを編集。


$ sudo vim /etc/vconsole.conf


...
FONT=ter-powerline-v28n
...


コンソール上で多くのものを書き込んだりコピペするのは大変なので、 .config/nvim/init.vimの雛形をgithbuの'nekolinuxblog/neovim_setup_example'に用意しています。


このinit.vimでは、plugin管理にvim-plugを使いて、vim-plug自身とプラグインはinit.vimの読み込みで自動で行われるようになっています。 そして、インストールされるプラグインは以下のとおりです。


  • preservim/nerdtree
  • vim-airline/vim-airline
  • vim-airline/vim-airline-themes
  • neoclide/coc.nvim

nerdtreeやairlineについてのキーバインドは、init.vimで確認して下さい。 coc.nvimについての設定は、coc.nvimのサンプル設定をコピー・アンド・ペーストしています。


この様に設定されたinit.vimを以下のコマンドで自分のパソコンにダウンロードして、 自分の設定としてコピーします。


$ git clone https://github.com/nekolinuxblog/neovim_setup_example.git


$ cd neovim_setup_example
$ cp -r nvim ~/.config
$ nvim


設定ファイルが準備できたら、neovimを起動します。


$ nvim


起動の最中、関数が見つからないエラーが数回表示されます。 そのエラーがでるごとに、エンターキーを押して下さい(プラグインがまだインストールされていないため出るエラーでシステムに支障はありません)。 確認が終わると、puluginが自動的にインストールされます。 neovimの左側ウィンドウにインストールの様子が表示されます。 インストールがおわれば、準備完了です。


rangerのエディタをneovimにするために、~/.zshrc.localに次の一行を追加しておきましょう。


export EDITOR=nvim


最後に

とりあえず、ネットに繋がってさえいれば、忘れ物があっても付け足せるので、 これだけあれば、後は自分の好きなArch Linuxに仕上げていけば良いだけです。


Arch Linux をおしゃれに最速インストール Arch Linux をおしゃれに最速インストール Reviewed by shunsk on 5/13/2021 Rating: 5

No comments:

Sora Templates

Image Link [https://scontent.xx.fbcdn.net/v/t1.0-9/13343039_103147363441877_5912666874811349341_n.jpg?oh=32de40bba33988d454d1a3104dde18ac&oe=57D1E6F4] Author Name [Syunkichi] Author Description [Let's write codes staylishly!!!!!] Twitter Username [webgeek7] Facebook Username [syunkichi.nekota] GPlus Username [114037852049523769954] Pinterest Username [pcgeek91] Instagram Username [s.nekota]