【Arch+niri+chezmoi】開発環境現状確認 2026-02
はじめに
Arch Linuxを常用するようになってから約4ヶ月が経過しました。春の長期休暇を機にdotfilesをNixに移行しようとしているので、一旦現状の環境の振り返りをしたいと思います。

マシン・OS
物理端末: Lenovo ThinkPad T480s
2025-09-21に東京ラジオデパート3FのAKIBA JUNKSにて9000JPYで購入しました。SSDがなかったのでヨドバシカメラにて512GBのNVMe SSDを5000JPYで購入し挿入しました。いわゆるAIバブルの影響でここ数ヶ月のところ各種半導体製品が著しく値上がりしており、今ヨドバシのサイトを確認したところ同商品が18000JPYになっていました。あのタイミングで購入できたことを幸運に思います。
MMAの合宿中にUbuntuをインストールしている様子↓
今これ pic.twitter.com/ps2W5ejqCv
— 綿糸てせ@電通大SF研 (@ctes091x) September 26, 2025
現在はキーボードを †US Backlit† に換装して使用しています。
OS: Arch Linux
工学研究部の先輩から強くおすすめされていたため導入しました。当初はMcbeEringiさんのdotfilesにあったsetup.shを叩いて生やした環境をそのまま使用していましたが、11月末の調布祭後ごろに再びインストールして自力での環境構築を試みました。現状割と安定して動作しています。
当初使用していたArch+Hyprland+McbeEringi dotfiles の環境↓
— 綿糸てせ@電通大SF研 (@ctes091x) October 19, 2025
ウィンドウマネージャ: niri
横方向に無限にスクロールできるタイル型ウィンドウマネージャです。あなた氏に紹介されて入れてみたら快適だったので使い続けています。
推奨セットアップにDank Material Shellというデスクトップシェルが入っていたのでこれも使っています。いい感じのステータスバーを特段の設定なしで出してくれるのでありがたいです。

環境のセットアップ
dotfiles管理: chezmoi
各種設定ファイルを単一のGitリポジトリで管理でき、それらをコマンド一発で自動でホームディレクトリ以下に配置してくれます。chezmoi init ctes091xするとctes091x/dotfilesがGitHubからクローンされ、~/.local/share/chezmoi/に置かれます。ここにあるファイルを編集してchezmoi applyを実行すると、自動で適切な位置にコピーされます。
外部ファイルやGitリポジトリをネット上から取得し、これらを自動で配置することも可能です。.chezmoiexternal.tomlに種別・URL・更新間隔を記述すると、chezmoi applyするときにそれらのファイル類が取得・配置されます。
# 記述例。vim-plugのスクリプトをGitHubから取得する
[".local/share/nvim/site/autoload/plug.vim"]
type = "file"
url = "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
refreshPeriod = "168h"
一般ユーザー権限でも導入できるため、solやCEDの端末にもインストールして使用しています。
chezmoi, pronounced /ʃeɪ mwa/ (shay-mwa)
chezmoiの発音に納得が行かない
— 綿糸てせ@電通大SF研 (@ctes091x) December 21, 2025
カラースキーム: Catppuccin Mocha
各種ソフトのカラースキームをCatppuccinで統一しています。思いつくおよそあらゆるソフトウェアのテーマファイルがGitHubにあるので、これを先述のchezmoiで取得・適用しています。
ターミナル・シェル
ターミナルエミュレータ: foot
当初はniriの推奨になっていたAlacrittyを使用していましたが、名無し。さんのプロフィールを画像付きで表示したかったため、Sixelフォーマットによる画像表示に対応したfootに乗り換えました。

Catppuccin Mochaテーマを適用しています。Sauce Code Pro Nerd Fontを使用しており、Neovimやtmuxのステータスラインをいい感じに表示できています。
シェル: zsh
Oh My Zshでテーマとプラグインの管理を行っています。プロンプトテーマはre5et、プラグインはzsh-autosuggestionsのみを導入しています。
ターミナルマルチプレクサ: tmux
tmuxのCatppuccinテーマにいい感じのステータスバーの設定が同梱されていたため、これをそのまま使用しています。CPU使用率やバッテリー残量を表示するためのプラグインはchezmoiの外部リポジトリ取得機能を用いてGitHubから落としています。TPMはいらない子
画面分割のショートカットがVimと逆だったので入れ替えて使用しています。
bind v split-window -h -c '#{pane_current_path}'
bind h split-window -v -c '#{pane_current_path}'
ソフトウェア
エディタ: Neovim
冬期休暇頃にVimから移行し、これにあたって設定をLuaに書き換えました。
solにNeovimがないからという理由だけでVimを使い続けてたけど、普通にバイナリを落とすなりソースからビルドするなりすればなんだって入れられるので完全に移行してしまったっていい
— 綿糸てせ@電通大SF研 (@ctes091x) January 12, 2026
プラグインマネージャはVimの頃からの惰性でvim-plugを使用しています。ステータスラインはlualine、ファイラーはFernを使用しています。

Vimでテトリスをやりまくっていたおかげでhjklキーによるカーソル移動にはかなり慣れられましたが、このスクリプトはNeovimでは正常に動作しないため、これをやるためだけに今もVimを残しています。
日本語入力: fcitx5-skk
夏期休暇半ば頃からSKKを使用しています。デフォルトの設定では\を押してしまうと区点入力モードに移行して身動きが取れなくなってしまうため、~/.config/libskk/rules/default/keymap/default.jsonの"\\"のフィールドを消去することでこれを無効化しました。デフォルトのファイルを上書きするの良くないかもしれない
ランチャー: fuzzel
niriの推奨セットアップにあったのでそのまま入れました。catppuccinテーマを適用しています。Dank Material Shellにも組み込みのランチャーがありますが、ショートカットキー一発で開くオプションを見つけられていないため、主としてfuzzelを使用しています。
リソースモニタ: btop
いい感じのTUIでジョブ管理やリソースの監視ができます。catppuccinテーマを適用しています。
Gitクライアント: lazygit
いい感じのTUIでGitリポジトリの操作ができます。catppuccinテーマは適用していませんが、ターミナル自体のカラーテーマ設定によってそれらしく表示されています。
おわりに
とりあえず今後環境を移行したあとで過去を振り返り懐かしむに足るだけの情報は残せたと思うので、ここからNix+home-managerへの移行を頑張っていきたいと思います。
人々が楽しそうにNixをしばいているのを見てるとchezmoiとかいうの卒業したくなる
— 綿糸てせ@電通大SF研 (@ctes091x) January 17, 2026