Linux あれこれ

Linux 関連(一部 Windows11 )の備忘録です。

Boxes に「EndeavourOS」(Xfce) をインストールして「Worm」wm を追加(2/2)〈H160-3〉

登録日: 2023-02-17 更新日: 2023-12-25

以前、Xubuntu 22.04.1 の「Boxes」に、コミュニティ版の「EndeavourOS」(Worm) をインストールしました。 その時は残念ながら「Boxes」の機能(クリップボードの共有や、解像度の自動調整など)が使えませんでした。

ゲストOS として使うには不便なので、「Boxes」の機能が使える公式版の「EndeavourOS」(Xfce) をインストールしてから、「Worm」wm(ウィンドウマネージャ)を追加でインストールしてみました。

その備忘録です。

-

今回は前回 の続きになります。

「Boxes」のゲストOS として、公式版の「EndeavourOS」(Xfce) をインストールして使えるようにしたので、

その環境に「Worm」ウィンドウマネージャ を追加でインストールしました。

-

-

追記: 2023-02-04

システム更新で失敗する場合の対応は「こちら 」を参照:

-

-

使用したPC は「ASUS Chromebox CN60 」で、プロセッサは第4世代の「Intel Celeron 2955U 」です。

UEFI 立ち上げ」のPC です。

-

(注)リンクを戻るときはブラウザの左上の「←」をクリック

-

-


目次

-

前回の作業:

-

今回の作業:

  1. ボックス(仮想マシン環境)の複製:

  2. 「Worm」の「設定ファイル」をダウンロード:

  3. ダウンロードした「設定ファイル」を修正:

  4. 「Worm」に必要な「パッケージ」をインストール:

  5. 日本語入力:

-

参考:

-

「まとめ へ」

「目次詳細 へ」

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - -

「Boxes」で、「EndeavourOS」を使う:

-

「EndeavourOS」を「Xfce」で起動:

-

→ゲストOS が画面半分にきれいに収まっていることに注目。

-

ちなみに、一番下のパネルは、ホストOS の「Xubuntu 22.04.1」のパネルです。

-


「EndeavourOS」を「Worm」で起動:

-

フローティング表示(デフォルト):

タイリング表示に慣れていなくても、ウィンドウ操作が普通にできるのが利点です。

それだけでなく、パネルにある数字の「タグ」で、起動しているアプリの切り替えができます。

-

タイリング表示:

タイリング表示にしたいときは、Windows + T で簡単に切替えできます。Windows + Enter で端末が増えます。

-

「lxdm」の場合のログイン画面:

→「EndeavourOS」(Worm) のデフォルトのディスプレイマネージャです。

「より軽量」なので採用されたと思われます。Boxes のウィンドウ幅で縮小表示されます。幅広の解像度を設定しないと文字は大きくなりません。

-

追記: 今回の作業で、「Boxes」で使うには難点があることがわかりました:

ログアウト→ログインで働く、 「Boxes」の機能(「spice-vdagentd」デーモンの機能)である「解像度の自動調整」が、ログアウト時に失敗します。

ただし、「Boxes」のゲストOS で「解像度の自動調整」を使わなければ支障はありません。

-

ちなみに、一番下のパネルは、ホストOS の「Xubuntu 22.04.1」のパネルです。

-

「lightdm」の場合のログイン画面:

→「EndeavourOS」(Xfce) や (i3wm) のデフォルトのディスプレイマネージャです。

ウィンドウ幅で縮小表示されています。

-

こちらの場合、ログアウトで、「Boxes」の機能である「解像度の自動調整」が行われ、ログアウト前に広げた画面の大きさで、ログイン画面が表示されます。

-

デフォルトの壁紙だと、ちょうど惑星の横棒と重なるので惜しいです。別の壁紙を選べばもっとクールになります。

-

ちなみに、一番下のパネルは、ホストOS の「Xubuntu 22.04.1」のパネルです。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - --

「EndeavourOS」の「Worm」について:

-

1). 公式サイト:

codic12/worm

-

2). 今回のインストール作業は、

「公式版」の「EndeavourOS」(Xfce) をインストールしておき、

その後、「Worm」(ウィンドウマネージャ)を追加インストールするやり方で行いました。

-

余計なパッケージがインストールされますが、ゲストOS で便利な「Boxes」の機能(クリップボードの共有、解像度の自動調整など)が手に入ります。

「Boxes」のゲストOS としてインストールしないか、インストールしても「解像度の自動調整」を使わないのなら、コミュニティ版の「EndeavourOS」(Worm) をインストールする方が楽です。

また、すでに「EndeavourOS」(Xfce) を使っていて、(Worm) の環境(セッション)を試したいときにも使えるやり方だと思います。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ---

1. ボックス(仮想マシン環境)の複製:

-

前回の作業で、新しいボックスを作成して、「公式版」の「EndeavourOS」(Xfce) をインストール。 ボックス名を「EndeavourOS-Worm」に修正しました。

-

その環境に、「Worm」(ウィンドウマネージャ)を追加でインストールするので、

その前に、ボックスの「複製」(クローン)を作成しました。

-

作成はあっという間で、作業に失敗しても、複製した時点の「設定の終わった環境や登録していたデータ」がすぐに使えます。もしくは、原本は残しておき、複製した複数のボックスで、違う作業のトライが行えます。

失敗したら削除。復旧作業や、イチからインストールして設定をやり直す、必要はありません。 工数を減らせたり、失敗しても安心なのが、Boxes を使う利点です。

ただし、作成には「ボックス」と同じディスク容量が必要なので注意。個人的には「ボックス」は「複製」を含めて、3つまで(つまり、違うディストリビューションなら 2つ)に制限しています。

-

1). 「Boxes」を起動:

メニュー →開発 →「Boxes」

→「Boxes」の起動:

-

2). ボックスの「EndeavourOS-Worm」は電源オフの状態です:

-

3). ボックスの「EndeavourOS-Worm」を右クリック→「複製」

複製の設定中…

→しばらく待つと「複製」の「EndeavourOS-Worm 3」が作成されました。

-

4). 新しいボックスを、右クリック→設定

→「EndeavourOS-Worm-save0205」にボックス名を変更

「Boxes」ウィンドウを右上の「x」で閉じました。

-

5). ホストOS を再起動

ボックス名の変更時は、ホストOS の再起動もしないと反映されません。

-

6). 「Boxes」を起動:

-

7). 新しいボックス「EndeavourOS-Worm-save0205」をクリックして起動:

→正常に起動することを確認できたら、電源オフ

-

8). 今まで使っていた「EndeavourOS-Worm」をクリックして起動:

ログイン画面にてログイン

デスクトップ画面表示

-

ログアウト→ログイン

画面の解像度が調整されて、デスクトップ画面が表示:

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----

2. 「Worm」に必要な「設定ファイル」をダウンロード:

-

EndeavourOS-Community-Editions/worm に、「EndeavourOS」(Worm) で使われている「設定ファイル」が公開されています。

-

1). 「設定ファイル」をダウンロードして展開:

$ mkdir -p ~/ダウンロード/apps/worm-conf/
$ cd ~/ダウンロード/apps/worm-conf/

$ wget https://github.com/EndeavourOS-Community-Editions/worm/archive/refs/heads/master.tar.gz
:
2023-02-07 04:58:37 (22.1 MB/s) - `master.tar.gz' へ保存終了 [8286]

-

2). ダウンロードしたファイルを展開:

$ cd ~/ダウンロード/apps/worm-conf/
$ tar -zxvf master.tar.gz

-

確認:

$ ls -1A ~/ダウンロード/apps/worm-conf/worm-master/
:
.Xresources
.config
.dmrc
README.md
packages_repository.txt

→こちらは、ディレクトリとファイルです。

-

$ ls -1A ~/ダウンロード/apps/worm-conf/worm-master/.config
:
gtk-3.0
jgmenu
rofi
sxhkd
tint2
worm
xfce4

ディレクトリの中にディレクトリがありました。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - -----

3. ダウンロードした「設定ファイル」を修正:

-

使い勝手が良くなると思う修正を、はじめから組み込みました。

-


1). 「~/.config/worm/rc」の修正:

自動起動アプリの定義:

-

$ xed ~/ダウンロード/apps/worm-conf/worm-master/.config/worm/rc

↓ 下記に置換:

#!/bin/bash
#sh ~/.screenlayout/monitor.sh &
sxhkd &
picom &
tint2 &
spice-vdagent &
feh --bg-scale /usr/share/endeavouros/backgrounds/endeavouros-wallpaper.png &
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
#dbus-launch dunst --config ~/.config/dunst/dunstrc &
#dex -a -s /etc/xdg/autostart/:~/.config/autostart/ &
wormc frame-active-pixel $((16#FF383C4A))
wormc frame-inactive-pixel $((16#FF383C4A)) # todo: diff color for active window (the bug here was fixed, this works now)
wormc frame-left T
#wormc text-font 'Jetbrains Mono:size=10'
wormc text-font 'Sourcecode Pro Regular:size=10'
wormc frame-right 'I;M;C'
wormc button-offset 5 7
wormc close-path ~/.config/worm/buttons/close.png
wormc minimize-path ~/.config/worm/buttons/minimize.png
wormc maximize-path ~/.config/worm/buttons/maximize.png
wormc button-size 16
wormc border-width 2
wormc border-active-pixel $((16#FF5294e2))
wormc border-inactive-pixel $((16#FF7c818c))
wormc struts 10 45 10 10
wormc gaps 10
wormc layout floating
ibus-daemon -r -d -x &

-

各行の説明:

-

6 行目: Boxes の「spice-vdagent」機能(クリップボードの共有、ファイル送信)を有効化:
spice-vdagent &

-

14 行目: アプリのウィンドウの、タイトルバーの「日本語文字化け」の回避(フォント修正):
#wormc text-font 'Jetbrains Mono:size=10'
wormc text-font 'Sourcecode Pro Regular:size=10'

-

28 行目: 日本語化のための、ibus デーモンの自動起動:
ibus-daemon -r -d -x &

-


2). 「~/.config/tint2/tint2rc」の修正:

パネルの定義:

-

$ xed ~/ダウンロード/apps/worm-conf/worm-master/.config/tint2/tint2rc

-

169 行目: パネルで選択されているタグ(ワーススペース番号)をオレンジ色に変更
taskbar_name_active_font_color = #ffffff 100

↓ 下記に修正:

# taskbar_name_active_font_color = #ffffff 100
taskbar_name_active_font_color = #f57900 100

→後で修正したことがわかるように、元の行をコメントとして残しました。

-

変更後のタスクバーのイメージ:

→パネルにて、選択されているタグ「番号」をオレンジ色に変更

この画面では「2」が選択されて、画面に表示されています。

-

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 

追記: 2023-01-15 貢献できるようにプルリクエストを送信:

Change the color of the number of the selected "tag" to "orange" #3

169 行目:

- taskbar_name_active_font_color = #ffffff 100
+ # Change the color of the number of the selected "tag" to "orange"
+ # taskbar_name_active_font_color = #ffffff 100
+ taskbar_name_active_font_color = #f57900 100

→2023-12-08 マージされました

コミュニティ版「Openbox」でも「tint2」が使われており、似たような設定なので、設定変更で使い勝手が良くなると思います。

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 

-

224 行目: (アプリのランチャー)

デフォルト:

launcher_item_app = firefox.desktop                          ←(firefox)
launcher_item_app = /usr/share/applications/thunar.desktop   ←(thunar)
launcher_item_app = /usr/share/applications/xed.desktop      ←(xed)
launcher_item_app = /usr/share/applications/xfce4-terminal.desktop ←(terminal)
launcher_apps_dir = rofi          ←(電源ボタン)

↓ 修正:

launcher_item_app = /usr/share/applications/welcome.desktop
launcher_item_app = firefox.desktop
launcher_item_app = /usr/share/applications/thunar.desktop
# launcher_item_app = /usr/share/applications/xed.desktop
launcher_item_app = /usr/share/applications/featherpad.desktop
launcher_item_app = /usr/share/applications/xfce4-terminal.desktop
launcher_apps_dir = rofi

→「welcome」と「featherpad」を追加、「xed」をコメント化

全画面で使うのなら、「xed」をコメント化する必要はありません。「# 」を削除

-

233 行目: (パネルの時計)

デフォルト:

# Clock                                 ←(時計の指定)
time1_format = %H:%M
time2_format = %a %d %b

↓ 修正:

# Clock
time1_format = %H:%M
time2_format = %m/%d %a

-


3). 「~/.config/sxhkd/sxhkdrc」の修正:

「ショートカットキー」の登録:

-

$ xed ~/ダウンロード/apps/worm-conf/worm-master/.config/sxhkd/sxhkdrc

↓ 下記に置換:

super + Return
    xfce4-terminal
super + q
    wormc close-active-client
super + {1-9}
    wormc switch-tag {1-9}
super + shift + {1-9}
    wormc move-active-tag {1-9}
super + d
    rofi -modi drun -show drun -config ~/.config/rofi/rofidmenu.rasi
super + w
    firefox
super + n
    thunar
#super + p
#    sh ~/.config/rofi/powermenu
super + t
    wormc layout tiling
super + f
    wormc layout floating
super + r
    xrandr --output Virtual-1 --mode 1400x1050 && ~/.fehbg
# Print screen : ('scrot' must be installed)
Print
    sleep 0.2; scrot $HOME/"画像/Screenshots-%Y%m%d-%H%M%S.png"

-

各行の説明:

-

9 行目: (d-menu)

デフォルト:

super + r
    rofi -modi drun -show drun -config ~/.config/rofi/rofidmenu.rasi

↓ 下記に修正:

super + d
    rofi -modi drun -show drun -config ~/.config/rofi/rofidmenu.rasi

→「i3-wm」のショートカットキーに合わせました。(dmenu の「d」)

-

21 行目: (解像度を「1400x1050」にセットし、直前に使った壁紙に設定)

↓ 下記を設定ファイルに追記:

super + r
    xrandr --output Virtual-1 --mode 1400x1050 && ~/.fehbg

→壁紙が、解像度と連動しない(画像が取り残される)ので、一緒に変更されるようにしました。

-

もし、事前に、FHD の「1/2 画面」の解像度 (960x1014) を xrandr に追加していれば、下記でもOK:
super + r
xrandr --output Virtual-1 --mode 960x1014 && ~/.fehbg

→解像度 (960x1014) を追加(次の投稿 H161-2)して、「xrandr」で表示される状態でないとエラーします。

-

画像の「ズーム」などのモードの指定は、「~/.fehbg」の中のパラメータで変わります。
ファイルは触らずに、事前に「feh」のコマンド にモードのパラメータを追加して、好みの画像を表示すれば、それがこのファイルに自動的に反映されます。好きな画像が作れたら上書きされないように「~/.fehbg」を別名保存しておくと良いです。

縦横比が変わっても違和感がない「壁紙」を選ぶのが無難です。
「EndeavourOS」のデフォルトの壁紙は、丸い惑星が表示される、一番まずい例です。半画面にすると、横に楕円につぶれます。幾何学模様とか、無地とか、などはつぶれても支障がありません。

また、縦横比を固定化すると、半画面にすると今度は肝心の画像部分が横にズレます。色々トライすると良いです。

-

「xrandr」コマンドで使用できる「モニタ名」と「解像度」は、使っているPC 環境(モニタの性能、モニタの接続ポート、仮想環境での使用なら Boxes か VirtualBox か、など)で違います。

なので、「xrandr」で確認 が必要です。

→こちらの例だと、「ショートカットキー」を「Windows + D」に登録していますが、今回は変更しているので、 代わりに「Windows + R」(任意)など、別の指定にすると良いかも。

-

23 行目: 「Print Screen」キーを登録:

↓ 下記を設定ファイルに追記:

# Print screen : (Without the sleep scrot crashes with)
Print
    sleep 0.2; scrot $HOME/"画像/Screenshots-%Y-%m-%d_%H:%M:%S.png"

→「項番 5」でインストールした「scrot」アプリで、「全画面」のスクリーンショットを撮るように指定。

「フォルダ」の指定と「ファイル名」は任意で、好みのパターンに変更すると良いです。

パラメータを付ければ、一部だけのスクリーンショット機能が指定できます。「scrot --help」で確認。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- -

4. システム更新:

-

Windows + Enter で、端末を起動:

$ paru
:
:: パッケージデータベースの同期中...
 endeavouros は最新です
 core は最新です
 extra は最新です
 community は最新です
 multilib は最新です
:: システム全体の更新を開始...
 何も行うことがありません
:: AUR の更新を確認しています...
:: 開発の更新を確認しています...
 何も行うことがありません

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- --

5. 「Worm」に必要な「パッケージ」をインストール:

-

EndeavourOS-Community-Editions/worm にある、「~/packages_repository.txt」に、必要なパッケージの一覧があります。

また、ダウンロードしたファイルにも上記のファイルは含まれています:

-

1). 参考: ダウンロードしたファイルにて、一覧を確認:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/packages_repository.txt

→インストールすべきパッケージが表示されます。

-

2). 参考: ただし、含まれている一部のパッケージはエラーするので、パッケージ名を変更しました:

$ paru -S ttf-nerd-fonts-symbols    ←(すでにあるパッケージと衝突)
$ paru -S arc-gtk-theme        ←(対象のパッケージなしでエラー)

-

上記にある「ttf-nerd-fonts-symbols」がエラーする原因:
$ paru -Ss ttf-nerd-fonts-symbols | grep 済
:
community/ttf-nerd-fonts-symbols-common 2.3.3-1 [0B 41.54KiB] [インストール済み]

→「ttf-nerd-fonts-symbols」と共存できない「ttf-nerd-fonts-symbols-eos」パッケージが すでに「Xfce」に含まれています。追加のインストールはできません。

-

上記にある「arc-gtk-theme」がエラーする原因:
$ sudo pacman -Ss ttf-nerd-fonts-symbols
:
community/ttf-nerd-fonts-symbols-1000-em 2.3.3-1 (nerd-fonts)
    High number of extra glyphs from popular 'iconic fonts' (1000-em)
community/ttf-nerd-fonts-symbols-1000-em-mono 2.3.3-1 (nerd-fonts)
    High number of extra glyphs from popular 'iconic fonts' (1000-em monospace)
community/ttf-nerd-fonts-symbols-2048-em 2.3.3-1 (nerd-fonts)
    High number of extra glyphs from popular 'iconic fonts' (2048-em)
community/ttf-nerd-fonts-symbols-2048-em-mono 2.3.3-1 (nerd-fonts)
    High number of extra glyphs from popular 'iconic fonts' (2048-em monospace)
community/ttf-nerd-fonts-symbols-common 2.3.3-1
    High number of extra glyphs from popular 'iconic fonts' (common files)

→指定の「ttf-nerd-fonts-symbols」は存在しません。似たものが多いので、すべてでなく、ひとつだけ指定しましたが、インストールしなくても支障がないか、すべてのインストールが必要か、試してみないとわかりません。

-


3). インストールの前準備: スクリプト作成:

インストールするパッケージが多いので「スクリプト」を作成しました:

$ mkdir -p ~/ダウンロード/apps

-

$ xed ~/ダウンロード/apps/worm-setup.sh

↓ 下記を貼付け:

#!/bin/bash

echo
echo "===================="
eval 'sudo echo "パスワード以外は「Enter」を入力して下さい"'
echo
echo "Worm に必要なアプリのインストールを開始:"
echo "===================="
echo
echo "$ paru"
eval "paru"
echo
echo "===================="
echo "$ paru -S worm"
eval "paru -S worm"
echo
echo "===================="
echo "$ paru -S rofi"
eval "paru -S rofi"
echo
echo "===================="
echo "$ paru -S lightdm"
eval "paru -S lightdm"
echo
echo "===================="
echo "$ paru -S lightdm-slick-greeter"
eval "paru -S lightdm-slick-greeter"
echo
echo "===================="
echo "$ paru -S thunar"
eval "paru -S thunar"
echo
echo "===================="
echo "$ paru -S thunar-archive-plugin"
eval "paru -S thunar-archive-plugin"
echo
echo "===================="
echo "$ paru -S thunar-volman"
eval "paru -S thunar-volman"
echo
echo "===================="
echo "$ paru -S tumbler"
eval "paru -S tumbler"
echo
echo "===================="
echo "$ paru -S file-roller"
eval "paru -S file-roller"
echo
echo "===================="
echo "$ paru -S gvfs"
eval "paru -S gvfs"
echo
echo "===================="
echo "$ paru -S gvfs-afc"
eval "paru -S gvfs-afc"
echo
echo "===================="
echo "$ paru -S gvfs-gphoto2"
eval "paru -S gvfs-gphoto2"
echo
echo "===================="
echo "$ paru -S gvfs-mtp"
eval "paru -S gvfs-mtp"
echo
echo "===================="
echo "$ paru -S gvfs-nfs"
eval "paru -S gvfs-nfs"
echo
echo "===================="
echo "$ paru -S gvfs-smb"
eval "paru -S gvfs-smb"
echo
echo "===================="
echo "$ paru -S arc-gtk-theme-eos"
eval "paru -S arc-gtk-theme-eos"
echo
echo "===================="
echo "$ paru -S gtk-engine-murrine"
eval "paru -S gtk-engine-murrine"
echo
echo "===================="
echo "$ paru -S ttf-nerd-fonts-symbols-common"
eval "paru -S ttf-nerd-fonts-symbols-common"
echo
echo "===================="
echo "$ paru -S ttf-jetbrains-mono"
eval "paru -S ttf-jetbrains-mono"
echo
echo "===================="
echo "$ paru -S xdg-user-dirs-gtk"
eval "paru -S xdg-user-dirs-gtk"
echo
echo "===================="
echo "$ paru -S feh"
eval "paru -S feh"
echo
echo "===================="
echo "$ paru -S xfce4-terminal"
eval "paru -S xfce4-terminal"
echo
echo "===================="
echo "$ paru -S picom"
eval "paru -S picom"
echo
echo "===================="
echo "$ paru -S tint2"
eval "paru -S tint2"
echo
echo "===================="
echo "$ paru -S papirus-icon-theme"
eval "paru -S papirus-icon-theme"
echo
echo "===================="
echo "$ paru -S xcursor-neutral"
eval "paru -S xcursor-neutral"
echo
echo "===================="
echo "$ paru -S xed"
eval "paru -S xed"
echo
echo "===================="
echo "$ paru -S dunst"
eval "paru -S dunst"
echo
echo "===================="
echo "$ paru -S dex"
eval "paru -S dex"
echo
echo "===================="
echo "$ paru -S sxhkd"
eval "paru -S sxhkd"
echo
echo "===================="
echo "$ paru -S slock"
eval "paru -S slock"
echo "===================="
echo "$ paru -S scrot"
eval "paru -S scrot"
echo "===================="
echo "$ paru -S featherpad"
eval "paru -S featherpad"
echo
echo "===================="
echo "インストール完了:"
echo

→「scrot」と「featherpad」は、後で追加しました。

その都度、必要なアプリを(コメント行とペアで)追加したり、未使用ならアプリをコメント化しておくと、使い勝手が良くなります。

「ttf-jetbrains-mono」は英語環境や「端末」で使うなら見やすいフォントですが、日本語環境では文字化けするので、個人的には使っていません。削除したいけど、他の人がどうかはわからないので、そのままです。

-


4). インストールの実行:

$ cd ~/ダウンロード/apps/
$ bash worm-setup.sh

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ---

6. ダウンロードした「Worm」の「設定ファイル」を反映:

-

1).「Worm」を使う「ユーザ」でログイン:

-

2). ダウンロードしたファイルをホーム「~/」にコピー:

$ cd
$ cp -r ~/ダウンロード/apps/worm-conf/worm-master/.config ~/
$ cp ~/ダウンロード/apps/worm-conf/worm-master/.Xresources ~/
$ cp ~/ダウンロード/apps/worm-conf/worm-master/.dmrc ~/

-

3). ゲストOS を電源オフ:

「Boxes」を閉じます。

-

4). ホストOS も再起動:

ホストOS で、すべてアプリを閉じてから、

$ reboot

-

5). 「EndeavourOS」を起動して、ログイン画面にて、

パスワード入力欄にある、右上の「ねずみ」アイコンをクリック

「Worm」セッションを選択:

「<」をクリック

新しく作成した「ユーザ」で、パスワード入力:

-

6). 「Worm」のデスクトップ画面が表示:

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----

7. 「Worm」にて、「端末」の「設定」を見直し:

-

「ls」したときのフォルダ名の表示が「暗く」て見づらく、支障が出るので変更:

使っているテーマによると思います。

-

1). Windows + Enter で、「端末」を起動:

-

2).「端末」のウィンドウの空きで、右クリック→「設定…」

-

(1).「外観」タブ

フォント

「システムフォントを使用する」のチェックなし

「JetBrains Mono Regular 11」→「Source Code Pro Regular 10」に変更:

-

(2).「配色」タブ

パレット

「ボールドのテキストを明るい色で表示する」にチェック

-

3).「端末」の表示を確認:

$ ls -a
.              .bash_profile  .local                ドキュメント
..             .bashrc        .wget-hsts            ビデオ
.ICEauthority  .cache         .xsession-errors      音楽
.Xauthority    .config        .xsession-errors.old  画像
.Xresources    .dmrc          ダウンロード          公開
.bash_history  .face          テンプレート
.bash_logout   .gnupg         デスクトップ

→フォルダ名が見やすくなったことを確認

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- -----

8. 日本語入力:

-

前回、「ibus-mozc」はインストール済みで、「~/.xprofile」も作成しました。

ibus デーモンの起動は、「項番 3.」でダウンロードした「設定ファイル」に追記しました。

→「キーボード」アイコンが表示され、日本語入力が出来るはずです。

-


1). 「~/.xprofile」が作成されているか確認:

$ cat ~/.xprofile
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus

-


2). 「ibus-mozc」がインストールされているか確認:

$ paru -Ss ibus-mozc | grep 済
:
aur/ibus-mozc 2.28.4990.102-1 [+11 ~0.95] [インストール済み]

-

$ paru -Ss mozc | grep 済
:
aur/mozc 2.28.4990.102-1 [+72 ~1.37] [インストール済み]          ←(注目)
aur/ibus-mozc 2.28.4990.102-1 [+11 ~1.09] [インストール済み]     ←(注目)

-

3). 再起動

もし、上記の項番の作業が出来ておらず、作業した場合は、再起動が必要です。
確認のみなら要りません。

$ reboot

-

4). 「キーボード」アイコンがパネルに表示されました。

-

5). 日本語入力できるかの確認:

-

6). 日本語入力で、残りのその他の設定:

前回の投稿 を参照:

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- -

9. インストール済みのアプリの確認:

-

いくつかの「アプリ」はインストール済みです。

新しい「ユーザ」を作成した場合は、アプリは起動できても(ホームフォルダが違うので)設定がされていないはずです。

-

「アプリ」のインストール: を参照して、

「アプリの起動」の項目を確認:

アプリを起動して、設定する部分があれば確認して、設定しておきます:

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- --

10. 作業完了:

-

作業はここまで。

-


↓ 以降は、参考です。作業は要りません。


-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ---

11. 参考: 「Worm」をインストールするために行った確認作業(備忘録):

-

こちらの作業は備忘録なので、作業は要りません。

参考として残しました。

-

GitHub に下記の記述がありました:

「Worm」は、AUR パッケージ「worm-git」でインストールできます。

→ですが、他にも似たようなパッケージがあるので、

どれを使うべきか確認しました。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----

11-1. 「worm-git」パッケージについて確認:

-

確認しただけなので、作業は要りません。

-

1).「worm-git」パッケージの情報を確認:

$ paru -Si worm-git
:
リポジトリ                 : aur
名前                       : worm-git
バージョン                 : 0.1.0.149.g03d5dec-1
説明                       : A floating, tag-based window manager written in Nim
URL                        : https://github.com/codic12/worm
AUR URL                    : https://aur.archlinux.org/packages/worm-git
グループ                   : なし
ライセンス                 : MIT
提供                       : worm
依存パッケージ             : xorg-server
ビルド時の依存パッケージ   : nimble  nim  git
チェック時の依存パッケージ : なし
提案パッケージ             : なし
衝突パッケージ             : worm
メンテナ                   : moson
投票                       : 2
人気度                     : 0.000108
最初の投稿                 : Sat, 02 Oct 2021 17:28:23 +0000
最終更新                   : Thu, 16 Dec 2021 08:37:12 +0000     ←(注目)更新なし
古いバージョンとしてマーク : いいえ

-

2).「worm-git」パッケージの「PKGBUILD」を確認:

-

(1). 「worm-git」の PKGBUILD をダウンロード:
$ mkdir -p ~/ダウンロード/worm-git-wm
$ cd ~/ダウンロード/worm-git-wm/
$ paru -G worm-git
:
:: AUR を検索しています...

:: PKGBUILD をダウンロードしています...
 (1/1) worm-git-0.1.0.149.g03d5dec-1     [--------------------------]

-

(2). ダウンロードしたファイルを確認:
$ ls ~/ダウンロード/worm-git-wm/
worm-git
$ ls -1 ~/ダウンロード/worm-git-wm/worm-git/
PKGBUILD
worm.install

→ファイルが 2つ

-

(3).「worm.install」の内容を確認:
$ cat ~/ダウンロード/worm-git-wm/worm-git/worm.install
post_install() {
    echo -e "\n\nWorm will automatically execute the following file on startup:\n\n" \
    "~/.config/worm/rc\n\n" \
    "Create a simple shell-script to run your apps...\n" \
    "(Don't forget to make it executable)\n\n" \
    "An example can be found here: /usr/share/doc/worm/examples/rc\n\n"
}

→「項番 12.」の「2) - (3)」と同じでした。

和訳:

「Worm」は、起動時に次のファイルを自動的に実行します:   ~/.config/worm/rc
アプリを実行するための簡単なシェル スクリプトを作成します。
実行可能にすることを忘れないでください
例は次の場所にあります:  /usr/share/doc/worm/examples/rc

-

(4).「PKGBUILD」の内容を確認:
$ cat ~/ダウンロード/worm-git-wm/worm-git/PKGBUILD
# Maintainer: Mario Oenning <mo-son[at]mailbox[dot]org>
# Author: codic12 <https://github.com/codic12>

_pkgbase='worm'
pkgname='worm-git'
pkgdesc="A floating, tag-based window manager written in Nim"
pkgver=0.1.0.149.g03d5dec
pkgrel=1
arch=('x86_64' 'aarch64' 'armv7h')
url="https://github.com/codic12/worm"
license=('MIT')
makedepends=('nimble' 'nim' 'git')
depends=('xorg-server')
install=$_pkgbase.install
source=("$_pkgbase::git+$url.git")
sha256sums=('SKIP')
provides=("worm")
conflicts=("worm")

pkgver() {
    cd "$_pkgbase"
    echo "$(grep '^version       =' worm.nimble|head -n1|cut -d\" -f2|cut -d\- -f1).$(git rev-list --count HEAD).g$(git rev-parse --short HEAD)"
}

build() {
    cd "$_pkgbase"
    nimble -y build -d:release --gc:arc
}

package() {
    cd "$_pkgbase"

    # bin
    install -D -m755 "worm" "$pkgdir/usr/bin/worm"
    install -D -m755 "wormc" "$pkgdir/usr/bin/wormc"

    # license
    install -Dm644 "LICENSE" "$pkgdir/usr/share/licenses/$_pkgbase/LICENSE"

    # X session file
    install -Dm644 "assets/worm.desktop" "$pkgdir/usr/share/xsessions/worm.desktop"
    
    # docs
    install -Dm644 "README.md" "$pkgdir/usr/share/doc/$_pkgbase/README.md"
    install -Dm644 "docs/wormc.md" "$pkgdir/usr/share/doc/$_pkgbase/WORMC.md"
    
    # examples
    install -Dm755 "examples/rc" "$pkgdir/usr/share/doc/$_pkgbase/examples/rc"
    install -Dm644 "examples/sxhkdrc" "$pkgdir/usr/share/doc/$_pkgbase/examples/sxhkdrc"
    install -Dm755 "examples/jgmenu_run" "$pkgdir/usr/share/doc/$_pkgbase/examples/jgmenu_run"
}

→使われるソースが「github」に表示の緑の「ボタン」でダウンロードされるファイルになるようにソースファイル名が、「$pkgname」でなく「$_pkgbase」を使って加工されています。ダウンロードされるソースの URL が違います。

ソースのバージョンが違うだけで、配置された場所とファイル名は「項番 11-2」と同じです。

つまり、ホームに配置するファイルは手動で作る必要があります。

-

3). 普通は、最新 (Latest) と同じですが、サイトの作り方(パッケージの置き方)しだい。

Github」のサイトで表示される内容:

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- -----

11-2. 「worm」パッケージについて確認:

-

確認しただけなので、作業は要りません。

-

1).「worm」パッケージを確認:

$ paru -Ss worm
:
endeavouros/eos-skel-ce-worm 1.1-1 [21.68KiB 27.91KiB]
    pre user creation skel setup for worm EOS-CE

endeavouros/worm 0.3.2-1 [344.01KiB 1010.70KiB]       ←(注目)
    A floating, tag-based window manager written in Nim

aur/worm 0.3.2-1 [+2 ~0.01]
    A floating, tag-based window manager written in Nim

aur/worm-git 0.1.0.149.g03d5dec-1 [+2 ~0.00]
    A floating, tag-based window manager written in Nim

→「endeavouros」リポジトリにある「worm」の方が、今回の場合は良さそうです。

AUR でなく、公式リポジトリ「endeavouros」に登録されています。

paru でも pacman でもインストールでき、サポートされます。AUR のようにいつの間にか削除されて消えてしまうことがなく、安心です。

-

$ paru -Si worm
:
リポジトリ             : endeavouros
名前                   : worm
バージョン             : 0.3.2-1
説明                   : A floating, tag-based window manager written in Nim
アーキテクチャ         : x86_64
URL                    : https://github.com/codic12/worm
ライセンス             : MIT
グループ               : なし
提供                   : なし
依存パッケージ         : xorg-server
提案パッケージ         : なし
衝突パッケージ         : なし
置換パッケージ         : なし
ダウンロード容量       : 344.01 KiB
インストール容量       : 1010.70 KiB
パッケージ作成者       : EndeavourOS <info@endeavouros.com>
ビルド日時             : 2023年02月04日 17時29分42秒           ←(注目)
検証方法               : MD5 Sum  SHA-256 Sum  署名

-

2).「worm」パッケージの「PKGBUILD」を確認:

-

(1).「worm」の PKGBUILD をダウンロード:
$ mkdir -p ~/ダウンロード/worm-wm
$ cd ~/ダウンロード/worm-wm/
$ paru -G worm
:
:: AUR を検索しています...

:: PKGBUILD をダウンロードしています...
 (1/1) worm-0.3.2-1                                  [--------------------------]

-

(2). ダウンロードしたファイルを確認:
$ ls ~/ダウンロード/worm-wm/
worm
$ ls -1 ~/ダウンロード/worm-wm/worm/
PKGBUILD
worm.install

→ファイルが 2つ

-

(3).「worm.install」の内容を確認:
$ cat ~/ダウンロード/worm-wm/worm/worm.install
post_install() {
    echo -e "\n\nWorm will automatically execute the following file on startup:\n\n" \
    "~/.config/worm/rc\n\n" \
    "Create a simple shell-script to run your apps...\n" \
    "(Don't forget to make it executable)\n\n" \
    "An example can be found here: /usr/share/doc/worm/examples/rc\n\n"
}

和訳:

「Worm」は、起動時に次のファイルを自動的に実行します:   ~/.config/worm/rc
アプリを実行するための簡単なシェル スクリプトを作成します。
実行可能にすることを忘れないでください
例は次の場所にあります:  /usr/share/doc/worm/examples/rc

-

(4).「PKGBUILD」の内容を確認:
$ cat ~/ダウンロード/worm-wm/worm/PKGBUILD
# Maintainer: Mario Oenning <mo-son[at]mailbox[dot]org>
# Author: codic12 <https://github.com/codic12>

pkgname='worm'
pkgdesc="A floating, tag-based window manager written in Nim"
pkgver=0.3.2
pkgrel=1
arch=('x86_64' 'aarch64' 'armv7h')
url="https://github.com/codic12/worm"
license=('MIT')
makedepends=('nimble' 'nim' 'git')
depends=('xorg-server')
install=$pkgname.install
source=("$pkgname-$pkgver.tar.gz::$url/archive/v${pkgver}.tar.gz")
sha512sums=('6ff32ab5f93e58ee96a5add9c5f8489512b228f21b87d9f4de487d3824bc25e041a1e107f1380b8c2060de75df68fe758762cc4910afeef39710f9e412e5088d')

build() {
    cd "$pkgname-$pkgver"
    nimble -y build -d:release --gc:arc
}

package() {
    cd "$pkgname-$pkgver"

    # bin
    install -D -m755 "worm" "$pkgdir/usr/bin/worm"
    install -D -m755 "wormc" "$pkgdir/usr/bin/wormc"

    # license
    install -Dm644 "LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"

    # X session file
    install -Dm644 "assets/worm.desktop" "$pkgdir/usr/share/xsessions/worm.desktop"
    
    # docs
    install -Dm644 "README.md" "$pkgdir/usr/share/doc/$pkgname/README.md"
    install -Dm644 "docs/wormc.md" "$pkgdir/usr/share/doc/$pkgname/WORMC.md"
    
    # examples
    install -Dm755 "examples/rc" "$pkgdir/usr/share/doc/$pkgname/examples/rc"
    install -Dm644 "examples/sxhkdrc" "$pkgdir/usr/share/doc/$pkgname/examples/sxhkdrc"
    install -Dm755 "examples/jgmenu_run" "$pkgdir/usr/share/doc/$pkgname/examples/jgmenu_run"
}

→ソースファイルは、今のところ最新の「0.3.2」指定です。

注意:

「実行ファイル」、「ライセンス表示」、「インストール説明」、「設定ファイルの例」 などの「基本部」のインストールだけです。

つまり、ログイン画面で「Worm」が選べて、立ち上がるだけです。

-

実際に使うための、ホームフォルダに「設定ファイル」を配置する作業は含まれていません。

つまり、ホームに配置するファイルは手動で作る必要があります。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- -

12.「worm」のインストール:

-

動作確認しただけなので、作業は要りません。

-

1). 「worm」のインストール実行:

$ paru -S worm
:
パッケージ (1)    新しいバージョン  最終的な変化  ダウンロード容量
endeavouros/worm  0.3.2-1               0.99 MiB          0.34 MiB

:: インストールを行いますか? [Y/n] 

→Enter

(1/1) インストール worm                            [------------------------] 100%


Worm will automatically execute the following file on startup:

 ~/.config/worm/rc

 Create a simple shell-script to run your apps...
 (Don't forget to make it executable)

 An example can be found here: /usr/share/doc/worm/examples/rc


:: トランザクション後のフックを実行...
(1/1) Arming ConditionNeedsUpdate...

→「worm.install」の内容が表示されました:

和訳:

「Worm」は、起動時に次のファイルを自動的に実行します:  「~/.config/worm/rc」
アプリを実行するための簡単なシェル スクリプトを作成します。
実行可能にすることを忘れないでください
例は次の場所にあります: 「/usr/share/doc/worm/examples/rc」

-

2). インストールの時に使われた、インストール用のファイル:

  • PKGBUILD

  • worm.install

-

3). インストールで、配置されたファイル:

-

(1). 「実行ファイル」:
  • /usr/bin/worm

  • /usr/bin/wormc

-

(2). 「デスクトップファイル」:

X session file:

  • /usr/share/xsessions/worm.desktop

-

(3). 「説明ファイル」:
  • /usr/share/doc/worm/README.md

  • /usr/share/doc/worm/WORMC.md

-

(4). 「設定ファイルの例」:
$ ls -1 /usr/share/doc/worm/examples/
:
jgmenu_run
rc
sxhkdrc

-

含まれている「設定ファイル」の例:
  • /usr/share/doc/worm/examples/rc

  • /usr/share/doc/worm/examples/sxhkdrc

  • /usr/share/doc/worm/examples/jgmenu_run

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- --

12-1. 「Worm」の設定ファイル(自動起動):

-

確認しただけなので、作業は要りません。

-

「/usr/share/doc/worm/README.md」からの抜粋(和訳):

-

1). 「worm」は、起動時に「~/.config/worm/rc」(シェル スクリプト)ファイルを実行します。

→ファイル属性を実行可能にしておくと、「worm」でお気に入りのアプリケーションを実行できます。

-

2). 「~/.config/worm/rc」の設定例:

「/usr/share/doc/worm/examples/rc」を参照:

-

3). 設定例のファイル属性:

$ ls -l /usr/share/doc/worm/examples/rc
-rwxr-xr-x 1 root root 1526  2月  4 17:29 /usr/share/doc/worm/examples/rc

→ファイル属性は「実行可能」です。

-

4). 設定例の内容を表示:

$ cat /usr/share/doc/worm/examples/rc

↓ 日本語のコメント行を追記:

#!/usr/bin/env bash
# | NOTE | NOTE | NOTE | NOTE |
# if you use this configuration, make sure that the paths are all right for the configuration file. this is just an example!!!
# you would also need things like nitrogen and polybar installed.
## この構成を使用する場合は、設定ファイルのパスがすべて正しいことを確認してください。これはほんの一例です!!!
## 「nitrogen」や「polybar」などもインストールする必要があります。

exec nitrogen --restore &

exec polybar top -q -c ~/.config/worm/polybar/config.ini &

exec mpd &

exec sxhkd -c ~/.config/worm/sxhkdrc &

wormc border-width 6

## pywal support
# # CONFIGURE
# pywal_active_index="3" # color3
# pywal_inactive_index="4" # color4
#
# # CODE
# contrast_text_for () {
#   # Formula from:
#   # https://stackoverflow.com/questions/596216/formula-to-determine-perceived-brightness-of-rgb-color
#   # https://www.w3.org/TR/AERT/#color-contrast
#   if perl -e "exit ((1 - (0.299 * $((16#${1:0:2})) + 0.587 * $((16#${1:2:2})) + 0.114 * $((16#${1:4:2}))) / 255) > 0.5)"; then
#     echo $((16#FF000000))
#   else
#     echo $((16#FFFFFFFF))
#   fi
# }
# pywal_active="$(sed -n $(($pywal_active_index + 1))p ~/.cache/wal/colors | tail -c +2)"
# pywal_inactive="$(sed -n $(($pywal_inactive_index + 1))p ~/.cache/wal/colors | tail -c +2)"
# wormc border-active-pixel $((16#FF$pywal_active))
# wormc border-inactive-pixel $((16#FF$pywal_inactive))
# wormc frame-active-pixel $((16#FF$pywal_active))
# wormc frame-inactive-pixel $((16#FF$pywal_inactive))
# wormc text-active-pixel $(contrast_text_for $pywal_active)
# wormc text-inactive-pixel $(contrast_text_for $pywal_inactive)

wormc layout tiling
wormc struts 75 20 20 20
wormc gaps 20
wormc frame-height 0

→日本語のコメント行を追記しました。

-

5). 上記から、必要な「アプリ」を確認:

$  paru -Ss nitrogen
:
extra/nitrogen 1.6.1-4 [163.05KiB 455.08KiB]
    Background browser and setter for X windows

-

$ paru -Ss polybar
:
community/polybar 3.6.3-3 [726.17KiB 2.41MiB]
    A fast and easy-to-use status bar

-

$ paru -Ss mpd
:
extra/mpd 0.23.12-1 [890.84KiB 2.79MiB]
    Flexible, powerful, server-side application for playing music

-

$ paru -Ss sxhkd
:
community/sxhkd 0.6.2-2 [34.76KiB 138.22KiB]
    Simple X hotkey daemon

-

-

6). 上記のアプリで必要な「設定ファイル」を作成:

-

(1).「Worm」の設定ファイル「~/.config/worm/rc」の作成:

~/.config/worm/rc

-

$ cp /usr/share/doc/worm/examples/rc ~/.config/worm/rc
$ ls -l ~/.config/worm/rc
:

-

(2).「polybar」の設定ファイル:

~/.config/worm/polybar/config.ini

-

(3).「sxhkd」の設定ファイル「~/.config/worm/sxhkdrc」の作成:

~/.config/worm/sxhkdrc

-

$ cp /usr/share/doc/worm/examples/sxhkdrc ~/.config/worm/sxhkdrc

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ---

12-2.「Worm」の設定ファイル(ショートカットキーの定義):

-

確認しただけなので、作業は要りません。

-

1). キーバインディング(関連付け):

「Worm」には、ショートカットキーを定義する機能が組み込まれていないため、

sxhkd を使用します。

-

まず、ドキュメント を読んで、「wormc」の動作を理解します。

その後、「sxhkdrc」を作成します。

-

2). 「~/.config/worm/sxhkdrc」の設定例:

「/usr/share/doc/worm/examples/sxhkdrc」を参照:

-

3). 設定例のファイル属性:

$ ls -l /usr/share/doc/worm/examples/sxhkdrc
-rw-r--r-- 1 root root 427  2月  4 17:29 /usr/share/doc/worm/examples/sxhkdrc

-

4). 設定例の内容を表示:

$ cat /usr/share/doc/worm/examples/sxhkdrc

↓ 日本語のコメント行を追記:

# Restart worm
## ワームを再起動
super + ctrl + r
    worm

# Quit worm
## ワームを
ctrl + alt + q
    pkill worm

# Close app
## アプリを閉じる
super + q
    wormc close-active-client

# Maximize app
## アプリを最大化
super + f
    wormc maximize-active-client

# Minimize app
## アプリを最小化
super + h
    wormc minimize-active-client

# Tags
## タグの切り替え、移動
super + {_, shift + } {1-9}
    wormc {switch,move-active}-tag {1-9}

# Set master windows
## マスター ウィンドウの設定
super + m
    wormc master-active

# Float a window
## ウィンドウをフローティング
super + shift + space
    wormc float-active

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----

12-3. 「jgmenu_run」ファイルの内容:

-

確認しただけなので、作業は要りません。

-

「jgmenu」

jgmenu は、シンプルで独立した X11 メニューです。 cairo と pango を使用してメニューを表示します。

-

1). 「jgmenu」の確認:

$ paru -Ss jgmenu
:
community/jgmenu 4.4.1-1 [124.78KiB 376.29KiB]
    Simple, independent, contemporary-looking X11 menu, designed for scripting, 
    ricing and tweaking

-

2). 「~/.config/worm/jgmenu_run」の設定例:

「/usr/share/doc/worm/examples/jgmenu_run」を参照:

-

3). 設定例のファイル属性:

$ ls -l /usr/share/doc/worm/examples/jgmenu_run
:
-rwxr-xr-x 1 root root 2593  2月  4 17:29 /usr/share/doc/worm/examples/jgmenu_run

-

4). 設定例の内容を表示:

$ cat /usr/share/doc/worm/examples/jgmenu_run

↓ 日本語のコメント行を追記:

#!/bin/sh
# shellcheck disable=2039,2086

: ${JGMENU_EXEC_DIR=/usr/lib/jgmenu}

export PATH="$JGMENU_EXEC_DIR:$PATH"
JGMENU_LOCKFILE=~/.jgmenu-lockfile

die () {
    printf "fatal: %s\n" "$1"
    exit 1
}

usage () {
    printf "usage: jgmenu_run\n"
    printf "       jgmenu_run <command> [<args>]\n\n"
    printf "Top level convenience wrapper for jgmenu\n\n"
    printf "If no 'command' or argument is specified, jgmenu_run does one of the following:\n"
    printf "  - Shows the menu if an instance of jgmenu is already running\n"
    printf "  - Starts jgmenu in 'stay-alive' mode (i.e. as a long-running application)\n"
    printf "    using apps unless otherwise specified by 'csv_cmd' in jgmenurc\n\n"
    printf "Commands are only intended for developers when plugging together modules.\n\n"
    exit 0
}

print_exec_path () {
    printf "%b\n" "${JGMENU_EXEC_DIR}"
    exit 0
}

# Pipe to UNIX socket if tint2 button was used.
send_tint2_env_vars_to_jgmenu () {
    # Check set/unset with ${parameter+word}
    test -z "${TINT2_BUTTON_ALIGNED_X1+x}" && return
    printf "%b" \
        "TINT2_BUTTON_ALIGNED_X1=${TINT2_BUTTON_ALIGNED_X1}\n" \
        "TINT2_BUTTON_ALIGNED_X2=${TINT2_BUTTON_ALIGNED_X2}\n" \
        "TINT2_BUTTON_ALIGNED_Y1=${TINT2_BUTTON_ALIGNED_Y1}\n" \
        "TINT2_BUTTON_ALIGNED_Y2=${TINT2_BUTTON_ALIGNED_Y2}\n" \
        "TINT2_BUTTON_PANEL_X1=${TINT2_BUTTON_PANEL_X1}\n" \
        "TINT2_BUTTON_PANEL_X2=${TINT2_BUTTON_PANEL_X2}\n" \
        "TINT2_BUTTON_PANEL_Y1=${TINT2_BUTTON_PANEL_Y1}\n" \
        "TINT2_BUTTON_PANEL_Y2=${TINT2_BUTTON_PANEL_Y2}\n" \
        | "${JGMENU_EXEC_DIR}/jgmenu-socket"
}

remove_lockfile () {
    rm -f "${JGMENU_LOCKFILE}"
    printf "warn: %b\n" "found old lockfile; lockfile removed"
}

# "jgmenu_run" with no arguments specified
if test $# -lt 1
then
    # A primary objective here is to keep 'awake' quick
    # Checking if the lockfile exists is much quicker than
    # 'pgrep -x jgmenu' (30ms on my machine) or similar.
    if test -e ${JGMENU_LOCKFILE}
    then
        send_tint2_env_vars_to_jgmenu
        if killall -SIGUSR1 jgmenu >/dev/null 2>&1
        then
            exit 0
        else
            # We should not get to here unless
            #   - there has been a crash (e.g. ASAN related)
            #   - lockfile was left from a jgmenu compiled before
            #     commit e3cb35 when we started to handle SIGTERM
            #     and SIGINT
            remove_lockfile
        fi
    fi

    exec jgmenu --at-pointer
    exit 0
fi

test "$1" = "--help" && usage
test "$1" = "--exec-path" && print_exec_path

cmd="$1"
cmds="jgmenu-${cmd} jgmenu-${cmd}.sh jgmenu-${cmd}.py"
shift

for c in ${cmds}
do
    if type "${c}" >/dev/null 2>&1
    then
        exec "${c}" "$@"
        exit 0
    fi
done

die "'${cmd}' is not a jgmenu_run command"

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- -----

13. 参考: インストールした「Xfce」と、ダウンロードした「Worm」の「設定ファイル」の重なりを確認:

-

確認しただけなので、作業は要りません。

-

EndeavourOS-Community-Editions/worm にて、「EndeavourOS」(Worm) で使われている「設定ファイル」をダウンロードして、

「EndeavourOS」(Xfce) にある「設定ファイル」と、「Worm」セッションを追加した場合の「設定ファイル」の重なりを確認しました:

相対する重なりがあったときに、容認できる設定なのか確認しました。

-

追記: 相対するものが一部ありました:

→両方のセッションを切り替えて使うと、どちらを上書きしたか、残したかで、一部の動作に支障が出そう。

-


1). 現在のホーム「~/」フォルダで重なりを確認:

Xfce:

$ cd
$ ls -a ~/
:
.              .bashrc         .local                ダウンロード
..             .cache          .mozilla              テンプレート
.ICEauthority  .config         .python_history       デスクトップ
.Xauthority    .dmrc           .wget-hsts            ドキュメント
.Xresources    .face           .xprofile             ビデオ
.bash_history  .frozen-bubble  .xsession-errors      音楽
.bash_logout   .gnupg          .xsession-errors.old  画像
.bash_profile  .kajonggserver  test                  公開

→ 2つのファイルの重なりがあります。「.dmrc」、「.Xresources」

-

(1). 「~/.dmrc」ファイルの比較:

Xfce:

$ cat ~/.dmrc
:
[Desktop]
Session=xfce

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.dmrc
:
[Desktop]
Session=worm

→ログイン画面でセッションを選択すれば、変更できると思われますが、

支障が出るなら、ユーザ(ホームディレクトリ)を分ける必要があります。

-

Xfce」セッションで「ubn」でログイン →「Xfce」のデスクトップが起動

Xfce」セッションで「wubn」でログイン →「Xfce」のデスクトップが起動

 

-

「Worm」セッションで「wubn」でログイン →「Worm」のデスクトップが起動

「Worm」セッションで「ubn」でログイン →デスクトップ真っ暗、カーソルのみ表示

→「Worm」用の設定をしていないので「Worm」のデスクトップは表示できません。

-

(2). 「~/.Xresources」ファイルの比較:

Xfce:

$ cat ~/.Xresources
:
Xcursor.theme: Qogir
Xcursor.size: 16

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.Xresources
:
Xcursor.theme: Neutral
Xcursor.size: 16

→テーマの差なので、どちらかにすれば良さそう。

-


2).「~/.config/」フォルダで重なりを確認:

$ ls -a ~/.config/
:
.                               featherpad     kshisenrc                         systemd
..                              gnome-games    libreoffice                       user-dirs.dirs
EOS-greeter.conf                gtk-3.0        mimeapps.list                     user-dirs.locale
QtProject.conf                  gtk-4.0        mozc                              welcome-own-cmds.conf
Thunar                          ibus           nano                              welcome.conf
audacious                       kajonggrc      pulse                             xed
autostart                       kmahjonggrc    qpdfview                          xfce4
dconf                           kminesrc       reflector-simple-free-params.txt  yay
eos-update-notifier.first_init  kolourpaintrc  session

→ 3つのフォルダの重なりがあります。「gtk-3.0」、「xfce4」、「session」

-


3). 「~/.config/gtk-3.0」フォルダの比較:

Xfce:

$ ls -1a ~/.config/gtk-3.0/
.
..
bookmarks
gtk.css
settings.ini

-

Worm:

$ ls -1a ~/ダウンロード/apps/worm-conf/worm-master/.config/gtk-3.0/
:
.
..
gtk.css
settings.ini

→ 2つのファイルの重なりがあります。「gtk.css」、「settings.ini」

-

(1). 「~/.config/gtk-3.0/gtk.css」ファイルの比較:

Xfce:

$ cat ~/.config/gtk-3.0/gtk.css
:
window.xfce4-panel widget > box > button > image{
   padding: 0.2em 0.16em;  -gtk-icon-transform: scale(0.8);
}

window#whiskermenu-window treeview>* {
  padding:0.2em 0.16em;
}

#xfce4-notification-plugin image {
    -gtk-icon-transform: scale(0.85) translateY(3px);
}
#pulseaudio-button image {
    -gtk-icon-transform: scale(0.9);
}
#xfce4-power-manager-plugin image {
    -gtk-icon-transform: scale(0.75);
}

VteTerminal, vte-terminal {
    padding: 13px;
}

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.config/gtk-3.0/gtk.css
:
VteTerminal,vte-terminal {
    padding: 12px;
}

→見た目なので、どちらかにすれば良さそう。

-

(2). 「~/.config/gtk-3.0/settings.ini」ファイルの比較:

Xfce:

$ cat ~/.config/gtk-3.0/settings.ini
:
[Settings]
gtk-font-name=Noto Sans 10
gtk-theme-name=Arc-Darker
gtk-icon-theme-name=Qogir
gtk-cursor-theme-name=Qogir
gtk-cursor-theme-size=16
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=0
gtk-enable-input-feedback-sounds=0
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=none

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.config/gtk-3.0/settings.ini
:
[Settings]
gtk-theme-name=Arc-Dark
gtk-icon-theme-name=Papirus-Dark
gtk-font-name=Jetbrains Mono 11
gtk-cursor-theme-name=Neutral
gtk-cursor-theme-size=16
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=0
gtk-menu-images=0
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintmedium
gtk-xft-rgba=rgb

-


4). 「~/.config/xfce4」フォルダの比較:

Xfce:

$ ls -1a ~/.config/xfce4/
:
.
..
desktop
panel
terminal
xfce4-screenshooter
xfconf
xfwm4

-

Worm:

$ ls -1a ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/
.
..
terminal
xfconf

→ 2つのフォルダの重なりあり

-


5). 「~/.config/xfce4/terminal」フォルダの比較:

Xfce:

$ ls -1a ~/.config/xfce4/terminal/
.
..
accels.scm
terminalrc

-

Worm:

$ ls -1a ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/terminal/
.
..
accels.scm
terminalrc

→ 2つのファイルの重なりがあります。「accels.scm」、「terminalrc」

-

(1). 「~/.config/xfce4/terminal/accels.scm」ファイルの比較:

Xfce:

$ cat ~/.config/xfce4/terminal/accels.scm
:
; xfce4-terminal GtkAccelMap rc-file         -*- scheme -*-
; this file is an automated accelerator map dump
;
(gtk_accel_path "<Actions>/terminal-window/goto-tab-2" "<Alt>2")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-6" "<Alt>6")
; (gtk_accel_path "<Actions>/terminal-window/copy-input" "")
; (gtk_accel_path "<Actions>/terminal-window/close-other-tabs" "")
; (gtk_accel_path "<Actions>/terminal-window/move-tab-right" "<Primary><Shift>Page_Down")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-7" "<Alt>7")
; (gtk_accel_path "<Actions>/terminal-window/set-title-color" "")
; (gtk_accel_path "<Actions>/terminal-window/edit-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/zoom-menu" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-1" "<Alt>1")
; (gtk_accel_path "<Actions>/terminal-window/fullscreen" "F11")
; (gtk_accel_path "<Actions>/terminal-window/read-only" "")
; (gtk_accel_path "<Actions>/terminal-window/preferences" "")
; (gtk_accel_path "<Actions>/terminal-window/reset-and-clear" "")
; (gtk_accel_path "<Actions>/terminal-window/about" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-5" "<Alt>5")
; (gtk_accel_path "<Actions>/terminal-window/close-window" "<Primary><Shift>q")
; (gtk_accel_path "<Actions>/terminal-window/reset" "")
; (gtk_accel_path "<Actions>/terminal-window/save-contents" "")
(gtk_accel_path "<Actions>/terminal-window/toggle-menubar" "F10")
; (gtk_accel_path "<Actions>/terminal-window/copy" "<Primary><Shift>c")
; (gtk_accel_path "<Actions>/terminal-window/copy-html" "")
; (gtk_accel_path "<Actions>/terminal-window/last-active-tab" "")
; (gtk_accel_path "<Actions>/terminal-window/show-borders" "")
; (gtk_accel_path "<Actions>/terminal-window/view-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/detach-tab" "<Primary><Shift>d")
; (gtk_accel_path "<Actions>/terminal-window/scroll-on-output" "")
; (gtk_accel_path "<Actions>/terminal-window/show-toolbar" "")
; (gtk_accel_path "<Actions>/terminal-window/next-tab" "<Primary>Page_Down")
; (gtk_accel_path "<Actions>/terminal-window/tabs-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/search-next" "")
; (gtk_accel_path "<Actions>/terminal-window/search-prev" "")
; (gtk_accel_path "<Actions>/terminal-window/undo-close-tab" "")
; (gtk_accel_path "<Actions>/terminal-window/set-title" "<Primary><Shift>s")
; (gtk_accel_path "<Actions>/terminal-window/contents" "F1")
; (gtk_accel_path "<Actions>/terminal-window/zoom-reset" "<Primary>0")
; (gtk_accel_path "<Actions>/terminal-window/close-tab" "<Primary><Shift>w")
; (gtk_accel_path "<Actions>/terminal-window/new-tab" "<Primary><Shift>t")
; (gtk_accel_path "<Actions>/terminal-window/new-window" "<Primary><Shift>n")
; (gtk_accel_path "<Actions>/terminal-window/terminal-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/show-menubar" "")
; (gtk_accel_path "<Actions>/terminal-window/select-all" "<Primary><Shift>a")
; (gtk_accel_path "<Actions>/terminal-window/paste" "<Primary><Shift>v")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-9" "<Alt>9")
; (gtk_accel_path "<Actions>/terminal-window/move-tab-left" "<Primary><Shift>Page_Up")
; (gtk_accel_path "<Actions>/terminal-window/search" "<Primary><Shift>f")
; (gtk_accel_path "<Actions>/terminal-window/file-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/prev-tab" "<Primary>Page_Up")
; (gtk_accel_path "<Actions>/terminal-window/paste-selection" "")
; (gtk_accel_path "<Actions>/terminal-window/zoom-in" "<Primary>plus")
; (gtk_accel_path "<Actions>/terminal-window/zoom-out" "<Primary>minus")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-8" "<Alt>8")
; (gtk_accel_path "<Actions>/terminal-window/help-menu" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-4" "<Alt>4")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-3" "<Alt>3")

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/terminal/accels.scm
:
; xfce4-terminal GtkAccelMap rc-file         -*- scheme -*-
; this file is an automated accelerator map dump
;
(gtk_accel_path "<Actions>/terminal-window/goto-tab-2" "<Alt>2")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-6" "<Alt>6")
; (gtk_accel_path "<Actions>/terminal-window/copy-input" "")
; (gtk_accel_path "<Actions>/terminal-window/close-other-tabs" "")
; (gtk_accel_path "<Actions>/terminal-window/move-tab-right" "<Primary><Shift>Page_Down")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-7" "<Alt>7")
; (gtk_accel_path "<Actions>/terminal-window/set-title-color" "")
; (gtk_accel_path "<Actions>/terminal-window/edit-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/zoom-menu" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-1" "<Alt>1")
; (gtk_accel_path "<Actions>/terminal-window/fullscreen" "F11")
; (gtk_accel_path "<Actions>/terminal-window/read-only" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-5" "<Alt>5")
; (gtk_accel_path "<Actions>/terminal-window/preferences" "")
; (gtk_accel_path "<Actions>/terminal-window/reset-and-clear" "")
; (gtk_accel_path "<Actions>/terminal-window/about" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-4" "<Alt>4")
; (gtk_accel_path "<Actions>/terminal-window/close-window" "<Primary><Shift>q")
; (gtk_accel_path "<Actions>/terminal-window/reset" "")
; (gtk_accel_path "<Actions>/terminal-window/save-contents" "")
(gtk_accel_path "<Actions>/terminal-window/toggle-menubar" "F10")
; (gtk_accel_path "<Actions>/terminal-window/copy" "<Primary><Shift>c")
; (gtk_accel_path "<Actions>/terminal-window/copy-html" "")
; (gtk_accel_path "<Actions>/terminal-window/last-active-tab" "")
; (gtk_accel_path "<Actions>/terminal-window/show-borders" "")
; (gtk_accel_path "<Actions>/terminal-window/view-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/detach-tab" "<Primary><Shift>d")
; (gtk_accel_path "<Actions>/terminal-window/scroll-on-output" "")
; (gtk_accel_path "<Actions>/terminal-window/show-toolbar" "")
; (gtk_accel_path "<Actions>/terminal-window/next-tab" "<Primary>Page_Down")
; (gtk_accel_path "<Actions>/terminal-window/tabs-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/search-next" "")
; (gtk_accel_path "<Actions>/terminal-window/search-prev" "")
; (gtk_accel_path "<Actions>/terminal-window/undo-close-tab" "")
; (gtk_accel_path "<Actions>/terminal-window/set-title" "<Primary><Shift>s")
; (gtk_accel_path "<Actions>/terminal-window/contents" "F1")
; (gtk_accel_path "<Actions>/terminal-window/zoom-reset" "<Primary>0")
; (gtk_accel_path "<Actions>/terminal-window/close-tab" "<Primary><Shift>w")
; (gtk_accel_path "<Actions>/terminal-window/new-tab" "<Primary><Shift>t")
; (gtk_accel_path "<Actions>/terminal-window/new-window" "<Primary><Shift>n")
; (gtk_accel_path "<Actions>/terminal-window/terminal-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/show-menubar" "")
; (gtk_accel_path "<Actions>/terminal-window/select-all" "<Primary><Shift>a")
; (gtk_accel_path "<Actions>/terminal-window/paste" "<Primary><Shift>v")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-9" "<Alt>9")
; (gtk_accel_path "<Actions>/terminal-window/move-tab-left" "<Primary><Shift>Page_Up")
; (gtk_accel_path "<Actions>/terminal-window/search" "<Primary><Shift>f")
; (gtk_accel_path "<Actions>/terminal-window/file-menu" "")
; (gtk_accel_path "<Actions>/terminal-window/prev-tab" "<Primary>Page_Up")
; (gtk_accel_path "<Actions>/terminal-window/paste-selection" "")
; (gtk_accel_path "<Actions>/terminal-window/zoom-in" "<Primary>plus")
; (gtk_accel_path "<Actions>/terminal-window/zoom-out" "<Primary>minus")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-8" "<Alt>8")
; (gtk_accel_path "<Actions>/terminal-window/help-menu" "")
(gtk_accel_path "<Actions>/terminal-window/goto-tab-3" "<Alt>3")

-

(2). 「~/.config/xfce4/terminal/terminalrc」ファイルの比較:

Xfce:

$ cat ~/.config/xfce4/terminal/terminalrc
:
[Configuration]
BackgroundDarkness=0.920000
MiscSearchDialogOpacity=100
MiscShowUnsafePasteDialog=FALSE
BackgroundMode=TERMINAL_BACKGROUND_TRANSPARENT
MiscAlwaysShowTabs=FALSE
MiscBell=FALSE
MiscBellUrgent=FALSE
MiscBordersDefault=TRUE
MiscCursorBlinks=FALSE
MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK
MiscDefaultGeometry=115x25
MiscInheritGeometry=FALSE
MiscMenubarDefault=FALSE
MiscMouseAutohide=FALSE
MiscMouseWheelZoom=TRUE
MiscToolbarDefault=FALSE
MiscConfirmClose=TRUE
MiscCycleTabs=TRUE
MiscTabCloseButtons=TRUE
MiscTabCloseMiddleClick=TRUE
MiscTabPosition=GTK_POS_TOP
MiscHighlightUrls=TRUE
MiscMiddleClickOpensUri=FALSE
MiscCopyOnSelect=FALSE
MiscShowRelaunchDialog=TRUE
MiscRewrapOnResize=TRUE
MiscUseShiftArrowsToScroll=FALSE
MiscSlimTabs=FALSE
MiscNewTabAdjacent=FALSE
ColorForeground=#e3e3ea
ColorBackground=#08052b
ColorCursor=#ff7f7f
ColorCursorForeground=#FFFFFF
ColorBold=#7fbaff
TabActivityColor=#81813d3d9c9c
ColorCursorUseDefault=FALSE
ColorBoldIsBright=TRUE
ScrollingUnlimited=FALSE
ScrollingLines=50000
FontName=Source Code Pro 10
ColorPalette=rgb(8,5,43);rgb(255,127,127);rgb(127,63,191);rgb(204,57,128);rgb(127,186,255);rgb(127,63,191);rgb(127,127,255);rgb(205,204,219);rgb(127,186,255);rgb(255,127,127);rgb(153,153,204);rgb(255,127,127);rgb(127,127,255);rgb(127,63,191);rgb(127,127,255);rgb(227,227,234)
ScrollingBar=TERMINAL_SCROLLBAR_NONE
MiscRightClickAction=TERMINAL_RIGHT_CLICK_ACTION_CONTEXT_MENU

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/terminal/terminalrc
:
[Configuration]
BackgroundDarkness=0.860000
MiscSearchDialogOpacity=100
MiscShowUnsafePasteDialog=FALSE
BackgroundMode=TERMINAL_BACKGROUND_TRANSPARENT
MiscAlwaysShowTabs=FALSE
MiscBell=FALSE
MiscBellUrgent=FALSE
MiscBordersDefault=TRUE
MiscCursorBlinks=FALSE
MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK
MiscDefaultGeometry=100x30
MiscInheritGeometry=FALSE
MiscMenubarDefault=FALSE
MiscMouseAutohide=FALSE
MiscMouseWheelZoom=TRUE
MiscToolbarDefault=FALSE
MiscConfirmClose=TRUE
MiscCycleTabs=TRUE
MiscTabCloseButtons=TRUE
MiscTabCloseMiddleClick=TRUE
MiscTabPosition=GTK_POS_TOP
MiscHighlightUrls=TRUE
MiscMiddleClickOpensUri=FALSE
MiscCopyOnSelect=FALSE
MiscShowRelaunchDialog=TRUE
MiscRewrapOnResize=TRUE
MiscUseShiftArrowsToScroll=FALSE
MiscSlimTabs=TRUE
MiscNewTabAdjacent=FALSE
ColorForeground=#e3e3ea
ColorBackground=#08052b
ScrollingUnlimited=TRUE
TitleMode=TERMINAL_TITLE_REPLACE
ScrollingBar=TERMINAL_SCROLLBAR_NONE
TextBlinkMode=TERMINAL_TEXT_BLINK_MODE_FOCUSED
FontName=Jetbrains Mono 11
ColorCursorForeground=#FFFFFF
ColorCursor=#ff7f7f
ColorCursorUseDefault=FALSE
ColorBold=#7fbaff
ColorBoldIsBright=FALSE
TabActivityColor=#47B35D

-


6). 「~/.config/xfce4/xfconf」フォルダの比較:

Xfce:

$ ls -1a ~/.config/xfce4/xfconf/
:
.
..
xfce-perchannel-xml

-

Worm:

$ ls -1a ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/xfconf/
:
.
..
xfce-perchannel-xml

-


7). 「~/.config/xfce4/xfconf/xfce-perchannel-xml」フォルダの比較:

Xfce:

$ ls -1a ~/.config/xfce4/xfconf/xfce-perchannel-xml/
:
.
..
displays.xml
keyboards.xml
thunar.xml
xfce4-desktop.xml
xfce4-keyboard-shortcuts.xml
xfce4-notifyd.xml
xfce4-panel.xml
xfce4-power-manager.xml
xfce4-screensaver.xml
xfce4-session.xml
xfce4-settings-manager.xml
xfwm4.xml
xsettings.xml

-

Worm:

$ ls -1a ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/xfconf/xfce-perchannel-xml/
.
..
thunar.xml

-

「~/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml」ファイルの比較:

Xfce:

$ cat ~/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml
:
<?xml version="1.0" encoding="UTF-8"?>

<channel name="thunar" version="1.0">
  <property name="last-view" type="string" value="ThunarIconView"/>
  <property name="last-location-bar" type="string" value="ThunarLocationEntry"/>
  <property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_100_PERCENT"/>
  <property name="last-show-hidden" type="bool" value="true"/>
</channel>

-

Worm:

$ cat ~/ダウンロード/apps/worm-conf/worm-master/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml
:
<?xml version="1.0" encoding="UTF-8"?>

<channel name="thunar" version="1.0">
  <property name="last-view" type="string" value="ThunarIconView"/>
  <property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_100_PERCENT"/>
</channel>

-


8). 「~/.config/session/」フォルダの比較:

Xfce:

$ ls -1a ~/.config/session/
.
..

→フォルダは空なので、影響なし

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- -

14. 「Worm」のセッションのみで使う「ユーザ」(wubn) を作成する場合:

-

ログイン画面で、

まずは、「Worm」のセッションのみで使う「ユーザ」として、「wubn」を新規作成しました。

-

専用にすることで、悩まずに、単に、ダウンロードした「設定ファイル」を持ってこれます。

また、そのダウンロードした「設定ファイル」が使えるか試していないので、その「検証」が出来ます。

-

1). 「ユーザ」と「ホームディレクトリ」を作成:

$ sudo useradd -m wubn

→「wubn」はユーザ名です。ユーザ名は好みです。

「-m」はユーザの「ホームディレクトリ」を作成するオプションです

-

2). パスワードを設定:

$ sudo passwd wubn

→「wubn」はユーザ名です。作成したユーザ名にしてください。

-

3). sudoの設定:

$ sudo usermod -G wheel wubn

→「wubn」はユーザ名です。作成したユーザ名にしてください。

-

4). 「wheel」グループに所属するユーザが「sudo」を利用できるように設定を変更:

設定済みと思ったら、設定されていませんでした:

$ sudo visudo

似たような行が複数あるので、ペアのコメント行を確認してください:

## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL) ALL

↓ コメントを解除:

## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL

「%wheel」とすると、「wheel」グループを指します

-

5). 再起動:

画面右下の電源ボタンから、「再起動」

-

6). ログイン画面で、新しく作成した「wubn」にて、「Xfce」セッションでログイン:

-

7). デスクトップ画面が表示:

パネルの時計が「秒表示」に戻っています。

パネルの設定をやり直す必要があるみたい。

-

8). パネルの設定をやり直し:

パネルの設定を変更しても、どうせ「Worm」環境にするので、無意味かも。

  1. パネルの時計の変更:

  2. 「パネル」の設定:

-

9). 再起動:

$ reboot

-

10). 日本語入力もキーボードアイコンが表示されないので、使えません。

自動起動の設定が必要です。

-

11). 作業の続き:

本編の、「項番 2.」以降の作業と同じです。

  1. 「Worm」に必要な「設定ファイル」をダウンロード:

  2. ダウンロードした「設定ファイル」を修正:

  3. 「Worm」に必要な「パッケージ」をインストール:

→設定完了後、再起動

-

12). ログイン画面で、新しく作成した「wubn」を選び、「Worm」セッションでログイン

  1. 日本語入力:

  2. インストール済のアプリの確認:

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- --

15. 「Xfce」と「Worm」のどちらのセッションでも使う「ユーザ」(ubn2) を作成する場合:

-

現状の「ユーザ」に影響しないように、「ホームフォルダ」を分けるため、「Xfce」のセッションに新しい「ユーザ」を作成。

ホームフォルダは異なるので、今までの「Xfce」の設定ファイルをコピー。その後、「Worm」の設定で上書き:

-

ログイン画面で、「Xfce」と「Worm」のセッションを切り替えて使えるか、新しいユーザ「ubn2」を作成して試しました。

うまく動けば、新しい「ユーザ」を作ること無く、「設定を上書き」をするだけで済みます。

-

1). 「ユーザ」と「ホームディレクトリ」を作成:

$ sudo useradd -m ubn2

→「ubn2」はユーザ名です。ユーザ名は好みです。

「-m」はユーザのホームディレクトリを作成するオプションです

-

2). パスワードを設定:

$ sudo passwd ubn2

→「ubn2」はユーザ名です。作成したユーザ名にしてください。

-

3). sudo の設定:

$ sudo usermod -G wheel ubn2

→「ubn2」はユーザ名です。作成したユーザ名にしてください。

-

4). 「wheel」グループに所属するユーザーが「sudo」を利用できるように設定を変更

→設定済みでした:

$ sudo visudo

似たような行が複数あるので、ペアのコメント行に注意:

## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL) ALL

↓ コメントを解除:

## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL

「%wheel」とすると、「wheel」グループを指します

保存する時は、Ctrl + O

終了は、Ctrl + X

-

5). 再起動:

画面右下の電源ボタンから、「再起動」

-

6). ログイン画面で、新しく作成した「ubn2」を選び、「Xfce」セッションでログイン

-

7). デスクトップ画面が表示:

壁紙がデフォルトに戻っています。

パネルの設定をやり直す必要があるみたい。

-

8). 「ubn」の「設定ファイル」をコピー:

「ubn」では、日本語入力できるように設定済み。

$ mkdir -p ~/tmp

$ sudo cp -r /home/ubn/.config ~/tmp
$ sudo cp /home/ubn/.xprofile ~/tmp

-

9). 保存した「ubn」のディレクトリとファイルの所有者、所有者のグループを「ubn2」に変更:

$ sudo chown -R ubn2:ubn2 ~/tmp
$ ls -l ~/tmp/.config/
:
-rw-r--r-- 1 ubn2 ubn2  291  2月 10 09:28 EOS-greeter.conf
-rw-r--r-- 1 ubn2 ubn2  112  2月 10 09:28 QtProject.conf
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 Thunar
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 09:28 audacious
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 autostart
drwx------ 2 ubn2 ubn2 4096  2月 10 09:28 dconf
-rw-r--r-- 1 ubn2 ubn2   75  2月 10 09:28 eos-update-notifier.first_init
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 featherpad
drwx------ 2 ubn2 ubn2 4096  2月 10 09:28 gnome-games
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 gtk-3.0
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 gtk-4.0
drwx------ 3 ubn2 ubn2 4096  2月 10 09:28 ibus
-rw-r--r-- 1 ubn2 ubn2 2114  2月 10 09:28 kajonggrc
-rw------- 1 ubn2 ubn2  511  2月 10 09:28 kmahjonggrc
-rw------- 1 ubn2 ubn2  342  2月 10 09:28 kminesrc
-rw------- 1 ubn2 ubn2 1227  2月 10 09:28 kolourpaintrc
-rw------- 1 ubn2 ubn2  416  2月 10 09:28 kshisenrc
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 09:28 libreoffice
-rw------- 1 ubn2 ubn2 1206  2月 10 09:28 mimeapps.list
drwx------ 2 ubn2 ubn2 4096  2月 10 09:28 mozc
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 nano
drwx------ 2 ubn2 ubn2 4096  2月 10 09:28 pulse
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 qpdfview
-rw-r--r-- 1 ubn2 ubn2    0  2月 10 09:28 reflector-simple-free-params.txt
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 session
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 09:28 systemd
-rw------- 1 ubn2 ubn2  673  2月 10 09:28 user-dirs.dirs
-rw-r--r-- 1 ubn2 ubn2    5  2月 10 09:28 user-dirs.locale
-rw-r--r-- 1 ubn2 ubn2 2430  2月 10 09:28 welcome-own-cmds.conf
-rw-r--r-- 1 ubn2 ubn2   63  2月 10 09:28 welcome.conf
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 xed
drwxr-xr-x 7 ubn2 ubn2 4096  2月 10 09:28 xfce4
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 09:28 yay

-

$ ls -l ~/tmp/.xprofile
:
-rw-r--r-- 1 ubn2 ubn2 79  2月 10 20:59 /home/ubn2/tmp/.xprofile

-

10). 「ubn」の設定ファイルを「ubn2」に上書き:

Xfce」の設定ファイルを反映:

$ sudo cp -r ~/tmp/.config ~/
$ sudo cp ~/tmp/.xprofile ~/
$ ls -l ~/.config/
:
-rw-r--r-- 1 ubn2 ubn2  291  2月 10 10:35 EOS-greeter.conf
-rw-r--r-- 1 ubn2 ubn2  112  2月 10 10:35 QtProject.conf
drwxr-xr-x 2 ubn2 ubn2 4096  2月  2 16:33 Thunar
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 10:35 audacious
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 autostart
drwx------ 2 ubn2 ubn2 4096  2月 10 08:47 dconf
-rw-r--r-- 1 ubn2 ubn2   75  2月 10 10:35 eos-update-notifier.first_init
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 featherpad
drwx------ 2 ubn2 ubn2 4096  2月 10 10:35 gnome-games
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 gtk-3.0
drwxr-xr-x 2 ubn2 ubn2 4096  2月  2 16:33 gtk-4.0
drwx------ 3 ubn2 ubn2 4096  2月 10 10:35 ibus
-rw-r--r-- 1 ubn2 ubn2 2114  2月 10 10:35 kajonggrc
-rw------- 1 ubn2 ubn2  511  2月 10 10:35 kmahjonggrc
-rw------- 1 ubn2 ubn2  342  2月 10 10:35 kminesrc
-rw------- 1 ubn2 ubn2 1227  2月 10 10:35 kolourpaintrc
-rw------- 1 ubn2 ubn2  416  2月 10 10:35 kshisenrc
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 10:35 libreoffice
-rw------- 1 ubn2 ubn2 1206  2月 10 10:35 mimeapps.list
drwx------ 2 ubn2 ubn2 4096  2月 10 10:35 mozc
drwxr-xr-x 2 ubn2 ubn2 4096  2月  2 16:33 nano
drwx------ 2 ubn2 ubn2 4096  2月 10 08:47 pulse
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 qpdfview
-rw-r--r-- 1 ubn2 ubn2    0  2月 10 10:35 reflector-simple-free-params.txt
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 session
drwxr-xr-x 3 ubn2 ubn2 4096  2月  2 16:32 systemd
-rw------- 1 ubn2 ubn2  673  2月 10 10:35 user-dirs.dirs
-rw-r--r-- 1 ubn2 ubn2    5  2月 10 10:35 user-dirs.locale
-rw-r--r-- 1 ubn2 ubn2 2430  2月 10 10:35 welcome-own-cmds.conf
-rw-r--r-- 1 ubn2 ubn2   63  2月 10 10:35 welcome.conf
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 xed

-

$ ls -l ~/.xprofile
:
-rw-r--r-- 1 root root 79  2月 10 21:06 /home/ubn2/.xprofile

→あれっ、root に変更されてます。

-

11). 再起動:

画面右下の電源ボタンで、再起動

-

12). ログイン画面で、新しく作成した「ubn2」を選び、「Xfce」セッションでログイン

-

13). デスクトップ画面が表示:

壁紙が「ubn」で設定した壁紙になりました。

「ユーザ」が違うのでホームフォルダは空です。

-

14). パネルにキーボードアイコンが表示されました。

「半角/全角」キーで「JA」と「A」の切り替えができます。

テキストエディタを起動。

「ひらがな」で「あ」に切り替わり、「無変換」で「A」に切り替わりました。

→日本語入力できました。

-


15). 「wubn」の設定ファイルをコピー:

$ mkdir -p ~/tmp-w
$ sudo cp -r /home/wubn/.config ~/tmp-w

-

16). 保存した「wubn」のディレクトリとファイルの所有者、所有者のグループを「ubn2」に変更:

$ sudo chown -R ubn2:ubn2 ~/tmp-w

-

17). 「wubn」の設定ファイルを「ubn2」に上書き:

$ sudo cp -r ~/tmp-w/.config ~/
$ ls -l ~/.config/
:
-rw-r--r-- 1 ubn2 ubn2  291  2月 10 21:32 EOS-greeter.conf
-rw-r--r-- 1 ubn2 ubn2  602  2月 10 21:32 QtProject.conf
drwxr-xr-x 2 ubn2 ubn2 4096  2月  2 16:33 Thunar
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 10:35 audacious
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 autostart
drwx------ 2 ubn2 ubn2 4096  2月 10 21:10 dconf
-rw-r--r-- 1 ubn2 ubn2   75  2月 10 21:32 eos-update-notifier.first_init
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 20:44 featherpad
drwx------ 2 ubn2 ubn2 4096  2月 10 10:35 gnome-games
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 20:59 gtk-3.0
drwxr-xr-x 2 ubn2 ubn2 4096  2月  2 16:33 gtk-4.0
drwx------ 3 ubn2 ubn2 4096  2月 10 10:35 ibus
drwxr-xr-x 2 root root 4096  2月 10 11:33 jgmenu
-rw-r--r-- 1 ubn2 ubn2 2114  2月 10 21:05 kajonggrc
-rw------- 1 ubn2 ubn2  511  2月 10 21:05 kmahjonggrc
-rw------- 1 ubn2 ubn2  342  2月 10 21:05 kminesrc
-rw------- 1 ubn2 ubn2 1227  2月 10 21:05 kolourpaintrc
-rw------- 1 ubn2 ubn2  416  2月 10 21:05 kshisenrc
drwxr-xr-x 3 ubn2 ubn2 4096  2月 10 10:35 libreoffice
-rw------- 1 ubn2 ubn2 1167  2月 10 21:32 mimeapps.list
drwx------ 2 ubn2 ubn2 4096  2月 10 21:11 mozc
drwxr-xr-x 2 ubn2 ubn2 4096  2月  2 16:33 nano
drwxr-xr-x 2 root root 4096  2月 10 11:33 neofetch
drwx------ 2 ubn2 ubn2 4096  2月 10 08:47 pulse
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 qpdfview
-rw-r--r-- 1 ubn2 ubn2    0  2月 10 21:32 reflector-simple-free-params.txt
drwxr-xr-x 2 root root 4096  2月 10 11:33 rofi
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 session
drwxr-xr-x 2 root root 4096  2月 10 11:33 sxhkd
drwxr-xr-x 3 ubn2 ubn2 4096  2月  2 16:32 systemd
drwxr-xr-x 2 root root 4096  2月 10 11:33 tint2
-rw------- 1 ubn2 ubn2  673  2月 10 21:32 user-dirs.dirs
-rw-r--r-- 1 ubn2 ubn2    5  2月 10 21:32 user-dirs.locale
-rw-r--r-- 1 ubn2 ubn2 2430  2月 10 21:05 welcome-own-cmds.conf
-rw-r--r-- 1 ubn2 ubn2   63  2月 10 21:05 welcome.conf
drwxr-xr-x 3 root root 4096  2月 10 11:33 worm
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 xed
drwxr-xr-x 7 ubn2 ubn2 4096  2月 10 10:35 xfce4
drwxr-xr-x 2 ubn2 ubn2 4096  2月 10 10:35 yay

-

18). このままでもいいけど、ディレクトリとファイルの所有者、所有者のグループを「ubn2」に変更:

$ sudo chown -R ubn2:ubn2 ~/.config

-

$ sudo chown -R ubn2:ubn2 ~/.xprofile
$ ls -l ~/.xprofile
-rw-r--r-- 1 ubn2 ubn2 79  2月 10 21:06 /home/ubn2/.xprofile

-

ちなみに、下記のファイルはコピーせず、「ubn」の設定ファイルのままにしました:
~/ダウンロード/apps/worm-conf/worm-master/.Xresources
~/ダウンロード/apps/worm-conf/worm-master/.dmrc

-

$ ls -FA
:
.ICEauthority  .bashrc   .gnupg/               tmp/           ビデオ/
.Xauthority    .cache/   .local/               tmp-w/         音楽/
.Xresources*   .config/  .mozilla/             ダウンロード/  画像/
.bash_history  .dmrc     .xprofile             テンプレート/  公開/
.bash_logout   .face*    .xsession-errors      デスクトップ/
.bash_profile  .fehbg*   .xsession-errors.old  ドキュメント/

-

19). 再起動:

$ reboot

-

20). ログイン画面で、新しく作成した「ubn2」を選び、「Worm」セッションでログイン

-

21). デスクトップ画面が表示:

壁紙が「ubn」で設定した壁紙になりました。

「ユーザ」が違うのでホームフォルダは空です。

-

22). ログアウトで、解像度が「自動調整」され、画面が広がった「ログイン画面」が表示されました。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- ---

16. 参考: 日本語入力のデバッグ情報について:

-

Mozc に(コンパイラ関連の)不具合が残っている対応か、今のところ、デバッグ用の情報が表示されます。

通常は見れません。ラッキーです。

-

参考: 日本語入力の設定1:

$ cat /home/ubn/.config/mozc/ibus_config.textproto
# `ibus write-cache; ibus restart` might be necessary to apply changes.
engines {
  name : "mozc-jp"
  longname : "Mozc"
  layout : "default"
  layout_variant : ""
  layout_option : ""
  rank : 80
  symbol : "&#x3042;"
}
engines {
  name : "mozc-on"
  longname : "Mozc:&#x3042"
  layout : "default"
  layout_variant : ""
  layout_option : ""
  rank : 99
  symbol : "&#x3042;"
  composition_mode : "HIRAGANA"
}
engines {
  name : "mozc-off"
  longname : "Mozc:A_"
  layout : "default"
  layout_variant : ""
  layout_option : ""
  rank : 99
  symbol : "A"
  composition_mode : "DIRECT"
}
active_on_launch: False

→上記だと、設定に無駄な部分が残っていますが、こちらはすでに余計な部分は設定画面で削除済みです。

ホストOS の Xubuntu の内容を参考に、書き換えました。

-

参考: 日本語入力の設定1: (Xubuntu の場合)

$ cat /home/ubn/.config/mozc/ibus_config.textproto
engines {
  name : "mozc-jp"
  longname : "Mozc"
  layout : "default"
}

→こちらの内容に書き換えましたが、効果があるかは不明。書き換えたら再起動が必要みたい。

-

参考: 日本語入力の設定2:

下記はキーマップ テーブルのコピーで、編集しても機能しません。

下記のようなテキストファイルで設定が有効であれば、設定の使い回しが楽になるのですが、惜しいですね。

-

個人的に行った、設定を確認するには便利:

-

個人的な設定: 予期しない動作をしないように、できるだけ他の「IME On」と「IME Off」割当ては削除:

  • IME On は、「Hiragana」だけに割当て。
  • IME Off は、「Eisu」と「Muhenkan」のみに割当て。
     
  • IME On/Off 切り替えが「Eisu や「HankakuZenkaku」でされないように削除。
    →「HankakuZenkaku」は、入力メソッド on/off 専用にしています。

-

$ cat /home/ubn/.config/mozc/keymap.tsv
# This is a copy of keymap table for debugging.
# Nothing happens when you edit this file manually.
status  key command
Conversion  Backspace   Cancel
Composition Backspace   Backspace
Precomposition  Backspace   Revert
Composition Ctrl a  MoveCursorToBeginning
Conversion  Ctrl a  SegmentFocusFirst
Conversion  Ctrl Backspace  Cancel
Precomposition  Ctrl Backspace  Undo
Composition Ctrl Backspace  Backspace
Composition Ctrl d  MoveCursorRight
Conversion  Ctrl d  SegmentFocusRight
Prediction  Ctrl Delete DeleteSelectedCandidate
Composition Ctrl Down   MoveCursorToEnd
Conversion  Ctrl Down   CommitOnlyFirstSegment
Composition Ctrl e  MoveCursorToBeginning
Conversion  Ctrl e  ConvertPrev
Composition Ctrl Enter  Commit
Conversion  Ctrl Enter  Commit
Composition Ctrl f  MoveCursorToEnd
Conversion  Ctrl f  SegmentFocusLast
Conversion  Ctrl g  Cancel
Composition Ctrl g  Delete
Conversion  Ctrl h  Cancel
Composition Ctrl h  Backspace
Composition Ctrl i  ConvertToFullKatakana
Conversion  Ctrl i  ConvertToFullKatakana
Composition Ctrl k  MoveCursorLeft
Conversion  Ctrl k  SegmentWidthShrink
Composition Ctrl l  MoveCursorRight
Conversion  Ctrl l  SegmentWidthExpand
Composition Ctrl Left   MoveCursorToBeginning
Conversion  Ctrl Left   SegmentFocusFirst
Composition Ctrl m  Commit
Conversion  Ctrl m  Commit
Composition Ctrl n  MoveCursorToEnd
Conversion  Ctrl n  CommitOnlyFirstSegment
Composition Ctrl o  ConvertToHalfWidth
Conversion  Ctrl o  ConvertToHalfWidth
Composition Ctrl p  ConvertToFullAlphanumeric
Conversion  Ctrl p  ConvertToFullAlphanumeric
Composition Ctrl Right  MoveCursorToEnd
Conversion  Ctrl Right  SegmentFocusLast
Composition Ctrl s  MoveCursorLeft
Conversion  Ctrl s  SegmentFocusLeft
Precomposition  Ctrl Shift Space    InsertFullSpace
Composition Ctrl Shift Space    InsertFullSpace
Conversion  Ctrl Shift Space    InsertFullSpace
Composition Ctrl Space  InsertHalfSpace
Conversion  Ctrl Space  InsertHalfSpace
Composition Ctrl t  ConvertToHalfAlphanumeric
Conversion  Ctrl t  ConvertToHalfAlphanumeric
Composition Ctrl u  ConvertToHiragana
Conversion  Ctrl u  ConvertToHiragana
Composition Ctrl Up MoveCursorToBeginning
Conversion  Ctrl Up ConvertPrev
Composition Ctrl x  MoveCursorToEnd
Conversion  Ctrl x  ConvertNext
Composition Ctrl z  Cancel
Conversion  Ctrl z  Cancel
Conversion  Delete  Cancel
Composition Delete  Delete
Composition Down    MoveCursorToEnd
Conversion  Down    ConvertNext
Suggestion  Down    PredictAndConvert
Precomposition  Eisu    IMEOff            ←(注目)
Composition Eisu    IMEOff                ←(注目)
Conversion  Eisu    IMEOff                ←(注目)
Composition End MoveCursorToEnd
Conversion  End SegmentFocusLast
Composition Enter   Commit
Conversion  Enter   Commit
Composition ESC Cancel
Conversion  ESC Cancel
Composition F10 ConvertToHalfAlphanumeric
Conversion  F10 ConvertToHalfAlphanumeric
Composition F2  ConvertWithoutHistory
Composition F6  ConvertToHiragana
Conversion  F6  ConvertToHiragana
Composition F7  ConvertToFullKatakana
Conversion  F7  ConvertToFullKatakana
Composition F8  ConvertToHalfWidth
Conversion  F8  ConvertToHalfWidth
Composition F9  ConvertToFullAlphanumeric
Conversion  F9  ConvertToFullAlphanumeric
DirectInput Hiragana    IMEOn              ←(注目)
Precomposition  Hiragana    IMEOn          ←(注目)
Composition Hiragana    IMEOn              ←(注目)
Conversion  Hiragana    IMEOn              ←(注目)
Composition Home    MoveCursorToBeginning
Conversion  Home    SegmentFocusFirst
Composition Left    MoveCursorLeft
Conversion  Left    SegmentFocusLeft
Precomposition  Muhenkan    IMEOff         ←(注目)
Composition Muhenkan    IMEOff             ←(注目)
Conversion  Muhenkan    IMEOff             ←(注目)
Conversion  PageDown    ConvertNextPage
Conversion  PageUp  ConvertPrevPage
Composition Right   MoveCursorRight
Conversion  Right   SegmentFocusRight
Conversion  Shift Backspace Cancel
Composition Shift Backspace Backspace
Conversion  Shift Down  ConvertNextPage
Suggestion  Shift Enter CommitFirstSuggestion
Composition Shift ESC   Cancel
Conversion  Shift ESC   Cancel
Conversion  Shift Henkan    ConvertPrev
Composition Shift Left  MoveCursorLeft
Conversion  Shift Left  SegmentWidthShrink
Precomposition  Shift Muhenkan  ToggleAlphanumericMode
Composition Shift Muhenkan  ConvertToFullAlphanumeric
Conversion  Shift Muhenkan  ConvertToFullAlphanumeric
Composition Shift Right MoveCursorRight
Conversion  Shift Right SegmentWidthExpand
Conversion  Shift Space ConvertPrev
Precomposition  Shift Space InsertAlternateSpace
Composition Shift Space Convert
Conversion  Shift Tab   ConvertPrev
Conversion  Shift Up    ConvertPrevPage
Precomposition  Space   InsertSpace
Conversion  Space   ConvertNext
Composition Space   Convert
Composition Tab PredictAndConvert
Conversion  Tab PredictAndConvert
Conversion  Up  ConvertPrev
Composition VirtualEnter    Commit
Conversion  VirtualEnter    CommitOnlyFirstSegment
Composition VirtualLeft MoveCursorLeft
Conversion  VirtualLeft SegmentWidthShrink
Composition VirtualRight    MoveCursorRight
Conversion  VirtualRight    SegmentWidthExpand
Composition ASCII   InsertCharacter     ←(key 項目なし)
Composition Kanji   IMEOff              ←(key 項目なし)
Composition OFF IMEOff                  ←(key 項目なし)
Composition ON  IMEOn                   ←(key 項目なし)
Conversion  F1  ReportBug               ←(デバッグ用)
Conversion  F3  ReportBug               ←(デバッグ用)
Conversion  Kanji   IMEOff              ←(key 項目なし)
Conversion  OFF IMEOff                  ←(key 項目なし)
Conversion  ON  IMEOn                   ←(key 項目なし)
DirectInput Kanji   IMEOn               ←(key 項目なし)
DirectInput ON  IMEOn                   ←(key 項目なし)
Precomposition  ASCII   InsertCharacter ←(key 項目なし)
Precomposition  Kanji   IMEOff          ←(key 項目なし)
Precomposition  OFF IMEOff              ←(key 項目なし)
Precomposition  ON  IMEOn               ←(key 項目なし)

→たぶん、(key 項目なし)は、接続するキーボードによると思われます。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- ----

17. 参考: 「Worm」の「設定」ファイルで使う、「wormc」コマンドについて:

-

「/usr/share/doc/worm/WORMC.md」からの抜粋(和訳):

-

wormc」のドキュメント:

「wormc」は、Worm ウィンドウ マネージャのプロセス間通信システムとやり取りするための主要な方法を提供します。また、Worm 用に独自の IPC クライアントを作成したいと考えている人々の参照点としても役立ちます。

-

「wormc」で使われる基本的な形式:

$ wormc 「コマンド1」「パラメータ…」「コマンド2」「パラメータ…」

コマンドには、任意の数のパラメーターを含めることができます。理論的には、これらのパラメータはすべてパーサーを介して実行されるわけではありませんが、実際には現在実行されています。これは実装の詳細であり、エッジ ケースですが、すぐに修正される予定です。

-

数値は常に 10 進数で、例外はありません。色も普通の 10 進数です。

例えば、以下は無効です:

$ wormc frame-pixel #ff00ffff

代わりに、posix シェルで「$((16#ff00ffff))」を使用して、シェルに展開させることもできます。
読みやすいので推奨され、この記事でも使われています。 fishでは「(math ff00ffff)」です。

始める前に、最後に X11 カラーに関する注意:

3 バイト形式の RRGGBB はほとんどの場合に機能しますが、一部のコンポジターは 4 バイト形式 AARRGGBB を想定していることが確認されています。

そのため、ドキュメントではすべてのデフォルト値に「AARRGGBB」形式を使用しており、同じようにすることをお勧めします。ただし、コンポジターを使用していない場合は、問題になる可能性はほとんどありません。

-

AARRGGBB 形式:

RGB 色の上位ビットにアルファ値 (透過性) がついているこ とを意味します。アルファ値 0 は完全に不透明色であることを意味します。

-

コマンドの一覧:

-

border-active-pixel(uint形式の値)

現在アクティブなクライアントの境界線の色を設定します:

例:「wormc border-active-pixel $((16#ff00ffff))

-

border-inactive-pixel(uint形式の値)

非アクティブなすべてのクライアントの境界線の色を設定します:

例:「wormc border-inactive-pixel $((16#ff000000))

-

border-width(uint形式の値)

アクティブかどうかに関係なく、すべてのクライアントの境界線の幅を設定します:

例:「wormc border-width 5

-

frame-active-pixel(uint形式の値)

アクティブ ウィンドウのフレーム (タイトル バー) の色を設定します:

例:「wormc frame-active-pixel $((16#ff123456))

-

frame-inactive-pixel(uint形式の値)

非アクティブなすべてのウィンドウのフレーム (タイトルバー) の色を設定します:

例:「wormc frame-inactive-pixel $((16#ff222222))

-

frame-height(uint形式の値)

アクティブかどうかに関係なく、すべてのクライアントのフレーム/タイトルバーの高さを設定します:

例:「wormc frame-height 20

-

text-active-pixel(uint形式の値)

アクティブなウィンドウのタイトルバー/フレームに描画されるテキストの色を設定します:

例:「wormc text-pixel $((16#ffffffff))

-

text-inactive-pixel(uint形式の値)

アクティブでないウィンドウのタイトルバー/フレームに描画される「テキストの色」を設定します:

例:「wormc text-pixel $((16#ff000000))

-

gaps(uint形式の値)

「ギャップ」を指定した量に設定します。

タイリング モードの場合、この距離はウィンドウの内側部分の間で確保されます。 外側のストラットを参照してください。

例:「wormc gaps 5

-

text-font(文字列)

クライアントのタイトルバーのテキストのフォントを設定します。

指定された文字列は、有効な XFT 形式(Adobe Form Designer 5.0 Format)である必要があります。

適切なドキュメントは他の場所で見つけることができますが、「FontName または「FontName:size=N」を実行すると、ほとんどのケースをカバーできます。しかし、アンチエイリアシングを無効にするなど、XFT ではさらに多くのことを実行できます:

例:「wormc text-font Terminus:size=8

-

text-offset(xサイズのuint形式の値, yサイズのuint形式の値)

タイトルバーのテキストのオフセットを指定します。

デフォルトでは、テキストは非表示になる (0,0) に配置されます。

フォント サイズに基づいて、Y 値をより高い値に設定する必要があります。 将来、この Y オフセットはもちろん自動計算されます。

例:「wormc text-offset 10 15

-

kill-client(ウィンドウID)

XKillClient を使用して、提供された「ウィンドウID」を持つクライアントを強制的に強制終了します:

例:「wormc kill-client 1234567890

-

kill-active-client()

kill-client と同じですが、フォーカスされたウィンドウを強制終了します:

例:「wormc kill-active-client

-

close-client(ウィンドウID)

ICCCM(X11 クライアント間通信規約マニュアル)で規定された「ウィンドウID」に「WM_DELETE_WINDOW」メッセージを適切に送信します:

例:「wormc close-client 1234567890

-

close-active-client()

close-client と同じですが、フォーカスのあるウィンドウを閉じます:

例:「wormc close-active-client

-

switch-tag(1〜9 の値)

他のすべてのタグをクリアし、特定のタグを有効にします:

例:「wormc switch-tag 5

-

layout(文字列)

レイアウトを変更します。

フローティングの場合は「floating」、タイリングの場合は「tiling」、それ以外の場合は wormc が終了します:

例:

  • wormc layout floating

  • wormc layout tiling

-

struts(上のuint形式の値, 下のuint形式の値, 左のuint形式の値, 右のuint形式の値)

「外側マージン」とも呼ばれるストラットを設定します。

これらは、ウィンドウを最大化するとき (現在は実装されていません。) およびタイリング中に使用されます。

例:「wormc struts 10 50 10 10

-

move-tag(タグ番号, ウィンドウID)

指定されたウィンドウのタグ番号をクリアし、指定されたタグをオンにします:

例:「wormc move-tag 5 123456789

-

move-active-tag(タグ番号)

move-tag と同様ですが、フォーカスされたウィンドウを使います。

フォーカスされたウィンドウのタグ番号をクリアし、指定されたタグをオンにします:

例:「wormc move-active-tag 5

-

master(ウィンドウID)

「タイリング」レイアウトで、現在のワークスペースのマスターを特定の「ウィンドウID」に設定します:

例:「wormc master 123456789

-

master-active()

master 」と同様ですが、アクティブなクライアントを使います:

例:「wormc master-active

-

float(ウィンドウID)

「ウィンドウID」によって指定されたクライアントを「フローティング」モードに変更します。

「タイリング」 レイアウトのときは、これは指定されたウィンドウがタイル化されるべきではないことを示します。

例:「wormc float 1234567890

-

float-active()

float と同様ですが、アクティブなクライアントを「フローティング」モードに変更します:

例:「wormc float-active

-

maximize-client(ウィンドウID)

指定されたウィンドウを「最大化」します:

例:「wormc maximize-client 132123

-

maximize-active-client()

maximize-client」と同じで、現在フォーカスされている / ホバーされている / 選択されているウィンドウを「最大化」します:

例:「wormc maximize-active-client

-

frame-left(文字列)

ウィンドウ枠の 「左側」部品 を配置します。

部品 は、コンマで区切った一覧として記述します:

  • T : ウィンドウ タイトル
  • C : 「閉じる」ボタン
  • M : 「最大化」ボタン
  • I : 「アイコン化/最小化」ボタン

例:「wormc frame-left 'T;C;M'

-

frame-center(文字列)

frame-left と同じ機能ですが、ウィンドウ枠の 「中央」部品 を配置します。

-

frame-right(文字列)

frame-left と同じ機能ですが、ウィンドウ枠の 「右側」部品 を配置します。

-

button-size(int形式の値)

すべてのウィンドウ ボタンのサイズ (幅と高さの両方)を指定。

ウィンドウ ボタンは必ずしも完全な正方形である必要はありません。より大きな寸法を使用することができ、ウィンドウの残りの部分はレンダリングされません。

例:「wormc button-size 14

-

button-offset(x, y)

タイトルバーの「M、C」のボタンを置く位置を、 x 位置と y 位置のオフセットで指定。

例:「wormc button-offset 10 10

-

root-menu(文字列)

ルート メニューへのパスを設定します。

このファイルが有効な場合、ルート ウィンドウを右クリックすると実行されます (実行可能ファイルと見なされます)。

例:「wormc root-menu ~/worm/examples/jgmenu_run

-

decoration-disable(文字列)

「文字列」で指定された正規表現に一致するクラスを持つ、すべてのウィンドウの装飾を無効にします。

例:「wormc decoration-disable '(?i).*firefox.*'

注: 使用する正規表現の形式は、「nim-regex ドキュメント ページ 」を参照。

-

{close,minimize,maximize}-path (文字列)

X-active-path、X-inactive-path、X-active-hovered-path、および X-inactive-hovered-path を設定します。

ここで、X は close、minimize、または maximum です。

古いバージョンの「Worm」との互換性と信頼性のためのエイリアスです。

-

{close,minimize,maximize}-active-path (文字列)

ホバーされていない場合にのみ、アクティブなウィンドウの適切なボタンのパスを設定します。

-

{close,minimize,maximize}-active-hovered-path (文字列)

ホバーされたときに、アクティブなウィンドウのみの適切なボタンのパスを設定します。

-

{close,minimize,maximize}-inactive-path (文字列)

ホバーされていない場合にのみ、非アクティブなウィンドウの適切なボタンのパスを設定します。

-

{close,minimize,maximize}-inactive-hovered-path (文字列)

ホバーされたときに、非アクティブなウィンドウのみの適切なボタンのパスを設定します。

-

modifier(uint32形式の値)

修飾子 (X11/X.h などで定義) を受け取り、それをウィンドウの移動/サイズ変更のデフォルトとして設定します。

例:

  1 << 3 = Mod1Mask = Alt           = 8  
  1 << 6 = Mod4Mask = Super/Mod/Win = 64

-

focus-mode(int形式の値)

フォーカスモードを下記の数字で指定します:

  • 1 : Windows でのフォーカスで、クリックするとフォーカスします。

  • 2: 従来の X11 でのフォーカスで、マウスを持って行くとフォーカスします。

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- -----

18. 参考: 「EndeavourOS」(Worm) のディスプレイマネージャ「lxdm」について:

-

確認だけなので、作業は要りません。

-

「EndeavourOS」(Worm) の「ログイン」画面の表示に使われている「ディスプレイマネージャ」は、

LXDE デスクトップ環境で主に使われている)「lxdm」でした:

-

参考:

Wiki LXDM

「lxdm」は、LXDE デスクトップ環境のためにつくられた軽量ディスプレイマネージャです。

-


1). 「EndeavourOS」(Worm) にインストールされている「lxdm」パッケージを確認:

$ paru -Ss lxdm
endeavouros/eos-lxdm-gtk3 0.5.3-5 [0B 354.25KiB] [インストール済み]
    Lightweight X11 Display Manager for EndeavourOS
community/lxdm 0.5.3-7 [105.85KiB 352.21KiB] (lxde)
    Lightweight X11 Display Manager
community/lxdm-gtk3 0.5.3-7 [106.21KiB 356.21KiB] (lxde-gtk3)
    Lightweight X11 Display Manager (GTK+ 3 version)

-

→「EndeavourOS」用の「lxdm」(eos-lxdm-gtk3) がインストールされていました:

ちなみに、残りの 2つとは(同じ機能で)衝突するので、共存できません。

-


2).「EndeavourOS」(Worm) で「lxdm」を検索してみる:

$ sudo find / -name lxdm
:
/etc/lxdm
/etc/pam.d/lxdm
/usr/share/lxdm
/usr/bin/lxdm
/usr/lib/lxdm
/var/lib/lxdm
/run/lxdm

-

$ ls -1 /etc/lxdm/
LoginReady
PostLogin
PostLogout
PreLogin
PreReboot
PreShutdown
Xsession
lxdm.conf

-

$ cat /etc/pam.d/lxdm
:
#%PAM-1.0
auth        include     system-login
-auth       optional    pam_gnome_keyring.so
account     include     system-login
password    include     system-login
session     include     system-login
-session    optional    pam_gnome_keyring.so auto_start

-

$ ls -1 /usr/share/lxdm/
:
config.ui
lxdm.glade
themes

-


3). 自動実行ファイルについて、wiki に記述された情報:

-

(1). システムで共通な自動実行ファイルは、「/etc/xdg/lxsession/LXDE/autostart」に配置:

「EndeavourOS」(Worm) で確認:

$ ls /etc/xdg/lxsession/LXDE/autostart
:
ls: '/etc/xdg/lxsession/LXDE/autostart' にアクセスできません: そのようなファイルやディレクトリはありません

-

(2). ローカルの自動実行ファイルは、「~/.config/lxsession/LXDE/autostart」に配置:

「EndeavourOS」(Worm) で確認:

$ ls ~/.config/lxsession/LXDE/autostart
:
ls: '/home/ubn/.config/lxsession/LXDE/autostart' にアクセスできません: そのようなファイルやディレクトリはありません

-

(3).「EndeavourOS」(Worm) で「autostart」フォルダを検索:
$ sudo find / -name autostart
:
/etc/xdg/autostart
/usr/share/doc/sxhkd/examples/notification/autostart
/usr/share/gdm/greeter/autostart
/usr/share/gdm/autostart

-

(4).下記は「gdm」用(つまり、GNOME 用)です:
$ ls /usr/share/gdm/autostart
LoginWindow

$ ls /usr/share/gdm/autostart/LoginWindow/
spice-vdagent.desktop

$ ls /usr/share/gdm/greeter/autostart/
spice-vdagent.desktop       ←(spice-vdagent のインストールで追加)

-

(5).「/etc/xdg/autostart/」のファイルを確認:
$ ls /etc/xdg/autostart/
:
at-spi-dbus-bus.desktop
eos-update-notifier.desktop
org.gnome.SettingsDaemon.DiskUtilityNotify.desktop
picom.desktop
spice-vdagent.desktop       ←(spice-vdagent のインストールで追加)
user-dirs-update-gtk.desktop
wallpaper-once.desktop
welcome.desktop
xapp-sn-watcher.desktop

-

(6).「spice-vdagent.desktop」の内容を確認:
$ cat /etc/xdg/autostart/spice-vdagent.desktop
:
[Desktop Entry]
Name=Spice vdagent
Comment=Agent for Spice guests
Exec=/usr/bin/spice-vdagent
Terminal=false
Type=Application
Categories=
X-GNOME-Autostart-Phase=WindowManager
NoDisplay=true

-


4). 上記の「/etc/xdg/autostart/」にある「.desktop」ファイルが、「lxdm」で使われるか確認:

→ログインすると、自動実行されるかの確認です。

-

(1). 起動が判断しやすいように、「xterm.desktop」を追加:
$ sudo cp /usr/share/applications/xterm.desktop /etc/xdg/autostart/

-

(2). 追加されたか確認:
$ ls /etc/xdg/autostart/
:
at-spi-dbus-bus.desktop
eos-update-notifier.desktop
org.gnome.SettingsDaemon.DiskUtilityNotify.desktop
picom.desktop
spice-vdagent.desktop
user-dirs-update-gtk.desktop
wallpaper-once.desktop
welcome.desktop
xapp-sn-watcher.desktop
xterm.desktop       ←(自動起動されるか確認するために追加)

-

(3). 再起動
$ reboot

-

(4). ログインで、デスクトップ画面表示:

→何も起こりません(xterm が起動されません)

-

(5). 「lxdm」だけでなく、「lightdm」に切り替えて確認:

-

切り替え操作が楽に(貼付け)できるように、デーモンを起動:
$ spice-vdagent
$

-

貼付けて、コマンドを実行:
$ sudo systemctl disable lxdm
[sudo] パスワード:
Removed "/etc/systemd/system/display-manager.service".
$ sudo systemctl enable lightdm
Created symlink /etc/systemd/system/display-manager.service → /usr/lib/systemd/system/lightdm.service.

-

再起動:
$ reboot

-

(6). ログイン画面が「lightdm」になりました:

→ログインしても、何も起こりません(xterm が起動されません)

-

(7).「/etc/xdg/autostart/」にある「.desktop」ファイルは、「lxdm」や「lightdm」では、無効みたい:

→上記のフォルダに置いても、ログインで自動起動されません

-

(8). 「lxdm」に戻しました:

-


5). 「lxdm」でログアウトしたときの状況(ログ)を再確認:

-

(1). 「spice-vdagent」を起動:
$ spice-vdagent
$

→貼付けが出来るようになりました。

-

(2). デーモンが起動されたか確認:
$ systemctl status spice-vdagent
:
Unit spice-vdagent.service could not be found.

→ユニット名(デーモン名、サービス名)はアプリ名と違いました。「d」付きです。

-

(3). 再確認:
$ systemctl status spice-vdagentd
:
● spice-vdagentd.service - Agent daemon for Spice guests
     Loaded: loaded (/usr/lib/systemd/system/spice-vdagentd.service; indirect; preset: disabled)
     Active: active (running) since Mon 2023-02-13 01:13:33 JST; 5min ago
TriggeredBy: ● spice-vdagentd.socket
    Process: 1375 ExecStart=/usr/bin/spice-vdagentd $SPICE_VDAGENTD_EXTRA_ARGS (code=exited, status=0/SUCCE>
   Main PID: 1377 (spice-vdagentd)
      Tasks: 2 (limit: 4681)
     Memory: 924.0K
        CPU: 69ms
     CGroup: /system.slice/spice-vdagentd.service
             └─1377 /usr/bin/spice-vdagentd

 2月 13 01:13:33 ubn-box systemd[1]: Starting Agent daemon for Spice guests...
 2月 13 01:13:33 ubn-box systemd[1]: spice-vdagentd.service: Can't open PID file /run/spice-vdagentd/spice->
 2月 13 01:13:33 ubn-box systemd[1]: Started Agent daemon for Spice guests.
 2月 13 01:18:51 ubn-box spice-vdagentd[1377]: opening vdagent virtio channel  ←(貼付け動作)
 2月 13 01:18:51 ubn-box spice-vdagentd[1377]: Set max clipboard: 104857600
 2月 13 01:18:51 ubn-box spice-vdagentd[1377]: Set max clipboard: 104857600

「q」で表示終了

-

表示されているメッセージ履歴は、クリップボードのコピーに成功

-

(4). ログアウト

→「ログイン画面」表示

「ログイン画面」は大きくなっていません。(解像度の自動調整されず)

-

(5). ログイン

→「デスクトップ画面」表示

-

(6). 確認:
$ systemctl status spice-vdagentd
:
    (省略)
 2月 13 00:56:47 ubn-box systemd[1]: Starting Agent daemon for Spice guests...
 2月 13 00:56:47 ubn-box systemd[1]: Started Agent daemon for Spice guests.
 2月 13 00:56:47 ubn-box spice-vdagentd[726]: opening vdagent virtio channel  ←(貼付け動作)
 2月 13 00:56:47 ubn-box spice-vdagentd[726]: Set max clipboard: 104857600
 2月 13 00:56:47 ubn-box spice-vdagentd[726]: Set max clipboard: 104857600
 2月 13 00:59:20 ubn-box spice-vdagentd[726]: closed vdagent virtio channel   ←(ログアウト操作)

→メッセージ履歴では、ログアウトで「closed vdagent virtio channel」が発生:

-

「lxdm」で、ログアウトすると、「spice-vdagentd」デーモンで「closed vdagent virtio channel」になります。

-


6). 「lxdm」と「lightdm」との違い(まとめ):

-

(1).「lxdm」と「lightdm」の両方とも、「/etc/xdg/autostart」にあるデスクトップファイルを実行しません:

自動起動の指定は、「~/.config/worm/rc」または「~/.xprofile」を使います。

-

(2). 「spice-vdagent」の実行で、「spice-vdagentd」サービス(デーモン)が起動されます

→Boxes の機能である「クリップボードの共有」や「ファイル送信」が使えるようになります。

-

(3).「lxdm」で、ログアウトすると、「spice-vdagentd」デーモンで「closed vdagent virtio channel」になります。

例えば、ログアウトすると:

 2月 13 00:59:20 ubn-box spice-vdagentd[726]: closed vdagent virtio channel

「spice-vdagent」の機能のひとつは、ログアウト時の画面サイズで、解像度を広げる機能です。

「closed vdagent virtio channel」になったときに、うまく処理できれば、ログイン画面が広がりますが、失敗するようです。

-

(4).「lightdm」で、ログアウトすると、「spice-vdagentd」デーモンで「closed vdagent virtio channel」となっても、うまく処理され、ログアウト時の画面サイズに、ログイン画面が広がりました。

ログインで、自動起動ファイルに登録があれば、同じデーモン番号で、「クリップボードの共有」や「ファイル送信」が使えました。

-

(5).「lxdm」と「lightdm」との違いは:

→「ログアウト」時に「spice-vdagentd」デーモンが「closed vdagent virtio channel」になったときに、

解像度を広げる機能が正常に動くか、です。

-


7). 「lxdm」についての補足情報:

-

(1). LXDM は「XDMCP」をサポートしていません。使いたいときは「LightDM」があります。

XDMCP」(X Display Manager Control Protocol = リモートデスクトッププロトコル

→ネットワークに接続したワークステーションX11 端末など、X 互換のクライアントからデスクトップ環境にリモートでログインします。

-

(2).「lxdm」の設定ファイルが置かれたフォルダ:
$ ls -l /etc/lxdm/
:
-rwxr-xr-x 1 root root   64  1月 16 21:50 LoginReady
-rwxr-xr-x 1 root root   64  1月 16 21:50 PostLogin
-rwxr-xr-x 1 root root   64  1月 16 21:50 PostLogout
-rwxr-xr-x 1 root root   64  1月 16 21:50 PreLogin
-rwxr-xr-x 1 root root   64  1月 16 21:50 PreReboot
-rwxr-xr-x 1 root root   64  1月 16 21:50 PreShutdown
-rwxr-xr-x 1 root root 1556  1月 16 21:50 Xsession
-rw-r--r-- 1 root root 1247 12月  7 09:34 lxdm.conf     ←(「lxdm」の設定ファイル)

-

(3).「lxdm」の設定ファイル「lxdm.conf」:

「EndeavourOS」(Worm) の場合:

$ cat /etc/lxdm/lxdm.conf
[base]
## uncomment and set autologin username to enable autologin
# autologin=

## uncomment and set timeout to enable timeout autologin,
## the value should >=5
# timeout=10

## default session or desktop used when no systemwide config
#session=worm

## uncomment and set to set numlock on your keyboard
# numlock=0

## set this if you don't want to put xauth file at ~/.Xauthority
# xauth_path=/tmp

# not ask password for users who have empty password
# skip_password=1

## greeter used to welcome the user      ←(ログイン画面の greeter の指定)
greeter=/usr/lib/lxdm/lxdm-greeter-gtk

[server]
## arg used to start xserver, not fully function
arg=/usr/bin/X -background vt1
# uncomment this if you really want xserver listen to tcp
# tcp_listen=1
# uncoment this if you want reset the xserver after logou
# reset=1

[display]
## gtk theme used by greeter          ←(ログイン画面の greeter の gtk テーマ)
gtk_theme=Arc-Dark

## background of the greeter          ←(ログイン画面の背景画像)
bg=/usr/share/endeavouros/backgrounds/endeavouros-wallpaper.png

## if show bottom pane                ←(下のパネルを表示)
bottom_pane=1

## if show language select control    ←(パネルに言語選択を表示)
lang=1

## if show keyboard layout select control  ←(パネルにキーボード配列の選択を表示)
keyboard=1

## the theme of greeter               ←(ログイン画面の greeter のテーマを指定)
theme=endeavouros

[input]

[userlist]
## if disable the user list control at greeter
disable=0

## whitelist user
white=

## blacklist user
black=root

-

(4).「lxdm」のテーマが置かれている場所:

「EndeavourOS」(Worm) の場合:

$ ls /usr/share/lxdm/themes/
endeavouros
$ ls -1 /usr/share/lxdm/themes/endeavouros/
:
eos.png
greeter-gtk3.ui
greeter.ui
gtk.css
gtkrc
index.theme
lang.png          →「中」?のアイコン
nobody.png
session.png       →「EndeavourOS」のアイコン
shade.png         →「表示なし」のアイコン

-

(5). ログイン後、「lxdm」は以下のファイルを全て 、上から順番に読み込みます:
/etc/profile
~/.profile
/etc/xprofile
~/.xprofile

-

(6). 「~/.xprofile」に登録したら、自動起動できました:
$ xed ~/.xprofile
:
spice-vdagent

自動起動できますが、起動するタイミングがデスクトップ表示後につき、解像度の自動調整は無効のままです。

デーモン起動のトリガー(socket →service)なので「&」は要りません。

「~/.config/worm/rc」に登録する代わりに使えましたが、管理上、登録する場所は統一するのが良さそう。

-

(7). 「lxdm」は、「~/.xinitrc」、「~/.bash_profile」は読み込まないので注意

-

(8). 「lxdm」は、「.Xresources」、「.Xkbmap」、「.Xmodmap」なども利用します

-

-


--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- ----- -

19. 参考: 「spice-vdagent」について

-

「spice-vdagent」は、「Boxes」の追加の機能かと思っていたら、違いました。

「spice-vdagent」を使っているアプリのひとつが「Boxes」でした。

例えば、Ubuntu の「Remmina」や「spice-client-gtk」などでも使われています。

-

参考:

リモートデスクトップのためのSPICEクライアントあれこれ

-

上記の記事の「spice-vdagentを利用して高機能化」の項目からの抜粋:

-

1).「spice-vdagent」を利用すると、

SPICE プロトコルを経由して次のような機能が使えます:
クリップボードの共有
クライアントウィンドウサイズに基づいた画面解像度の自動変更
マウスカーソルがクライアントウィンドウに奪われないモードの有効化

-

2).「spice-vdagent」を利用するためには、

ゲスト側に「spice-vdagent」パッケージをインストールする必要があります。

もうひとつ必要なのが、仮想マシン側の設定の変更です。SPICEクライアントとゲストOS上の「spice-vdagent」が通信できるよう、設定して起動し直します。 →(ホストOS も含めて再起動)

ゲストOS 上の「spice-vdagent」はこのデバイスを経由して、外のプログラム(たとえば SPICE クライアント)と通信します。

-

3).「spice-vdagent」が有効化されたら、

任意の文字列をローカル(ホストOS)からリモート(ゲストOS)に、
リモートからローカルにコピー&ペーストできます。

→(クリップボードの共有)機能

-

4). さらにローカル(ホストOS)のファイルマネージャから、

SPICE クライアント(ゲストOS のデスクトップ)上にドラッグ&ドロップすると
リモート(ゲストOS)の「ダウンロード」もしくは「ディスクトップディレクトリにコピーされます。

→(ファイルの送信)機能

-

5). クライアントのウィンドウに合わせて、

画面解像度を変更してくれます:

例えば、「Remmina」アプリなら、ウィンドウ左にある設定アイコンの「Resize guest to match window size」を、「spice-client-gtk」アプリなら、メニューの「Option」にある同様のメニューを選択しておくと、

クライアントのウィンドウに合わせて画面解像度を変更してくれます。

-

「Boxes」の場合は、設定するメニュー項目はありません。

画面を広げておき、ログアウト。画面が広がってログイン画面が表示されます。

ログインすると、広がったデスクトップ画面が使えます。

→(解像度の自動調整)機能

-

-


まとめ

前回は、公式版の「EndeavourOS」(Xfce) をインストールして、

今回は、その続きで「Worm」ウィンドウマネージャの追加を行いました。

-

ダウンロードした「Worm」の設定ファイルは、「Xfce」の設定と相反する重なりがありましたが、 上書きしても、「Xfce」と「Worm」のどちらも支障なく使えました。

もし、「EndeavourOS」(Xfce) をすでに本番で使っていたら、「項番 14. 」や「項番 15. 」みたいに、 新しい「ユーザ」を作成して、「Worm」の追加で支障が出ないか試すのが良いかも。

-

今回の(H160-3)の作業で判明したこと:

→「EndeavourOS」(Worm) で「Boxes」の機能(解像度の自動調整)が使えないのは、「lxdm」の影響でした:

-

解像度の自動調整は、ログアウト時の画面サイズを引き取って画面を広げる機能です。

「lxdm」の場合、ログアウトすると「spice-vdagent」デーモンにて「closed vdagent virtio channel」となりますが、

そのときに、その機能が失敗するようです。なので、画面が広がりません。

ディスプレイマネージャを「lightdm」に変更することで、解像度の自動調整ができました。

(変更のしかたはこちら

-

どちらにしても使い方しだい。解像度の自動調整が必要なければ、問題ありません。

-

-

-


-

-

    目次

-

「投稿の先頭 へ」

-

-


-

「この目次 の先頭へ」

「本編の目次 に戻る」

-