CentOS 8/RHEL 8 では、GUIデスクトップ環境は GNOME3 だけとなり、KDEは含まれなくなりました。 KDE 5 は Fedora EPEL (Extra Packages for Enterprise Linux) で提供されています。
が、EPELに移ったせいか、日本語入力環境を整えるための工程が 自明でなくなりました。 本稿は、この日本語入力環境を整えてみるまでのガイドです。
CentOS 8 の最小インストールからのスタートを前提として書いています。 GNOME3をすでに入れてしまった場合は不要な工程もあるかも。
(2020.11) $Keywords: RHEL 8, CentOS 8 KDE 5, 日本語環境 $
CentOS 8 の場合、 Extras リポジトリに epel-release というパッケージが含まれているので、 これをインストールするだけです。
[root@c8x64 ~]# dnf repolist repo id repo の名前 AppStream CentOS-8 - AppStream BaseOS CentOS-8 - Base extras CentOS-8 - Extras [root@c8x64 ~]# dnf list epel-release メタデータの期限切れの最終確認: 0:02:03 時間前の 2020年09月20日 06時35分06秒 に実施しました。 利用可能なパッケージ epel-release.noarch 8-8.el8 extras [root@c8x64 ~]# dnf install epel-release ... インストール済み: epel-release-8-8.el8.noarch 完了しました! [root@c8x64 ~]# dnf repolist repo id repo の名前 AppStream CentOS-8 - AppStream BaseOS CentOS-8 - Base epel Extra Packages for Enterprise Linux 8 - x86_64 epel-modular Extra Packages for Enterprise Linux Modular 8 - x86_64 extras CentOS-8 - Extras
[root@c8x64 ~]# dnf group list -v ロードされたプラグイン: builddep, changelog, config-manager, copr, debug, debuginfo-install, download, generate_completion_cache, needs-restarting, playground, repoclosure, repodiff, repograph, repomanage, reposync DNF version: 4.2.17 ... 利用可能な環境グループ: サーバー (GUI 使用) (graphical-server-environment) サーバー (server-product-environment) ワークステーション (workstation-product-environment) KDE Plasma デスクトップワークスペース (kde-desktop-environment) 仮想化ホスト (virtualization-host-environment) カスタムオペレーティングシステム (custom-environment) インストール済みの環境グループ: 最小限のインストール (minimal-environment) 利用可能なグループ: コンテナー管理 (container-management) .NET Core 開発 (dotnet-core) RPM 開発ツール (rpm-development-tools) 開発ツール (development) グラフィカル管理ツール (graphical-admin-tools) ヘッドレス管理 (headless-management) レガシーな UNIX 互換性 (legacy-unix) ネットワークサーバー (network-server) 科学的サポート (scientific) セキュリティーツール (security-tools) スマートカードサポート (smart-card) システムツール (system-tools) Fedora パッケージャ (fedora-packager) Xfce (xfce-desktop)
dnf group install kde-desktop-environment で、インストールします。
[root@c8x64 ~]# dnf group install kde-desktop-environment ... エラー: 問題 1: conflicting requests - nothing provides xmessage needed by plasma-workspace-5.18.4.1-2.el8.x86_64 問題 2: package sddm-breeze-5.18.4.1-2.el8.noarch requires plasma-workspace = 5.18.4.1-2.el8, but none of the providers can be installed - conflicting requests - nothing provides xmessage needed by plasma-workspace-5.18.4.1-2.el8.x86_64 問題 3: package plasma-desktop-5.18.4.1-2.el8.1.x86_64 requires plasma-workspace >= 5.18, but none of the providers can be installed - conflicting requests - nothing provides xmessage needed by plasma-workspace-5.18.4.1-2.el8.x86_64 問題 4: package kde-print-manager-19.12.3-2.el8.x86_64 requires plasma-workspace, but none of the providers can be installed - conflicting requests - nothing provides xmessage needed by plasma-workspace-5.18.4.1-2.el8.x86_64
おっと、xmessage がないというエラーが出ますね。 xmessageは CentOSのPowerTools リポジトリにあるので、 /etc/yum.repos.d/CentOS-PowerTools.repo を編集して enabled=1 にするか、 dnf config-manager --set-enabled PowerTools で有効化します。
[root@c8x64 yum.repos.d]# dnf config-manager --set-enabled PowerTools [root@c8x64 yum.repos.d]# grep enabled /etc/yum.repos.d/CentOS-PowerTools.repo enabled=1
再度、kde-desktop-environment をインストール。
[root@c8x64 yum.repos.d]# dnf group install kde-desktop-environment CentOS-8 - PowerTools 634 kB/s | 1.9 MB 00:03 メタデータの期限切れの最終確認: 0:00:02 時間前の 2020年09月20日 06時51分46秒 に実施しました。 no group '3d-printing' from environment 'kde-desktop-environment' no group 'cloud-management' from environment 'kde-desktop-environment' no group 'firefox' from environment 'kde-desktop-environment' no group 'kde-telepathy' from environment 'kde-desktop-environment' グループパッケージ "dnfdragora" に一致するものはありません グループパッケージ "kmail" に一致するものはありません グループパッケージ "korganizer" に一致するものはありません グループパッケージ "kget" に一致するものはありません グループパッケージ "kaddressbook" に一致するものはありません グループパッケージ "plasma-discover" に一致するものはありません グループパッケージ "akregator" に一致するものはありません グループパッケージ "kontact" に一致するものはありません グループパッケージ "qt-at-spi" に一致するものはありません グループパッケージ "pinentry-qt" に一致するものはありません グループパッケージ "NetworkManager-config-connectivity-fedora" に一致するものはありません 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン Repo サイズ ================================================================================ ... 環境グループのインストール中: KDE Plasma Workspaces グループのインストール中: KDE トランザクションの概要 ================================================================================ インストール 753 パッケージ アップグレード 9 パッケージ ダウンロードサイズの合計: 655 M これでよろしいですか? [y/N]:冒頭に出てくる
no group 'firefox' from environment 'kde-desktop-environment' グループパッケージ "kmail" に一致するものはありませんというのは、リポジトリメタデータには載ってるが、 EPELでも実パッケージが提供されていないもののエラーです。 「これでよろしいですか? [y/N]:」までたどり着けていればとりあえず気にしない方向で。
KDEに関する EPELのリポジトリメタデータは RHEL 7 の物を流用しているらしく、 まだEPELでは提供されていないパッケージグループが載っていたりします。
startx で早速動かしたいところですが、トラブル切り分けのため まず xinit で Xorg + xterm だけで動くかどうか確認します。
デフォルトでは xterm はインストールされなくなったので、入れておきます。 (konsoleがインストール直後は使いにくい状態なので、xtermがあると便利です)
[root@c8x64 ~]# dnf install xterm メタデータの期限切れの最終確認: 0:47:52 時間前の 2020年09月20日 19時51分46秒 に実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン リポジトリー サイズ ================================================================================ インストール中: xterm x86_64 331-1.el8 AppStream 528 k ...
xinit で、xterm が一枚だけある画面になれば、Xorg周辺に問題はないと考えられます。
[root@c8x64 ~]# xinit
xterm の中で exit と打てば Xorgも終了します。
[kabe@c8x75 ~]$ env LANG=ja_JP.utf-8 startx
あらら、日本語が全部豆腐マークになってますね。
日本語フォントがインストールされていないのが原因なので、追加します。 google-noto-sans-cjk-ttc-fonts.noarch (AppStream) もしくは google-noto-sans-cjk-jp-fonts.noarch (PowerTools) をインストールします。
[root@c8x64 kabe]# dnf install google-noto-sans-cjk-jp-fonts.noarch メタデータの期限切れの最終確認: 1:00:50 時間前の 2020年09月20日 19時51分46秒 に実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン リポジトリー サイズ ================================================================================ インストール中: google-noto-sans-cjk-jp-fonts noarch 20190416-1.el8 PowerTools 84 M 依存関係のインストール中: google-noto-cjk-fonts-common noarch 20190416-1.el8 AppStream 20 k トランザクションの概要 ================================================================================ インストール 2 パッケージ ダウンロードサイズの合計: 84 M インストール済みのサイズ: 116 M これでよろしいですか? [y/N]: ... [kabe@c8x75 ~]$ env LANG=ja_JP.utf-8 startx
豆腐は解消されました。
xtermを入れているのでそっちを使えばいいのですが、
インストール直後はなぜか konsole がプロポーショナルフォントを使っていて、
とても使いにくい状態です。
dejavu-sans-mono-fonts パッケージを入れると、 「正しく」モノスペースフォントが使われるようになります。
[root@c8x64 kabe]# dnf install dejavu-sans-mono-fonts メタデータの期限切れの最終確認: 1:10:53 時間前の 2020年09月20日 19時51分46秒 に実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン リポジトリー サイズ ================================================================================ インストール中: dejavu-sans-mono-fonts noarch 2.35-6.el8 BaseOS 447 k 依存関係のインストール中: dejavu-fonts-common noarch 2.35-6.el8 BaseOS 74 k トランザクションの概要 ================================================================================ インストール 2 パッケージ ダウンロードサイズの合計: 521 k インストール済みのサイズ: 1.3 M これでよろしいですか? [y/N]:
フォントをインストールしたあと、konsole の「設定(S)」→「現在のプロファイルを編集(E)...」→ 「外観」→「Font: ... [Choose...]」→DejaVu Sans Mono, Book を選ぶと、モノスペースフォントになって使いやすくなります。 (なんで「モノスペース」フォントでモノスペースフォントを選んでくれないんだろう?)
ibus-kkc がインストールされていないので、この状態では日本語入力ができません。 入力メソッドはなぜか隠し属性のついたパッケージグループになっています。
[kabe@c8x64 ~]$ dnf group list -v --hidden ... 利用可能なグループ: バックアップクライアント (backup-client) base-x (base-x) AppStream と競合 (conflicts-appstream) コンテナー管理 (container-management) デバッグツール (debugging) デスクトップのデバッグとパフォーマンスツール (desktop-debugging) .NET Core 開発 (dotnet-core) FTP サーバー (ftp-server) GNOME アプリケーション (gnome-apps) グラフィックスツール (graphics) ゲストエージェント (guest-agents) ゲストデスクトップエージェント (guest-desktop-agents) 入力メソッド (input-methods) インターネットアプリケーション (internet-applications) インターネットブラウザー (internet-browser) Java プラットフォーム (java-platform) レガシーな X ウィンドウシステム互換性 (legacy-x) ...
dnf group install input-methods でインストールできます。
[kabe@c8x64 ~]$ sudo dnf group install input-methods メタデータの期限切れの最終確認: 1:41:55 時間前の 2020年09月20日 19時51分46秒 に実施しました。 依存関係が解決しました。 ================================================================================================================== パッケージ Arch バージョン リポジトリー サイズ ================================================================================================================== group/module パッケージをインストール中: gtk2-immodule-xim x86_64 2.24.32-4.el8 AppStream 21 k gtk3-immodule-xim x86_64 3.22.30-5.el8 AppStream 21 k ibus-hangul x86_64 1.5.1-4.el8 AppStream 75 k ibus-kkc x86_64 1.5.22-9.el8 AppStream 86 k ibus-libpinyin x86_64 1.10.0-1.el8 AppStream 833 k ibus-libzhuyin x86_64 1.8.93-1.el8 AppStream 7.4 M ibus-m17n x86_64 1.3.4-26.el8 AppStream 58 k ibus-typing-booster noarch 2.1.0-3.el8 AppStream 508 k 依存関係のインストール中: ...
ただ、input-methods パッケージグループをインストールしただけでは 日本語入力可能にはなりません。以下の設定がないからです:
[kabe@c8x64 ~]$ ibus-daemon -d -r --xim [kabe@c8x64 ~]$ ps axlw|grep ibus 0 1000 8257 1 20 0 415416 11548 x64_sy Sl ? 0:00 /usr/libexec/kimpanel-ibus-panel-launcher 1 1000 8284 1 20 0 738100 6396 x64_sy Ssl ? 0:00 ibus-daemon -d -r --xim 0 1000 8287 8284 20 0 505780 8100 x64_sy Sl ? 0:00 /usr/libexec/ibus-dconf 0 1000 8289 8284 20 0 643376 30276 x64_sy Sl ? 0:00 /usr/libexec/ibus-ui-gtk3 0 1000 8291 8284 20 0 638492 26156 x64_sy Sl ? 0:00 /usr/libexec/ibus-extension-gtk3 0 1000 8294 1 20 0 553316 18792 x64_sy Sl ? 0:00 /usr/libexec/ibus-x11 --kill-daemon 0 1000 8300 4847 20 0 505776 8236 x64_sy Sl ? 0:00 /usr/libexec/ibus-portal
ibus-setup コマンドを手動で叩いて設定してみます…
[kabe@c8x64 ~]$ ibus-setup /usr/bin/ibus-setup: 29 行: exec: python3: 見つかりません
なぜかibus-setup に必要な/usr/bin/python3 が、自動で引き込まれていません。
[kabe@c8x64 ~]$ dnf -C whatprovides /usr/bin/python3 メタデータの期限切れの最終確認: 1:56:22 時間前の 2020年09月20日 19時51分46秒 に実施しました。 python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64 : Interpreter of the Python programming language Repo : AppStream 一致: ファイル名 : /usr/bin/python3 python38-3.8.0-6.module_el8.2.0+317+61fa6e7d.x86_64 : Interpreter of the Python programming language Repo : AppStream 一致: ファイル名 : /usr/bin/python3 [kabe@c8x64 ~]$ rpm -q python36 パッケージ python36 はインストールされていません。
仕方がないので、手動でインストールします。
[kabe@c8x64 ~]$ sudo dnf install python36 [sudo] kabe のパスワード: メタデータの期限切れの最終確認: 1:57:30 時間前の 2020年09月20日 19時51分46秒 に実施しました。 依存関係が解決しました。 ================================================================================================================== パッケージ Arch バージョン リポジトリー サイズ ================================================================================================================== インストール中: python36 x86_64 3.6.8-2.module_el8.1.0+245+c39af44f AppStream 19 k 依存関係のインストール中: python3-pip noarch 9.0.3-16.el8 AppStream 19 k python3-setuptools noarch 39.2.0-5.el8 BaseOS 162 k モジュールストリームの有効化中: python36 3.6 トランザクションの概要 ================================================================================================================== インストール 3 パッケージ ダウンロードサイズの合計: 201 k インストール済みのサイズ: 466 k これでよろしいですか? [y/N]: ... [kabe@c8x64 ~]$ which python3 /usr/bin/python3
ibus-setup を手動で起動し、「入力メソッド」タブに 「[あ] 日本語 - かな漢字」が含まれるように設定します。
タスクトレイにキーボードアイコンが出ている(はず)なので、
左クリック→「日本語 - かな漢字」を選ぶと、[あ] のアイコンに変わるはずです。
まれに、ibus-daemon を起動してもキーボードアイコンがタスクトレイに現れない場合があります。 その場合は、一旦 ~/.config/ (KDEの個人設定が入ってます) を全部消してやり直してみてください。 (どのファイルが悪いのか、までは突き止められませんでした)
次に、環境変数の設定を試しに手動で設定してみます。
export GTK_IM_MODULE=ibus export XMODIFIERS=@im=ibus export QT_IM_MODULES=ibus
この設定を .bashrc
とかに埋め込め、みたいな資料をよく見かけますが、
生コンソール使用時や ssh で入った時など、
GUIデスクトップ環境でない場合は、これらは設定したくないので、
デスクトップ環境側の設定メカニズムで設定させるのが本来の姿です。
今はテストなので、上の環境変数を手動で設定してみます。 そのあと、環境変数が設定されているコマンドラインから
$ xtermを起動してみます。
日本語入力ができない場合は、以下を確認します:
とりあえずここまで成功すれば、日本語入力は可能なことはわかりました。
次は、以下をどう自動化するかです:
以下のような設定ファイルを /etc/xdg/autostart/x-ibus-daemon.desktop として置いてみます:
# /etc/xdg/autostart/x-ibus-daemon.desktop [Desktop Entry] Name=ibus-daemon Exec=ibus-daemon -d -r -x Type=Application Terminal=false X-KDE-autostart-after=panel X-KDE-StartupNotify=false
以下のようなスクリプトを /etc/xdg/plasma-workspace/env/x-read-xinputrc.sh (startkdeから読まれる) として置いてみます:
#!/bin/sh # /etc/xdg/plasma-workspace/env/x-read-xinputrc.sh # # read in /etc/X11/xinit/xinputrc and set environs # # invocation of $XIM_PROGRAM is done in # /etc/xdg/autostart/x-ibus-daemon.desktop # # user settings should be overridable in # ~/.config/plasma-workspace/env/*.sh if [ -z "$XMODIFIERS" ]; then # no user settings if [ -r /etc/X11/xinit/xinputrc ]; then . /etc/X11/xinit/xinputrc test -n "$XIM" && export XMODIFIERS=@im=${XIM} test -n "$GTK_IM_MODULE" && export GTK_IM_MODULE test -n "$QT_IM_MODULE" && export QT_IM_MODULE fi fi
で、これで再度 startx してみますと
なんかアイコンが増えてしまうんですよね。理由不明。
手動で ibus-daemon -d -r -x した場合はこうならないのですが。
上で行ったibus-daemon の起動と 環境変数の設定は、 汎用的な形で imsettings パッケージがやってくれるようです。
[kabe@c8x64 ~]$ sudo dnf install imsettings [sudo] kabe のパスワード: メタデータの期限切れの最終確認: 0:08:13 時間前の 2020年09月20日 22時47分22秒 に実施しました。 依存関係が解決しました。 ================================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ================================================================================================================== インストール中: imsettings x86_64 1.8.1-3.el8 epel 227 k 依存関係のインストール中: imsettings-gsettings x86_64 1.8.1-3.el8 epel 116 k imsettings-libs x86_64 1.8.1-3.el8 epel 127 k トランザクションの概要 ================================================================================================================== インストール 3 パッケージ ダウンロードサイズの合計: 470 k インストール済みのサイズ: 2.1 M これでよろしいですか? [y/N]:
imsettings パッケージに含まれる /etc/X11/xinit/xinitrc.d/50-xinput.sh が環境変数の設定、ibus-daemon の起動をやってくれます。
手動設定した /etc/xdg/autostart/x-ibus-daemon.desktop , /etc/xdg/plasma-workspace/env/x-read-xinputrc.sh は消します。
この場合、なぜか右端の[あ] (iBusパネル) は現れません。なんでだろう。
ibus-setup を手動で起動することを覚えておけば不要ですが、 (タスクトレイの[あ]アイコンの右クリック→「Configure Input Method」からでも行けますが) アプリケーションランチャー(左下のスタートメニュー)に陽に 設定メニューエントリ追加したい場合は、 im-chooser パッケージをインストールします。
[kabe@c8x64 ~]$ sudo dnf install im-chooser [sudo] kabe のパスワード: メタデータの期限切れの最終確認: 0:20:21 時間前の 2020年09月20日 22時47分22秒 に実施しました。 依存関係が解決しました。 ================================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ================================================================================================================== インストール中: im-chooser x86_64 1.7.3-1.el8 epel 32 k 依存関係のインストール中: im-chooser-common x86_64 1.7.3-1.el8 epel 242 k トランザクションの概要 ================================================================================================================== インストール 2 パッケージ ダウンロードサイズの合計: 274 k インストール済みのサイズ: 890 k これでよろしいですか? [y/N]: y