This service is available only in Japanese-language.
(dunfellにて) X11環境で matchboxからopenboxへの切り替え方法についてお願いします。 matchboxは1windowだったので、マルチウィンドで表示させたいが、最終目的です。
yakuhito
2023/4/17 (月) 10:37
1) レシピの存在場所を確認する openbox を openembedded layer index にでブランチdunfell でレシピの検索をかけますと、 https://layers.openembedded.org/layerindex/branch/dunfell/recipes/?q=ope... meta-oeに含まれていることが判ります。
2) レシピが含まれるレイヤーを取得する meta-oe のレイヤー情報を確認しますと、 https://layers.openembedded.org/layerindex/branch/dunfell/layer/meta-oe/ meta-oeから取得するように記載されているため、 git clone -b dunfell git://git.openembedded.org/meta-openembedded と、親レイヤーから取得します。
3) レイヤーを追加する bitbake-layers コマンドのサブコマンド add-layer を使って、meta-openembedded/meta-oe を conf/bblayers.conf に追加します。
4) openbox をimageに追加する yocto 及び openbox で検索を実行したところ、以下のスライドの15枚目にopenboxを追加したレシピの例が出ています。 https://elinux.org/images/a/a0/004-1325-SLIDES-surfing_on_an_interactive... QB_MEM の行までは、meta/recipes-graphics/images/core-image-x11.bb と同じ内容であり、IMAGE_INSTALL 変数への追加で、openboxが動作するイメージが生成可能で あると推測し、以下のイメージレシピを作成したところ、openboxウインドウマネージャー環境にて 動作することが確認できています。 ================================================================ 1 SUMMARY = "A very basic X11 image with a terminal and openbox" 2 3 IMAGE_FEATURES += "splash package-management x11-base" 4 5 LICENSE = "MIT" 6 7 inherit core-image features_check 8 9 REQUIRED_DISTRO_FEATURES = "x11" 10 11 QB_MEM = '${@bb.utils.contains("DISTRO_FEATURES", "opengl", "-m 512", "-m 256", d)}' 12 13 IMAGE_INSTALL += "openbox xterm " ================================================================
5) window managerのメニューの変更 root window上でマウス右クリックで表示されるメニューは /etc/xdg/openbox/menu.xml が設定ファイルとなっています。 展開されたソースツリー内の openbox-3.6.1/data/menu.xml がパッケージに含まれますので、メニューの構成を変更する場合は devtool modify openbox を実行して、menu.xml の変更を行い、 git add data/menu.xml git commit -m "変更内容" devtool finish openbox "保存先" で変更内容をbbappendとして生成することが可能です。
西川恵三
2023/4/25 (火) 13:52
アドバイス通りにしたつもりですが、openboxもinstallされてるようですが、matchboxが起動してしまいます。
2023/4/26 (水) 11:54
core-image-x11-base を使用されていますか?
core-image-x11-baseを使用した場合、packagegroup-core-x11-base が選択され、x-session-manager 機能としてmini-x-sessionが追加されています。 openboxを追加することで、実行時の依存で追加されるopenbox-core に含まれるopenbox-sessionもx-seesion-manager機能を提供しています。 mini-x-session-manger のALTERNATIVE_PRIORITY[xsession-manager]の値は50、openbox-sessionのALTERNATIVE_PRIORITY[xsession-manager]の値は100となっており、数値の大きいopenbox-sessionが使用されています。
yakuhito
2023/4/17 (月) 10:37
meta-openembedded/meta-oe を追加することで切替可能となります
1) レシピの存在場所を確認する
openbox を openembedded layer index にでブランチdunfell でレシピの検索をかけますと、
https://layers.openembedded.org/layerindex/branch/dunfell/recipes/?q=ope...
meta-oeに含まれていることが判ります。
2) レシピが含まれるレイヤーを取得する
meta-oe のレイヤー情報を確認しますと、
https://layers.openembedded.org/layerindex/branch/dunfell/layer/meta-oe/
meta-oeから取得するように記載されているため、
git clone -b dunfell git://git.openembedded.org/meta-openembedded
と、親レイヤーから取得します。
3) レイヤーを追加する
bitbake-layers コマンドのサブコマンド add-layer を使って、meta-openembedded/meta-oe を
conf/bblayers.conf に追加します。
4) openbox をimageに追加する
yocto 及び openbox で検索を実行したところ、以下のスライドの15枚目にopenboxを追加したレシピの例が出ています。
https://elinux.org/images/a/a0/004-1325-SLIDES-surfing_on_an_interactive...
QB_MEM の行までは、meta/recipes-graphics/images/core-image-x11.bb
と同じ内容であり、IMAGE_INSTALL 変数への追加で、openboxが動作するイメージが生成可能で
あると推測し、以下のイメージレシピを作成したところ、openboxウインドウマネージャー環境にて
動作することが確認できています。
================================================================
1 SUMMARY = "A very basic X11 image with a terminal and openbox"
2
3 IMAGE_FEATURES += "splash package-management x11-base"
4
5 LICENSE = "MIT"
6
7 inherit core-image features_check
8
9 REQUIRED_DISTRO_FEATURES = "x11"
10
11 QB_MEM = '${@bb.utils.contains("DISTRO_FEATURES", "opengl", "-m 512", "-m 256", d)}'
12
13 IMAGE_INSTALL += "openbox xterm "
================================================================
5) window managerのメニューの変更
root window上でマウス右クリックで表示されるメニューは
/etc/xdg/openbox/menu.xml
が設定ファイルとなっています。
展開されたソースツリー内の openbox-3.6.1/data/menu.xml
がパッケージに含まれますので、メニューの構成を変更する場合は
devtool modify openbox
を実行して、menu.xml の変更を行い、
git add data/menu.xml
git commit -m "変更内容"
devtool finish openbox "保存先"
で変更内容をbbappendとして生成することが可能です。
西川恵三
2023/4/25 (火) 13:52
matchboxが起動してしまう
アドバイス通りにしたつもりですが、openboxもinstallされてるようですが、matchboxが起動してしまいます。
yakuhito
2023/4/26 (水) 11:54
ベースとなるイメージは何を使用していますか?
core-image-x11-base を使用されていますか?
core-image-x11-baseを使用した場合、packagegroup-core-x11-base が選択され、x-session-manager 機能としてmini-x-sessionが追加されています。
openboxを追加することで、実行時の依存で追加されるopenbox-core に含まれるopenbox-sessionもx-seesion-manager機能を提供しています。
mini-x-session-manger のALTERNATIVE_PRIORITY[xsession-manager]の値は50、openbox-sessionのALTERNATIVE_PRIORITY[xsession-manager]の値は100となっており、数値の大きいopenbox-sessionが使用されています。