2020-11-02 08:06 AM
Hi, I'm trying to make a headless system using the STM32MP153 and I would like to disable all graphical layers in the standard distribution.
I'm using openstlinux-5.4-dunfell-mp1-20-06-24 (ECO V2 I believe)
I have made my-own distro layer and was able to bitbake st-image-core
( have added to my own_distro.conf file:
DISTRO_FEATURES_remove = " wayland "
DISTRO_FEATURES_remove = " x11 "
)
Next step is to remove the graphical layers starting with qt5
If I do a bitbake-layers show-layers I don't want to find meta-qt5 (or meta-gnome, meta-xfce)
Question: how do I do that?
BTW I'm using the STM32MP157C evaluation board to get my headless distro up and running.
2020-11-06 01:06 AM
Hi @RZ
I'm not sure to get your request .
st-image-core is a very basic image which already exclude the mention wayland, x111 or QT framework.
So even if layers are present in your distro .. they will not be part of generated image.
Olivier
2020-11-06 02:09 AM
Hello Olivier,
Maybe a bit of background to explain what I'm trying to do.
I'm not an expert in yocto and all the software stacks that are build on it. But I'm trying to be :) Best way to do that IMO is work with it. I also have a project that I need to get working.
So to understand what is going on I like to simplify things.
The most simple starting point is a core distribution that has just enough to support the st-image-core image (including SDK/developer distribution generation).
Adding layers is very well documented but removing stuff is not.
So I want to have my-own-core-distribution with which I can generate the st-image-core image without any distracting packages included (bitbake-layers show-layers). From that I can learn how it all works together and start adding layers to it or make my-own-image (again which is very well documented).
Since my project doesn't include any graphical UI I would like to start by removing all the graphical packages, to simplify my-own-code distribution.
Thank for your help.
2020-11-06 02:26 AM
Hi @RZ ,
For creating a new distro we provide this page :
https://wiki.st.com/stm32mpu/wiki/How_to_create_your_own_distribution
Does it help ?
Olivier
2020-11-06 02:53 AM
Hello Olivier,
That is exactly what I did.
After adding my-own-distro I do
>> DISTRO=openstlinux-my-own-distro MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh
>> bitbake st-image-core
works fine.
However if I then do
>> bitbake-layers show-layers
The meta-gnome, meta-qt5, meta-xfce show up. I don't want that. They shouldn't be in my distribution at all.
2020-11-06 05:21 AM
Hi @RZ
Did you try
DISTRO_FEATURES_remove = " opengl"
?
Olivier
2020-11-09 05:23 AM
Hello,
I found the answer, well almost.
Since I copied parts of the original distro when creating my-own I also copied a file "bblayers.conf.sample" and in that file I can remove the lines including gnome and xfce
BASELAYERS ?= " \
${OEROOT}/layers/meta-openembedded/meta-gnome \
${OEROOT}/layers/meta-openembedded/meta-xfce \
In that same file I can disable the line
# Qt5
ADDONSLAYERS += "${@'${OEROOT}/layers/meta-qt5' if os.path.isfile('${OEROOT}/layers/meta-qt5/conf/layer.conf') else ''}"
If I then delete the file bblayers.conf in the build/conf directory
(and run >> DISTRO=openstlinux-my-own-distro MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh)
it almost works
In the layet/meta-st-meta-st-openlinux/conf/layer.conf file I find a line
LAYERDEPENDS_st-openstlinux = "qt5-layer"
If I disable that line the command bitbake-layers show-layer doesn't show the gnome, xfce and qt5 layers anymore. mission accomplished.
There is only 1 question remaining.
Because I don't want to edit the layet/meta-st-meta-st-openlinux/conf/layer.conf file directly I wonder if there is an other way to override that LAYERDEPENDS variable in my-own distro?
EDIT: strictly speaking the st-openstlinux layer doesn't depend on the qt5-layer if I want a st-image-core image
2020-11-09 08:39 AM
Hi @RZ ,
In meta-st/scripts/envsetup.sh, bblayers.conf.sample is selected from $DISTRO (see get_templateconf() function).
So as you selected your DISTRO, you should load bblayers.conf.sample from your DISTRO instead of meta-st-openlinux ("openstlinux-weston")
When you mentionned "it almost works", could you please elaborate a bit more ?
I would cross-check the DISTRO value, and/or check if there is an error displayed when loading the DISTRO.
BR,
Christophe