reproducibility: move known non-repro list to layer.conf

The current include file that stores the known non-reproducible packages
is layer dependent and that forces the user of the layers to maintain
the list of the files (for example, see AB config[0]).

By moving the exclude list to each layer.conf and extending the common
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES variable, the known non-reproducible
packages will be automatically excluded for each layer used in the
reproducibility test without any special knowledge in the test
environment.

NB: the empty list for meta-initramfs was just removed not moved.

[0]: https://git.yoctoproject.org/yocto-autobuilder-helper/tree/config.json?id=7d8933e75bdf7fb821a25617cb2dcabf1f3f8700#n322

Suggested-by: Quentin Schulz <quentin.schulz@cherry.de>
Co-Developed-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
Signed-off-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Yoann Congal 2025-06-16 23:03:01 +02:00 committed by Khem Raj
parent 3b1cc7418f
commit bf400cd73f
No known key found for this signature in database
GPG Key ID: BB053355919D3314
19 changed files with 280 additions and 274 deletions

View File

@ -1,6 +0,0 @@
# List of known non-reproducible package of the meta-filesystems layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_FILESYSTEMS = " \
e2tools-ptest \
xfsprogs-doc \
"

View File

@ -20,3 +20,10 @@ LAYERSERIES_COMPAT_filesystems-layer = "walnascar whinlatter"
BBFILES_DYNAMIC += " \
meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
"
# List of known non-reproducible package of the meta-filesystems layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
e2tools-ptest \
xfsprogs-doc \
"

View File

@ -1,13 +0,0 @@
# List of known non-reproducible package of the meta-gnome layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_GNOME = " \
geary \
geary-dbg \
gegl-dev \
gimp \
gimp-dbg \
gnome-terminal-src \
grilo-src \
gtk-vnc-src \
ibus \
"

View File

@ -29,3 +29,17 @@ BBFILES_DYNAMIC += " \
virtualization-layer:${LAYERDIR}/dynamic-layers/meta-virtualization/*/*/*.bbappend \
security:${LAYERDIR}/dynamic-layers/meta-security/*/*/*.bb \
"
# List of known non-reproducible package of the meta-gnome layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
geary \
geary-dbg \
gegl-dev \
gimp \
gimp-dbg \
gnome-terminal-src \
grilo-src \
gtk-vnc-src \
ibus \
"

View File

@ -1,3 +0,0 @@
# List of known non-reproducible package of the meta-initramfs layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_INITRAMFS = ""

View File

@ -1,15 +0,0 @@
# List of known non-reproducible package of the meta-multimedia layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_MULTIMEDIA = " \
crossguid \
libcamera \
libcamera-dbg \
libcamera-src \
libgssdp-1.6-src \
libgupnp-1.6-src \
libsquish-staticdev \
oscam \
oscam-dbg \
oscam-src \
rtmpdump-staticdev \
"

View File

@ -32,3 +32,19 @@ LAYERVERSION_multimedia-layer = "1"
LAYERDEPENDS_multimedia-layer = "core openembedded-layer meta-python"
LAYERSERIES_COMPAT_multimedia-layer = "walnascar whinlatter"
# List of known non-reproducible package of the meta-multimedia layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
crossguid \
libcamera \
libcamera-dbg \
libcamera-src \
libgssdp-1.6-src \
libgupnp-1.6-src \
libsquish-staticdev \
oscam \
oscam-dbg \
oscam-src \
rtmpdump-staticdev \
"

View File

@ -1,40 +0,0 @@
# List of known non-reproducible package of the meta-networking layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_NETWORKING = " \
babeld \
babeld-dbg \
dhcp-relay-staticdev \
ettercap-src \
freediameter \
freeradius \
htpdate-doc \
libbearssl-staticdev \
libmosquitto1 \
libowfat-staticdev \
libruli-staticdev \
mosquitto \
ncftp \
ncp \
ncp-dbg \
ndisc6-dbg \
ndisc6-misc \
ndisc6-ndisc6 \
ndisc6-rdisc6 \
ndisc6-rdnssd \
ndisc6-rltraceroute6 \
netsniff-ng-doc \
ntopng \
ntopng-dbg \
ntpsec-src \
openl2tp \
opensaf \
phytool \
phytool-dbg \
postfix-cfg \
rp-pppoe \
traceroute \
traceroute-dbg \
udpcast-doc \
unbound-doc \
znc \
"

View File

@ -27,3 +27,44 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
BBFILES_DYNAMIC += " \
meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
"
# List of known non-reproducible package of the meta-networking layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
babeld \
babeld-dbg \
dhcp-relay-staticdev \
ettercap-src \
freediameter \
freeradius \
htpdate-doc \
libbearssl-staticdev \
libmosquitto1 \
libowfat-staticdev \
libruli-staticdev \
mosquitto \
ncftp \
ncp \
ncp-dbg \
ndisc6-dbg \
ndisc6-misc \
ndisc6-ndisc6 \
ndisc6-rdisc6 \
ndisc6-rdnssd \
ndisc6-rltraceroute6 \
netsniff-ng-doc \
ntopng \
ntopng-dbg \
ntpsec-src \
openl2tp \
opensaf \
phytool \
phytool-dbg \
postfix-cfg \
rp-pppoe \
traceroute \
traceroute-dbg \
udpcast-doc \
unbound-doc \
znc \
"

View File

@ -1,142 +0,0 @@
# List of known non-reproducible package of the meta-oe layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_OE = " \
apitrace \
apitrace-dbg \
asio-dbg \
asio-ptest \
asio-src \
cpuid-doc \
dhrystone \
dhrystone-dbg \
dhrystone-dev \
dhrystone-src \
directfb \
directfb-dbg \
doxygen-src \
edid-decode \
edid-decode-dbg \
editorconfig-core-c-dev \
etcd-cpp-apiv3-dev \
evemu-tools-python \
fbgrab-doc \
fluentbit-src \
fsverity-utils-dbg \
fsverity-utils-staticdev \
fvwm-dbg \
fvwm-doc \
fvwm-extra \
fwupd-dbg \
fwupd-ptest \
gcab-src \
gosu \
gosu-dbg \
gosu-dev \
gosu-staticdev \
gphoto2 \
gphoto2-dbg \
hddtemp-locale-de \
hdf5 \
hdf5-dbg \
hdf5-src \
hdf5-staticdev \
hplip-dbg \
hplip-filter \
hplip-src \
iotop \
iotop-dbg \
ipmiutil \
ipmiutil-dbg \
ipmiutil-dev \
jpnevulator-doc \
jsonrpc-dev \
kpatch-build \
kpatch-doc \
ldns \
libass9 \
libass-dbg \
libbotan-3-7 \
libbotan-3-bin \
libbotan-3-dbg \
libbotan-3-dev \
libck-doc \
libdbus-cxx-dev \
libforms \
libfsverity0 \
libhugetlbfs-doc \
libiio-src \
libjcat-dbg \
libjcat-ptest \
librelp-dbg \
librelp-ptest \
libsdl2-compat \
libsdl2-compat-dbg \
libsource-highlight5 \
libsource-highlight-dbg \
libsource-highlight-dev \
libsource-highlight-src \
libthrift-c-glib-zlib-src \
libvncserver-dev \
libwebsockets-testapps \
libwmf \
libyui-ncurses-dbg \
libyui-ncurses-dev \
lmbench-staticdev \
log4cpp \
lprng \
lprng-dbg \
lshw \
lshw-locale-fr \
mariadb-dbg \
mariadb-server \
mariadb-src \
mce-test \
mime-support-doc \
minifi-cpp \
minifi-cpp-dbg \
minifi-cpp-src \
mpv \
mpv-dbg \
nana \
nbench-byte \
nbench-byte-dbg \
nbench-byte-src \
nspr-staticdev \
obconf-locale-es \
pcp \
pcp-dev \
pcp-doc \
pcp-src \
perfetto \
perfetto-dbg \
php-phar \
pidgin \
pidgin-dbg \
pim435-staticdev \
poco-ptest \
postgresql-server-dev \
qcbor-staticdev \
qperf-doc \
sharutils \
sharutils-dbg \
smemstat-doc \
soci-dev \
switchtec-user \
switchtec-user-dbg \
switchtec-user-staticdev \
thin-provisioning-tools-dev \
toybox-inittab \
toybox-inittab-dbg \
toybox-inittab-dev \
transmission-dbg \
transmission-gtk \
transmission-src \
vulkan-cts \
vulkan-cts-dbg \
waylandpp-dev \
yasm-src \
zlog-staticdev \
zsh \
zsh-dbg \
zsh-src \
"

View File

@ -123,3 +123,146 @@ NON_MULTILIB_RECIPES:append = " crash pahole libbpf"
NON_MULTILIB_RECIPES:remove:x86 = "libbpf"
NON_MULTILIB_RECIPES:remove:x86-64 = "libbpf"
# List of known non-reproducible package of the meta-oe layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
apitrace \
apitrace-dbg \
asio-dbg \
asio-ptest \
asio-src \
cpuid-doc \
dhrystone \
dhrystone-dbg \
dhrystone-dev \
dhrystone-src \
directfb \
directfb-dbg \
doxygen-src \
edid-decode \
edid-decode-dbg \
editorconfig-core-c-dev \
etcd-cpp-apiv3-dev \
evemu-tools-python \
fbgrab-doc \
fluentbit-src \
fsverity-utils-dbg \
fsverity-utils-staticdev \
fvwm-dbg \
fvwm-doc \
fvwm-extra \
fwupd-dbg \
fwupd-ptest \
gcab-src \
gosu \
gosu-dbg \
gosu-dev \
gosu-staticdev \
gphoto2 \
gphoto2-dbg \
hddtemp-locale-de \
hdf5 \
hdf5-dbg \
hdf5-src \
hdf5-staticdev \
hplip-dbg \
hplip-filter \
hplip-src \
iotop \
iotop-dbg \
ipmiutil \
ipmiutil-dbg \
ipmiutil-dev \
jpnevulator-doc \
jsonrpc-dev \
kpatch-build \
kpatch-doc \
ldns \
libass9 \
libass-dbg \
libbotan-3-7 \
libbotan-3-bin \
libbotan-3-dbg \
libbotan-3-dev \
libck-doc \
libdbus-cxx-dev \
libforms \
libfsverity0 \
libhugetlbfs-doc \
libiio-src \
libjcat-dbg \
libjcat-ptest \
librelp-dbg \
librelp-ptest \
libsdl2-compat \
libsdl2-compat-dbg \
libsource-highlight5 \
libsource-highlight-dbg \
libsource-highlight-dev \
libsource-highlight-src \
libthrift-c-glib-zlib-src \
libvncserver-dev \
libwebsockets-testapps \
libwmf \
libyui-ncurses-dbg \
libyui-ncurses-dev \
lmbench-staticdev \
log4cpp \
lprng \
lprng-dbg \
lshw \
lshw-locale-fr \
mariadb-dbg \
mariadb-server \
mariadb-src \
mce-test \
mime-support-doc \
minifi-cpp \
minifi-cpp-dbg \
minifi-cpp-src \
mpv \
mpv-dbg \
nana \
nbench-byte \
nbench-byte-dbg \
nbench-byte-src \
nspr-staticdev \
obconf-locale-es \
pcp \
pcp-dev \
pcp-doc \
pcp-src \
perfetto \
perfetto-dbg \
php-phar \
pidgin \
pidgin-dbg \
pim435-staticdev \
poco-ptest \
postgresql-server-dev \
qcbor-staticdev \
qperf-doc \
sharutils \
sharutils-dbg \
smemstat-doc \
soci-dev \
switchtec-user \
switchtec-user-dbg \
switchtec-user-staticdev \
thin-provisioning-tools-dev \
toybox-inittab \
toybox-inittab-dbg \
toybox-inittab-dev \
transmission-dbg \
transmission-gtk \
transmission-src \
vulkan-cts \
vulkan-cts-dbg \
waylandpp-dev \
yasm-src \
zlog-staticdev \
zsh \
zsh-dbg \
zsh-src \
"

View File

@ -1,10 +0,0 @@
# List of known non-reproducible package of the meta-perl layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_PERL = " \
libencode-perl-src \
libhtml-tree-perl \
libhtml-tree-perl-doc \
libmodule-build-tiny-perl \
po4a \
po4a-doc \
"

View File

@ -16,3 +16,14 @@ LAYERVERSION_perl-layer = "1"
LAYERDEPENDS_perl-layer = "core openembedded-layer"
LAYERSERIES_COMPAT_perl-layer = "walnascar whinlatter"
# List of known non-reproducible package of the meta-perl layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
libencode-perl-src \
libhtml-tree-perl \
libhtml-tree-perl-doc \
libmodule-build-tiny-perl \
po4a \
po4a-doc \
"

View File

@ -1,31 +0,0 @@
# List of known non-reproducible package of the meta-python layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_PYTHON = " \
python3-evdev \
python3-evdev-dbg \
python3-evdev-src \
python3-frozenlist \
python3-frozenlist-dbg \
python3-kivy-src \
python3-lief \
python3-mlcommons-loadgen \
python3-mlcommons-loadgen-dbg \
python3-mlcommons-loadgen-src \
python3-pandas \
python3-pandas-dbg \
python3-pandas-src \
python3-propcache \
python3-propcache-dbg \
python3-pybind11-json-dev \
python3-pycocotools-src \
python3-pydantic-core \
python3-pynacl \
python3-pynacl-dbg \
python3-pynacl-src \
python3-pyproj \
python3-pyproj-dbg \
python3-pyproj-src \
python3-pyzmq \
python3-yarl \
python3-yarl-dbg \
"

View File

@ -17,3 +17,35 @@ LAYERDEPENDS_meta-python = "core (>= 12) openembedded-layer"
LAYERSERIES_COMPAT_meta-python = "walnascar whinlatter"
LICENSE_PATH += "${LAYERDIR}/licenses"
# List of known non-reproducible package of the meta-python layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
python3-evdev \
python3-evdev-dbg \
python3-evdev-src \
python3-frozenlist \
python3-frozenlist-dbg \
python3-kivy-src \
python3-lief \
python3-mlcommons-loadgen \
python3-mlcommons-loadgen-dbg \
python3-mlcommons-loadgen-src \
python3-pandas \
python3-pandas-dbg \
python3-pandas-src \
python3-propcache \
python3-propcache-dbg \
python3-pybind11-json-dev \
python3-pycocotools-src \
python3-pydantic-core \
python3-pynacl \
python3-pynacl-dbg \
python3-pynacl-src \
python3-pyproj \
python3-pyproj-dbg \
python3-pyproj-src \
python3-pyzmq \
python3-yarl \
python3-yarl-dbg \
"

View File

@ -1,7 +0,0 @@
# List of known non-reproducible package of the meta-webserver layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_WEBSERVER = " \
netdata \
netdata-dbg \
php-phar \
"

View File

@ -25,3 +25,11 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
phpmyadmin->bash \
phpmyadmin->php \
"
# List of known non-reproducible package of the meta-webserver layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
netdata \
netdata-dbg \
php-phar \
"

View File

@ -1,7 +0,0 @@
# List of known non-reproducible package of the meta-xfce layer
# Please keep this list sorted
KNOWN_NON_REPRO_META_XFCE = " \
catfish \
libsamba-util0 \
samba-dbg \
"

View File

@ -27,3 +27,11 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
rodent-icon-theme->gdk-pixbuf \
rodent-icon-theme->gtk+3 \
"
# List of known non-reproducible package of the meta-xfce layer
# Please keep this list sorted
OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \
catfish \
libsamba-util0 \
samba-dbg \
"