Manjaro Linux をやめて EndeavourOSをはじめてみる
Thinkpadでいい感じにEndeavourOSを使う
Thinkpad X1 CarbonにEndeavourOSを導入した記録
わからないこと
- 丁寧なインストール手順
Windowsのパーティションを縮める方法とか、USBメモリにインストールメディアを焼くとか細かいことは割愛
募集中
こんなソフトおすすめだよというのがあったら教えてください。
ツールは日々探しています。
構成
Thinkpad X1 Carbon gen9
Thinkpad 全体的に使いやすいのだけれど、不満点がいくつかあって……
ただしWindowsを完全に消してしまうと色々と不都合もあるので、デュアルブートを選択。
Windowsがデフォルトで巨大なCドライブを持っているのでこれを縮めてWin/Linux共有フォルダとLinux領域を確保。
インストール
言語
システム言語は En-USで設定。
デスクトップ
今回はKDEを使ってみたいの Plasma KDEを選択。
Boot loader
デュアルブートとしたいのでGrubを選択。
Partition
パーティション割合は良い感じで 今回は/に100GB、/homeに400GBほど割り当てた MB単位でしか指定できないので計算して割り当てる
FAT32 500MB /boot/efi
btrfsも試してみたい気はしたけれど今回はExt4で。
その他はポチポチ環境にあった設定を入れていく
初期設定
インストールが終わったら諸々初期設定をしていく。
日本語環境をシステム設定から入れる。
時刻調整
Winとデュアルブートにしていると、時計がずれるので修正する。
Linux側で$ sudo timedatectl set-local-rtc true
システムツール系
- systemd
- yay
システムモニタ系
neofetch- fastfetch
- conky
- bottom
日本語関係
fcitx5の辞書改良版を利用する。
yay -S fcitx5-im fcitx5-mozc-ut
ビルドが終わったら環境変数に追加
/etc/environmentを編集する。
$sudo echo "XMODFIERS=@im=fcitx" >> /etc/environment
システムクロック
マルチブート環境だとシステムクロックがずれる場合がある。
まずはUTCで認識するようにする。
$sudo timedatectl set-local-rtc 0
chromium系アプリなど
/usr/share/hogehoge.desktop ファイルに起動オプションをつけることで日本語入力を良い感じに動かせるようにする。
Exec=/usr/bin/hogehoge --enable-features=UseOzonePlatform --ozone-platform=wayland --enable-wayland-ime %U
ターミナル/エディタ
- alacritty
- fish
- fisher
- starship
- neovim
- git
- ripgrep(rg)
- fd
- tree
ブラウザ系
- vivaldi
- slcak-desktop
- discord
ブラウザ版にすることにした
システムツール
-
スクリーンショットツール
次のやつを組み合わせて矩形選択できるようにしている。
sudo pacman -S grim slurp wl-clipboard -
Ranger
ターミナルで動くファイラ -
reflector
-
chezmoi
dotfileマネージャ
chezmoi
dotfiles マネージャ。なんて読むかわからないと思ったらフランス語らしい。
YADMと悩んだけれどクロスプラットフォーム対応で凝ったことができるのはこっちらしいのでこちらを採用。
初期設定をしておく。
# インストール
$ yay -s chezmoi
# 初期化+Github連携
$ chezmoi init git@github.com:ユーザー名/dotfiles.git
# 管理するファイルやディレクトリを追加する
$ chezmoi add .bashrc
$ chezmoi add .config/hogehoge
Network Tools
- Wireshark
- net-snmp
- mtr
- smokeping
fishの設定
メインのシェルとしてfishを採用する。
ただしfishはPOSIX互換では無いためデフォルトシェルとする場合は注意が必要だったりする。
そのためTerminalを呼び出すときの起動オプションでfishを立ち上げるようにしている。
fishのconfigは~.config/fish/config.fishになるので作成する。
Alias
fishでもAliasは使用可能だが、置き換えは可読性が良くないのと後で忘れるのでabbrを利用する。
abbrはabbreviation、略語で入力すると元のコマンドを展開してくれるので非常に便利。
細かい設定はconfig参照のこと。
Plugin
プラグインマネージャはfisherを使う。
fisher install PatrickF1/fzf.fish
fisher install edc/bass
fisher install meaningful-ooo/sponge
fisher install jethrokuan/z
forUbuntu
ubuntuでfisherをいれるにはfish上で curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher
デスクトップ環境
今回はKDE+wayland のリッチなデスクトップ環境を使いたいためKDEを入れたけれど、ウィンドウマネージャはタイル型を使いたいのでタイル型のWMであるSWAYを採用しようと思う。
sway
# pacman -S sway xorg-xwayland qt5-wayland
Sway 周り
Swayシステムに関係するエコシステム
swayidle
swaylock
- Kanshi
拡張ディスプレイの管理ツール
ラップトップで環境によってディスプレイ構成が変わったりするときは必要そう。
$ yay kanshi
$ mkdir ~/.config/kanshi
$ touch ~/.config/kanshi/config
sample 各環境に合わせて
ディスプレイを接続した状態で swaymsg -t get_output で現在認識中のハードウェアがわかる
設定ファイルを書く。
以下は一例。
profile {
output eDP-1 mode 1920x1080 position 0,0 scale 1.0
}
profile {
output eDP-1 mode 1920x1080 position 0,0 scale 1.0
output "Eizo Nanao Corporation EV2795 52326062" mode 2560x1440 position 1920,0 scale 1.0
}
profile {
output eDP-1 mode 1920x1080 position 0,1440 scale 1.0
output "Eizo Nanao Corporation EV2795 52326062" mode 2560x1440 position 0,0 scale 1.0
output "Eizo Nanao Corporation EV2795 52324062" mode 2560x1440 position 2560,0 scale 1.0
}
~/.config/sway/config ファイルに以下の行を追加して、swayの起動時にkanshiを実行するようにします。
exec_always "systemctl --user restart kanshi.service"
systemdサービスの設定:
kanshiをsystemdサービスとして実行するために、以下の手順を実行します:
~/.config/systemd/user/kanshi.service ファイルを作成し、以下の内容を記述します:
[Unit]
Description=Kanshi dynamic display configuration
PartOf=graphical-session.target
[Service]
ExecStart=/usr/bin/kanshi
[Install]
WantedBy=sway-session.target
サービスを有効化します:
systemctl --user enable kanshi.service
nvim のカスタマイズ
普段使うツールとしてnvimを採用したいのだけれど、これだけで本が一冊書けてしまうのでカスタマイズは別記事で。
Launcher
fuzzel/wofi
Statusbar
waybar
ScreenLock
swaylock-effects
Fonts
noto-fonts-emoji
Tools
普段でよく使うツール等を入れていく
Network 系
-
wireshark
パケットキャプチャ、アナライザ。必須。
ユーザとして利用するためwireshark groupにユーザ追加をする
$ sudo gpasswd -a USER wireshark -
mtr
Traceroute を良い感じに拡張してくれる。 -
hping
tcp/ipのパケットを作ってテストできる
Security 系
長くなりそうなので別記事にする。
とりあえず
最低限の導入はできたのでその後のセットアップは別に。
Discussion