Post

最強のLinuxノートを作る

最強のLinuxノートを作る

この記事は、TUT Advent Calendar 2024 11日目の記事です。 昨日の記事は、 い。さんの「専門外への就職、そして」でした。

はじめに

 B3 3系のDDliaと申します。一昨年、昨年に引き続き第二水曜日に投稿します。わたしについてはAboutをご覧ください。 今回は最強のLinuxノートを作ります。

きっかけ

 同じコンピュータクラブ、音楽技術部、総合文化部喫茶部門に所属しているExflikt先輩のArch Linux + Hyprland を積んだノートPCを見て前からいいな〜と思っていました。改めて考えてみると音楽技術部の本番環境がKubernetes上で動いていたり、自宅にKubernetesクラスタが生えたりとここ最近コンテナの開発をすることが多く、本格的にLinuxを積んだノートPCが欲しくなってきました。WindowsだとWSL2、MacだとQEMU上でLinuxを動作させてコンテナを動作させますが、Linuxであればネイティブに動作させることができます。

マシンの選定

 Exflikt先輩のThinkPad x240を見て前からいいな〜と思っていたので、ThinkPadは確定です。ノートPCを買うなら小さい子が良いので12.5インチ/13.3インチなxシリーズへ自動的に決まります。魔改造(後述)したかったのでメモリやSSD等の交換が可能なx270を中古で調達することにしました。メルカリで13000円。

パーツ・周辺機器の購入

全部で27000円弱でした。本体合わせて40000円弱。

メモリ

初期搭載メモリは4GBです。絶対に足りないので32GBに増やします。Kingston製のDDR4メモリ、8438円。大容量メモリもだいぶ安くなりましたね。

SSD

初期搭載はHDD500GBです。SSDに載せ替えます。キオクシア製のSATA SSD、4980円。

キーボード

JISキーボードをUSキーボードに載せ替えます。AliExpressで14.66ドル。

バッテリー

ThinkPad x240 ~ x270は内蔵型バッテリーと着脱可能バッテリーの2種類が搭載されており、PCを稼働させながらのバッテリー交換ができます(ホットスワップ)。標準では3セルの着脱可能バッテリーが搭載されていますが、講義室で電池が切れかけたとき用に互換品の6セルの着脱バッテリーを追加購入しました。4790円。

ThinkPad Pro Dock

ThinkPad自体拡張端子が豊富なのであまり困ることはないのですが、VGAやDisplayPortを扱いたい場合があるので買いました。Amazonで3010円。 DisplayLinkという面白そうな機能も付いているので気が向いたときに遊びます。

ThinkPad PD 変換アダプタ

USB PDからNEC/Lenovo用の電源プラグに変換してくれるアダプタです。x270はUSB PDによる電源供給にも対応していますが、1ポートしかないUSB-Cポートを消費してしまうのは勿体ないので電源コネクタも使えるようにしておきます。

ThinkPad 12インチ スリーブケース

ThinkPad純正のスリーブケースです。学割が適用されて1760円でした(Lenovo直販)。 

魔改造

 ThinkPad T430も持っていて、これは簡単にあらゆるパーツを交換できた記憶があるのですが、x240以降は意外と大変でした。キーボードの交換をする場合はマザーボードまで一度取り外す必要があります。

中を開けるとこんな感じ

image.png

メモリとHDDとキーボードを載せ替えます。キーボードが一番大変だった。

image.png

ついでにCPUグリスも塗り直しておきます。

image.png

ソフトウェアの選定

 Exflikt先輩がHyprlandを使っていてタイル型ウィンドウマネージャをいいなーって思っていました。最初はDebianをベースにいろいろ突っ込んでいこうかと思いましたが、Exflikt先輩に相談したところFedora良いんじゃない?という助言を頂けたのでFedoraを使うことにしました。確かに自宅のサーバーはほぼRHELかRHELクローンで動作しているのでRHELのアップストリームであるFedoraはぴったりです。 

タイル型ウィンドウマネージャ

嬉しいことにFedoraにはFedora Sway Spinというものが用意されているのでそれを使います。

OSのインストール

 https://fedoraproject.org/spins/sway からOSイメージをダウンロードしてDVDやUSBに焼きます。 USBに焼くときはRufusなりEtcherなりを使うと焼けます。 USBを挿してからThinkPadの電源を投入し、Enterを押した後にF12を押してUSBからブートします。ネットワークやディスク、ユーザの設定をしてインストールします。

つかいかた

  • Windowsキー + d でランチャーの起動
  • Windowsキー + 数字 で仮想デスクトップの切り替え
  • Winsowsキー + Shift + 数字 でウィンドウを別の仮想デスクトップに
  • Windowsキー + 矢印 でウィンドウの切り替え
  • Windowsキー + Shift + 矢印 でウィンドウの移動
  • Windowsキー + Enter でターミナルの起動

各種設定

ネットワーク

まず、インターネットに接続できないとアプリケーションのインストールも何もできないのでネットワークの設定を行います。 右上からwifiのアイコンを右クリックし、tutwifiに接続します。 tutwifiに接続する際は、以下のように設定した上で情報メディア基盤センターのアカウントを入力すれば接続できるはずです。

  • Security: WPA/WPA2 Enterprise
  • Authentication: Tunneled TLS
  • No CA Certificate is requiredにチェックを入れる
  • Inner Authentication: MSCHAPv2(no EAP)

アップデート

1
$ sudo dnf update

dnfを使います。RHELと基本的には同じなので助かります。

Vim・Gitのインストール

1
$ sudo dnf install vim git

日本語入力関連

fcitx5をインストールします。

1
$ sudo dnf install fcitx5 fcitx5-configtool fcitx5-mozc

Google Chromeのインストール

1
$ sudo dnf install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

Chromeをインストールしたら、Waylandで動作するように設定します。chrome://flagsを開いてPreferred Ozone platformWaylandに、Wayland text-input-v3Enabledにします。

ターミナルのインストール

デフォルトでFootがインストールされていますが、私はKonsoleを使いたいのでインストールします。

1
$ sudo dnf install konsole

Swayの設定

/etc/sway/config~/.config/sway/configにコピーして編集します。

1
2
3
$ mkdir -p ~/.config/sway
$ cp /etc/sway/config ~/.config/sway/config
$ vim ~/.config/sway/config

ThinkPadのトラックパッドとトラックポイントの設定をします。以下を追記します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
input type:touchpad {
        dwt enabled
        tap enabled
        natural_scroll enabled
        accel_profile adaptive
        pointer_accel 0
        scroll_factor 0.3
        click_method none
}

input type:pointer {
        accel_profile flat
        pointer_accel 0.3
        scroll_factor 0.5
}

fcitx5を自動起動させるために、以下も追記します。

1
exec fcitx5 -dr

Visual Studio Codeのインストール

1
2
3
4
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null
$ dnf check-update
$ sudo dnf install code

Podmanのインストール

コンテナといえばDockerが有名ですが、最近のRHELではPodmanが推奨されているのでPodmanを使います。

1
$ sudo dnf install podman podman-compose podman-docker

podman-dockerはDockerのエイリアスを提供します。

C/C++のインストール

実験でC/C++を使うのでインストールしておきます。

1
$ sudo dnf install gcc gcc-c++ g++

Javaのインストール

音楽技術部でJavaを使うことがあるのでインストールします。

1
$ sudo dnf install java-latest-openjdk

Q Light Controller Plusのインストール

音楽技術部の照明制御に使うのでインストールしておきます。

1
2
$ sudo dnf config-manager addrepo --from-repofile=https://download.opensuse.org/repositories/home:mcallegari79/Fedora_40/home:mcallegari79.repo
$ sudo dnf install qlcplus-qt5

Cloudflare Zero Trust・cloudflaredのインストール

自宅のサーバーにアクセスする際に使います。

1
2
3
$ curl -fsSl https://pkg.cloudflareclient.com/cloudflare-warp-ascii.repo | sudo tee /etc/yum.repos.d/cloudflare-warp.repo
$ curl -fsSl https://pkg.cloudflare.com/cloudflared-ascii.repo | sudo tee /etc/yum.repos.d/cloudflared.repo
$ sudo dnf install cloudflare-warp cloudflared

できたもの

image.png


おわりに

 いかがでしたでしょうか。最強のLinuxノートを作ることができました。Linuxを普段使いすることによって、より一層自宅サーバの運用やコンテナの開発が捗るようになりました。音楽技術部の裏側もほとんどがLinuxで動いているので、検証もしやすくなりました。今後もこのノートPCを使っていろいろと開発していきたいと思っています。

 最後に、Exflikt先輩にはコンピュータクラブの部会や喫茶部門の活動日にLinuxデスクトップ環境についていろいろと教えていただきました。ありがとうございました。

This post is licensed under CC BY 4.0 by the author.

Trending Tags