Ubuntu で何気に apt search lxde
と打ってみたら、いくつかヒットすることを発見しました。気になって Wikipedia で LXDE のページ https://ja.wikipedia.org/wiki/LXDE を見てみたところ、最終更新は 3 年前みたいなものの、開発は継続しているぽいようなことが書かれていることがわかりました。
これは試してみたい!
せっかくなら Ubuntu に LXDE をインストールして切り替えるんじゃなくって、 CLI ベースの Ubuntu に LXDE だけをインストールして動かしてみたい!
てな話です。
さぁはじめよう
まずは CLI ベースの Ubuntu ですが、思いついたのが Ubuntu Server と WSL の Ubuntu くらいなので、今回は Ubuntu Server をベースに構築してみようと思います。 Server との名前がついているのでサーバー用途な OS な気はするんですが、細かいことは気にせずに進めたいと思います。
Ubuntu Server のインストール
Ubuntu Server 24 のブートイメージを作成して、ブートしてインストールを進めます。次々と進めていけばインストールできるんですが、今回は以下の個所を変更しています。
- キーボードレイアウトは日本語 → 「 Keyboard configuration 」のところで「 Layout 」と「 Variant 」を「 Japanese 」に変更
- 最小限構成でインストール → 「 Choose type of install 」のところで「Ubuntu Server (minimized)」を選択 ※
vi
すらインストールされないというウワサで興味深々だけの理由です - LVM は使わない → 「 Guided storage configuration 」のところで「 Set up this disk as an LVM group 」のチェックを外す。※サーバーじゃないし程度の理由です
- SSHを有効化 → 「 SSH Setup 」の「 Install OpenSSH server 」にチェックを入れる。
それではパッケージを、、、でもせっかくだから、、、
OS のインストールはトラブルもなく完了できたので、次は必要なパッケージのインストールとなるんですが、せっかく最小限構成でインストールしたので、それを引き継いでこの先も推奨パッケージをインストールしないオプション --no-install-recommends
でインストールしていきたいと思います。※設定すればデフォルトを --no-install-recommends
にできますが、今回は明示的に入力する形にしています。
LXDE のインストール
以下のコマンドで LXDE をインストールします。
sudo apt update
sudo apt -y --no-install-recommends install lxde
インストールが完了したら再起動して GUI のログイン画面が出ることを期待して待ちます。
あれ?GUIのログイン画面にならない
いつまで待っても GUI のログイン画面にならないようです。ディスプレイマネージャーがインストールされないみたいなのでインストールして再起動してみます。
sudo apt -y --no-install-recommends install sddm
とりあえずログイン画面が GUI にはなりました。
設定アプリ
メニューをぱっと眺めてみると、 Openbox の設定とか light-locker の設定アプリがないみたいです。設定ファイルをいじればできそうな気もするんですが、 GUI の方が楽なので、とりあえずその2つをインストールします。
sudo apt -y --no-install-recommends install obconf light-locker-settings
ちなみに obconf は Qt 版の obconf-qt っていうパッケージも存在しているんですが、メニューで見ると obconf は「 Openbox Configuration Manager 」と表示されて、 obconf-qt は「 Openbox Settings 」と表示されるようです。
テーマをチェンジ
Clearlooks とダークテーマが好きなんですが、残念ながらどっちも入っていないのでインストールします。今回は Clearlooks-Phenix とダークテーマである Adwaita-dark をインストールします。
sudo apt -y --no-install-recommends install clearlooks-phenix-theme gnome-themes-extra-data
インストールできたら「Customize Look And Feel」と「 Openbox Configuration Manager 」で変更します。
アイコンをチェンジ
インストールされているアイコンは以下の8つようです。
- Adwaita
- Humanity
- Humanity-Dark
- LoginIcons
- Ubuntu-Mono-Dark
- Ubuntu-Mono-Light
- nuoveXT.2.2
ただ、よく見てみると「 nuoveXT.2.2 」以外のアイコンが正常に表示されてないようです。どうも「 nuoveXT.2.2 」のアイコンは PNG 形式で、それ以外は SVG 形式を使用しているものあるのが原因ぽいです。
調べてみたところ「 librsvg2-2 」のライブラリはインストールされていましたが「 librsvg2-common 」がインストールされてないようでしたので以下のコマンドでインストールして再起動してみます。
sudo apt -y --no-install-recommends install librsvg2-common
無事表示されたようです。
リムーバブルメディアが自動マウントされない
リムーバブルメディアを挿入しても自動マウントされないようなので、それらしいパッケージをインストールしてみます。
sudo apt -y --no-install-recommends install gvfs gvfs-backends gvfs-fuse
gvfs に関連しそうなものってだけで、それぞれの意味はよく分かってないんですが、なんかマウントされるようになったので良しとしたいと思います。
日本語環境のインストール
日本語環境をインストールしようと check-language-support -l ja
を実行したところ check-language-support コマンドがないと言われましたのでインストールしてから日本語環境をインストールします。check-language-support -l ja
には一部含まれていない IBus 関連のパッケージがあるようでしたので、明示的に含めています。
sudo apt -y --no-install-recommends install language-selector-common locales
sudo apt -y --no-install-recommends install $(check-language-support -l ja) ibus-gtk ibus-gtk3 ibus-gtk4 im-config
ついでにタイムゾーンも日本にして、念のため再起動しておきます。
sudo timedatectl set-timezone Asia/Tokyo
Firefox
Ubuntu では Firefox が snap パッケージに移行してるみたいで、apt でインストールしても実際には snap 版が導入されるようです。一方で、Firefox 公式の「Install Firefox on Linux」には、snap 版を含むいくつかのインストール方法が紹介されています。今回はその中で推奨となっているぽい .deb からのインストールを参考にしながらインストールしてみたいと思います。
sudo install -d -m 0755 /etc/apt/keyrings
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null
gpg -n -q --import --import-options import-show /etc/apt/keyrings/packages.mozilla.org.asc | awk '/pub/{getline; gsub(/^ +| +$/,""); if($0 == "35BAA0B33E9EB396F59CA838C0BA5CE6DC6315A3") print "\nThe key fingerprint matches ("$0").\n"; else print "\nVerification failed: the fingerprint ("$0") does not match the expected one.\n"}'
echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null
echo '
Package: *
Pin: origin packages.mozilla.org
Pin-Priority: 1000
' | sudo tee /etc/apt/preferences.d/mozilla
sudo apt update && sudo apt -y --no-install-recommends install firefox
これだけだと、更新があった際に snap 版に変わってしまうことがあるみたいなので、それを抑止します。
echo '
Package: firefox*
Pin: release o=Ubuntu*
Pin-Priority: -1
' | sudo tee /etc/apt/preferences.d/firefox-no-snap
echo 'Unattended-Upgrade::Allowed-Origins:: "LP-PPA-mozillateam:${distro_codename}";' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-firefox
ディスプレイドライバー
正直必要かどうかはよく分からないんですが apt search xserver-xorg-video
ってするとたくさん表示されるので、自分の環境にあわせたディスプレイドライバーいれた方が良いことありそうな気もします。 sudo apt install xserver-xorg-video-all
としてざっくりとインストールすることもできるみたいです。
全部まとめるとこれです
結果的に ssh で接続して以下をコピペすればよさそうです。改めてみてみると Firefox の部分が多いので、すなおに snap 版使っとけば 4 行程度で済んだようですね。
sudo apt update
sudo apt -y --no-install-recommends install lxde sddm obconf light-locker-settings clearlooks-phenix-theme gnome-themes-extra-data librsvg2-common gvfs gvfs-backends gvfs-fuse language-selector-common locales
sudo apt -y --no-install-recommends install $(check-language-support -l ja) ibus-gtk ibus-gtk3 ibus-gtk4 im-config
sudo timedatectl set-timezone Asia/Tokyo
#Firefox
sudo install -d -m 0755 /etc/apt/keyrings
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null
gpg -n -q --import --import-options import-show /etc/apt/keyrings/packages.mozilla.org.asc | awk '/pub/{getline; gsub(/^ +| +$/,""); if($0 == "35BAA0B33E9EB396F59CA838C0BA5CE6DC6315A3") print "\nThe key fingerprint matches ("$0").\n"; else print "\nVerification failed: the fingerprint ("$0") does not match the expected one.\n"}'
echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null
echo '
Package: *
Pin: origin packages.mozilla.org
Pin-Priority: 1000
' | sudo tee /etc/apt/preferences.d/mozilla
echo '
Package: firefox*
Pin: release o=Ubuntu*
Pin-Priority: -1
' | sudo tee /etc/apt/preferences.d/firefox-no-snap
echo 'Unattended-Upgrade::Allowed-Origins:: "LP-PPA-mozillateam:${distro_codename}";' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-firefox
sudo apt update && sudo apt -y --no-install-recommends install firefox
こんなです
その他カスタマイズをした結果、以下のような感じとなりました。良い感じです。
おまけ
minimized 構成で実際に使ってみると vi
どころか ping
も man
も使えないようで、 man
と打つと以下のようなメッセージが表示されます。
This system has been minimized by removing packages and content that are
not required on a system that users do not log into.
To restore this content, including manpages, you can run the 'unminimize'
command. You will still need to ensure the 'man-db' package is installed.
sudo unminimize
とすれば解決なんですが、man
も含めて vi
等々もインストールされるみたいです。 unminimize
コマンドはシェルスクリプトで cat /usr/bin/unminimize
とすれば簡単に中身を見ることができるので、 man
を使いたいだけなら、そのスクリプトのなかから関係するところだけを取り出すっていう手もあるかなと思います。
ちなみに ping
は iputils-ping パッケージをインストールすれば良さげな感じです。