私の学部の指導教員は、大学 1 年生の新学期が始まったばかりの時に、20 ページ以上の Word 文書を私たちに配布し、2 週間以内にその文書の指示に従って Windows と Manjaro のデュアルブートを自分でインストールするように求めました。その理由は、プログラム設計の課題を Linux システム上で作成、デバッグ、実行する必要があるからです。
私は常に他人から与えられたタスクを考えずに受け入れるのが嫌いなので、多少無理な要求と 30GB を超えるカスタムシステムファイルを前にして、非常に抵抗を感じました。
そこで、その日、私は Arch Linux の WSL(Windows Sub-system for Linux)と仮想マシンに Manjaro システムをインストールするという自分勝手な 2 つの選択肢を試みました。基礎がしっかりしている同級生を除いて、他の多くのコンピュータに不慣れな大学生たちは、システムをインストールするというタスクに数週間も心を乱されていましたが、私は自分の快適ゾーンに浸り、Windows 11 システム上で様々なビデオゲームを楽しんでいました。
ここまでの話を聞くと、あなたはこんな展開を期待するでしょう —— 少し自由を得た大学生が我が道を行き、最後には厳しい現実に打ちひしがれ、なぜもっと早く目覚めなかったのかを後悔するという。
まあ、あなたがそう思っていないかもしれませんし、私も自分の決断を後悔していません。デュアルブートの方法は確かにあまり賢明ではなく、面倒なだけで、実際に役立つ場面はほとんどなく、ほとんどの人にとって有効な解決策に過ぎません。さて、私が 2 台目のノートパソコンを取り出したとき、あなたはどう対処しますか?
冷淡な接待#
私は高校時代を通じて付き合ってきた Dell の Inspiron を持っていて、卒業後に光栄に引退しました。なぜなら、より性能の良いゲーミングノートパソコンを手に入れたからです。したがって、このノートパソコンは数ヶ月間放置されていましたが、ようやく役に立つ時が来ました。私はこのあまり使わないコンピュータに Manjaro システムをインストールすることに決め、課題の要求に応えることにしました。
私は以前の古い Windows システムを完全に捨て去り、単独の Manjaro システムをインストールするつもりでしたが、指導教員が提供した文書にはデュアルブートの操作ガイドしか記載されておらず、さまざまな複雑なパーティションに関する内容が多く、私にはあまり参考になりませんでした。そこで、まず文書に従ってシステムインストール用のブートディスクを作成しました。私は Manjaro の公式サイトから KDE バージョンのシステムイメージをダウンロードし、Ventoy と USB メモリを使ってブートディスクを作成しました。システムがインストールされた後、指導教員がグループに送信した 30GB 以上のシステムスナップショットを新しくインストールしたシステムに復元し、ソフトウェアのインストールの手間を省くことにしました。
** しかし、私はすぐに唯一の USB メモリを壊してしまいました。** 操作中にミスがあったのか、何か理解できない問題が発生したのか、私は Ventoy を使ってブートディスクを作成する際に、文書に記載されていないエラーメッセージが表示され、その結果、Windows で USB メモリにアクセスできなくなりました。そこで、USB メモリをフォーマットし、再度パーティションを設定しましたが、このディスクには重要なデータはありませんでした。しかし、2 回目の試行でも同じエラーが発生し、3 回目、4 回目も同様でした。結局、私はあきらめて、ルームメイトがすでに作成したブートディスクを借りました。
その後、私は何度もフォーマットしたこの USB メモリを通常通り使用しましたが、数回ファイルをコピーする際にファイルが破損していることに気付きました。プレゼンテーションの際に、自分が作成した PPT が開けないことに気づくまで、この USB メモリが正常に使用できなくなっていることに気づきませんでした。どの段階で問題が発生したのか、今でも理解できていません。
Manjaro のインストーラーはグラフィカルインターフェースを持っており、いくつかの簡単な設定を行うだけで自動的にインストールできます。私は元の Windows システムを直接消去するつもりでしたが、Manjaro はインストール時に元のシステムを直接上書きするオプションを提供していました。しかし、何度か試みたものの、エラーが発生し、正常にインストールできないというメッセージが表示されました。具体的な詳細は時間が経ちすぎて忘れてしまいましたが、私はこのエラーに頭を抱え、最終的に指導教員が提供した文書の中に答えを見つけました ——ああ、BIOS 設定を変更していなかったのです。
全て英語でマウス操作ができないインターフェースの中で、私は正しい設定項目を見つけるのにかなりの時間を費やしました。その後、順調にインストールが完了し、特に問題は発生しませんでしたが、指導教員が提供した 30GB 以上のシステムスナップショットがデュアルブートの構造であることに気づきました。つまり、本質的には自分のマシン上で彼のコンピュータのファイルパーティションを 100% 復元し、彼のシステム内のすべてのファイルを私のコンピュータに復元する必要があるということです。しかし、私はデュアルブートをインストールしていないので、このスナップショットは使用できませんでした。
しかし、システムはすでにインストールされているので、ソフトウェアは自分でインストールすればいいのです。
パックマンの歓声#
Arch Linux のソフトウェアエコシステムは、さまざまな Linux ディストリビューションの中でも良好な方で、多くの人が Manjaro を選ぶのも、Arch を基に開発されているからです。国内ではほとんどのデスクトップアプリケーションが、国産システムである deepin や麒麟用により一般的な.deb
パッケージしか提供されていませんが、AUR(Arch User's Repository)の存在により、Arch ユーザーは Arch ディストリビューションに適したソフトウェアパッケージを誰でもアクセスできる公共リポジトリに公開できます。そして、AUR はyay
というコマンドラインツールを使って直接アクセスできます。
つまり、もしソフトウェアパッケージがpacman
がアクセスできる Arch 公式リポジトリに収録されていない場合でも、ユーザーは AUR を通じてコミュニティが管理するソフトウェアパッケージをインストールすることができます。
Arch ユーザーにとって、yay
を使って Arch 公式リポジトリと AUR からソフトウェアをインストールするのが最良の選択ですが、当時 Linux のソフトウェアエコシステムに初めて触れた私は何も理解しておらず、ソフトウェアのインストール方法が非常に混乱していました。おおよそ次のように説明できます:
- Manjaro が提供するソフトウェアマネージャーで検索し、あればここからパッケージをインストール;
sudo pacman -S パッケージ名
でこのパッケージを検索;- ソフトウェアが AppImage を提供している場合は、AppImage Launcher を使ってインストール;
- 公式サイトから
.deb
パッケージを直接ダウンロードし、Manjaro に強制的にインストール(絶対にこうしないでください、ソフトウェアパッケージの依存関係が壊れる可能性があります!) flatpak
とflathub
を使ってソフトウェアパッケージをインストール。
以前はyay
という便利なツールを見つけられず、見つけた後も AUR でソフトウェアパッケージを探すことができなかったため、Manjaro を使い始めた頃は非常に苦労しました。QQ、WSL、そしてある小さな猫のソフトウェアをインストールするのに 2 日間もかかりました。
しかし、その後は賢くなり、ソフトウェアをインストールする前に AUR で直接利用可能なパッケージがあるかを検索し、なければdeb
パッケージをダウンロードし、debtap
というツールを使って Arch 用のパッケージに変換することができました。
考えもしなかったことですが、Manjaro でソフトウェアをインストールする際に最大の障害が ——WeChatでした。WeChat の公式 Linux バージョンは、どうやら長い間メンテナンスされておらず、Arch 用のパッケージもありませんでした。AUR には多くのサードパーティ製の WeChat クライアントがありますが、古くなっているものが多く、使えるものもありますが、やはりネイティブソフトウェアの快適さには及びませんでした。また、Wine を使って Linux 上で Windows 用の WeChat をインストールしようとしましたが、Wine は正常に中国語を表示できませんでした。
今のところ、私のこのコンピュータには QQ しかインストールされておらず、適切な WeChat クライアントは見つかりませんでした。
あなたの次の MacBook#
Linux デスクトップ環境の最も魅力的な点は、非常に高いカスタマイズ性です。私は少しの時間を使って KDE デスクトップをいじくり回し、今の私の Manjaro はこんな感じです。
この効果を実現するために、私は KDE / Plasma のグローバルテーマWhiteSurを使用しました。このテーマは Mac OS 風のスタイルやウィンドウスタイルを提供しています。同時に、私はLatte Dockを使用して元のドックバーの代わりにし、WhiteSur の作者が提供した Latte テーマでドックバーを美化しました。
もちろん、単に美化するだけでは「MacBook」と呼ぶには不十分です。MacBook は多くの人にとって生産性ツールや効率ツールと見なされており、単なるノートパソコンではありません。
生産性は機械自体によって決まるのではなく、ソフトウェアとそのソフトウェアを使用する人によって決まります。ソフトウェアについて話すと、ソフトウェアエコシステムからは逃れられません。Mac OS のソフトウェアエコシステムは言うまでもなく、Arch で MacOS のほとんどの効率ツールの代替品を見つけるには、確かにもう少し努力が必要です。
キーボードでより多くのことをする#
Alfred は Mac OS のアプリケーションランチャーで、ショートカットキーで呼び出し、アプリの名前を入力する(ほとんどの場合、アプリ名の最初の 1、2 文字だけで十分です)ことでアプリを起動できます。このプロセスでは、手をキーボードから離す必要がなく、デスクトップやドックバーのアイコンの中から探す必要がなく、入力デバイスの切り替えやアイコンの位置を探す時間を節約できます。Linux にも同様のアプリがいくつかありますが、最終的に私は Ulauncher を選びました。
私が KDE デスクトップに付属のスタートメニュー(元の Windows システムの WIN キーで呼び出せる)を使用せず、別のアプリケーションランチャーを追加でインストールすることにした理由は、Ulauncher がより曖昧な検索方法を提供し、私が探しているアプリを見つけやすくするからです。同時に、私はそれを迅速な検索入口としても利用でき、入力した文字がアプリの名前と一致しない場合、Ulauncher は Google / Stack Overflow / Wikipedia でそのキーワードを検索するオプションを表示します。
Ulauncher の助けを借りて、Alt + Tab
で既に開いているウィンドウを素早く切り替えることで、さまざまなアプリ間をスムーズに行き来できます。そして、これらの操作を完了する際に、手をキーボードから離す必要は全くありません。
エディタの文芸復興#
私は Manjaro に付属のテキストエディタをアンインストールしました。なぜなら、それはあまり使い勝手が良くなかったからです。そこで、Linux のソフトウェアエコシステムに不慣れな私は、Sublime Text をコードを書く以外の主要なエディタとしてインストールしました。しかし、しばらく使用した後、私は Sublime というエディタに慣れないことに気づきました。その理由は以下の通りです:
- コードを書くために使うには、提供される機能が少なすぎて、拡張性の高い VS Code の方が良い;
- 単にテキストや設定ファイルを編集するために使うには、いくつかの機能が余計に感じる;
- 私はそのインターフェースが好きではなく、デフォルトのタブインデントが短すぎる。
そこで、私は本当にシンプルで使いやすいエディタを探し始めました。ちょうどその時、少数派で「沈黙の翻訳」の著者 Owen が Neovim を主力エディタとして使用しているという記事を読みました。Vim がエディタとして非常に効率的であると聞いていたので、Neovim は Vim のより現代的な続編であるため、試してみることにしました。
しかし、Vim と Neovim の冗長な設定ファイルを見たとき、私は非常に抵抗感を抱きました ——私は設定に多くの時間を費やすソフトウェアが好きではありません。そこで、私はHelixという、過剰な設定が不要で Vim に非常に似た操作を提供する「ポストモダン」エディタを試してみました。
Helix を使い始めて初めて、純粋なテキストエディタにとって、グラフィカルインターフェースは完全に不要であることに気づきました。テキストエディタに必要な検索、置換、ファイル切り替えは、ターミナル駆動の Helix でも実現でき、同時にウィンドウ分割、行を跨いだテキストの複数選択、さまざまな言語の構文チェックやコードハイライトなども実現しています。とにかく、最初の体験は非常に快適でした。
しかし、すぐにNvChadというプロジェクトを見つけました。これは Neovim の設定ファイルとプラグインのセットであり、NvChad を使用することで Neovim をすぐに使えるようにできます。これにより、Helix にプラグインシステムがなく、拡張性が低いという問題が完璧に解決されました。NvChad で設定された Neovim は、ファイルディレクトリツリー、Git の適合、構文チェック、さまざまな Linter のサポート、タブで複数のファイルを開く機能などを備えており、これは VS Code や多くの IDE の代替ツールとなるでしょう。
そのため、私はすぐに Helix と VS Code を捨て、Neovim を主力エディタとして使用し始めました。結局、ターミナルで起動し、非常に速く、どんな編集タスクにも対応でき、単純な設定ファイルの修正からプロジェクト全体の開発までこなせ、さらにネイティブの Vim 編集モードを楽しむことができます。
Typora のソフトウェアシリアル番号をすでに購入していたため、私は Neovim をすべてのテキストエディタの代わりにすることを考えたかもしれません。しかし、こう考えると少し過激すぎるかもしれません。Typora のようなビジュアルエディタは、Neovim のような純粋なテキストエディタよりも、著者が文字そのものに注意を集中させるのを助けることができます。
実際の生産性ツール#
周囲の人々の影響を受けて、私も業務効率や知識管理に関心を持ち始めました。生産性ツールや知識管理について話すと、Notion とその優れたデータベースシステムを思い浮かべるのは難しいことではありません。私は私の思考は川のようにという記事で、Notion のモデルが個人の知識管理には適していないと述べましたが、彼らの製品の位置付けは確かに知識管理を主眼に置いているわけではなく、チームの協力効率を向上させるツールであり、最近その強力さを実感しています。
Notion のデータベースやさまざまなビューについては、すでに多くの議論があります。製品説明書を書くよりも、実際に役立つケースについて話す方が良いでしょう。
私は後室中文維基の管理者を務めており、サイト内の大小さまざまな業務はそれほど難しくはありませんが、確かに多くて雑多です。サイトには十数人の管理者がいますが、唯一の常用のコミュニケーションチャネルは「単一スレッドの交流」である QQ グループです。単一スレッドとは、現在いくつかの業務を議論し処理する必要がある場合でも、順番に一つずつしかできないことを意味します。しかし、単一スレッドが最大の問題ではなく、最大の問題は、処理する必要がある多くの事柄がこの線形の流れの中で流れてしまうことです ——良い状況では、一つの事柄がすでに決定されているが、その時にメッセージを確認できなかった職員はその決定を知らず、以前の方法で業務を進めている;悪い状況では、いくつかの事柄が結果を議論できず、すぐに忘れ去られてしまうことです。
最近、私は Notion という、神格化されて推奨され、次第に視界から消えていったツールを突然思い出しました。私は大まかな構想を持ち、グループ内で他の人に紹介した後、作業に取り掛かりました。
他の人を作業スペースに招待すると、一緒にページを確認したり編集したりできます。これにより、タスクを未完了のタスク、進行中のタスク、完了したタスク、過去に時間が経ちすぎてアーカイブされたタスクの 4 つのカテゴリに分けることができ、皆が何をすべきか、何がすでに決定されたのかを知ることができます。サイトの管理者は皆、愛のために働いているため、個人的な理由でしばらく業務に参加できないことがあるのは避けられません。彼らが再びサイトの業務に戻るとき、Notion の作業スペースのボードを確認するだけで、最近何が起こったのかを大まかに理解できます。
各タスクには「責任者」と「優先度」が記載されており、これにより、どのタスクが重要で、どのタスクがまだ誰の責任でもないのかを知ることができ、それを基に無責任で重要なタスクを優先的に完了することができます。各タスクのページに入ると、そのタスクの「タグ」を確認でき、タグはそのタスクがどの分野に属するかを示しています。技術的な問題、政策の改訂問題、コミュニティ内の業務など、職員は自分の権限の範囲に基づいてそのタスクを引き受けるかどうかを選択できます。引き受ける場合は、さらに下に進んで、そのタスクを記載した人が残した詳細な説明を参考にすることができます。
さらに、サイトのスタッフのほとんどの議論が QQ グループで行われており、QQ グループは単一スレッドであるため、「提案エリア」を設けることで、すべての人がまだ結果が議論されていない事項を把握しやすくし、新しいアイデアを提案するのも便利です。また、すべての人が自分の考えを整理し、秩序ある文章にしてから皆に見せることで、効率が向上します。
Notion の無料版では協力者に「メンバー」権限を割り当てることができない(つまり、作業スペースに参加するすべての人が最高の権限を持ち、Notion を使わない人が誤操作をすると厄介な問題が残る可能性がある)ものの、効率の向上は顕著です。
私は話が逸れたようですが、Notion について触れざるを得ませんでした。なぜなら、私は現在 Manjaro にインストールしている生産性ツールを紹介したいからです。それらは非常に良い役割分担を形成しています。
- Obsidian は双方向リンクノートソフトウェアとして、私の「第二の脳」として存在し、すべての体系的な知識やノートを保存しています;
- Flomo はカード式ノートソフトウェアとして、私の断片的で未処理のアイデアを保存しています;
- Notion は効率ツールとして、チーム協力のタスクを分配するために使用しています;
- X-Mind はマインドマップソフトウェアとして、作業を始める前に思考を整理するために使用しています(現在、少し重い X-Mind の代わりに、より軽量で機能が豊富な「幕布」を使用しようとしています);
- TickTick は計画ツールとして、私の個人的な短期および長期のタスクを計画するために使用し、その内蔵の時間割やポモドーロタイマー機能も非常に便利です。
「生産性ツール」と呼べるデバイスがあるとすれば、私にとっては、上記のツールが少なくとも 3 つは必要です。
後記#
私のメインノートパソコンである影の精霊がブラックスクリーンに見舞われ、修理に出す前や返送される前に Windows システムのコンピュータを使用できなくなったため、開学前の数ヶ月間ほとんど使用していなかったこの薄型ノートパソコンが急遽主力となり、こうした奮闘記が生まれました。
また、この記事を書く際のいくつかの奇想もあります:
- 最初の副題「冷淡な接待」は、『Don't Starve』の冒険モードのあるレベルの名前に敬意を表しています。
- 2 番目の副題「パックマンの歓声」には 2 つの要素が含まれています:Pacman(パックマン、同時に Arch Linux に付属するパッケージマネージャーの名前)と Yay(AUR パッケージをインストールするためのツール、正式名称は Yet another Yogurt で、英語で歓声を表す擬音語のスペルと同じです)。お願いだから、もっと良いダブルミーニングを考えてください。
ちなみに、今日は非常に重要な日です:
1946 年 2 月 14 日、世界初のコンピュータ ENIAC がアメリカのペンシルベニア大学で誕生しました。
ご承知おきください。
TL;DR#
- 専門的な要求により、使われていないコンピュータに Manjaro システムをインストールしました;
- Arch Linux のソフトウェアエコシステムを探求しました;
- KDE / Plasma デスクトップ環境を美化し、Mac OS を模倣しました;
- 効率ツールと生産性ソフトウェアを探しました。
カバー画像の出典:Christin Hume on Unsplash