From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7360767985063034880 X-Forwarded-Encrypted: i=2; AJvYcCWK8M6rv/kxKY+Y/x1SqJh+00HYuFZGJQnl4FNmiCUAlECznaCjMDPXBUchzkSPMTOxdZIR7oFUTSgj1LxYKypYJ1iZ/YQM1s56anU= X-Received: by 2002:a50:d60a:0:b0:56d:fc50:ec50 with SMTP id x10-20020a50d60a000000b0056dfc50ec50mr518936edi.13.1713901776132; Tue, 23 Apr 2024 12:49:36 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a50:d5db:0:b0:571:d7fb:bbd4 with SMTP id 4fb4d7f45d1cf-571d7fbc3a8ls721311a12.0.-pod-prod-00-eu; Tue, 23 Apr 2024 12:49:34 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXKWS6cBl7m83NMFnc5Urp4SooqMMK49IOazOTkfs84vxnzSc0xrBDoVPPQTQcaUmY3lNoq0n9yLZ/nbYU9MIGJT71IlecUQ18UbOc= X-Google-Smtp-Source: AGHT+IHNLhl7amBhms9KZS3iS41ICcLVJt4QztlLpJqVmQuWnCz00wuSk622vgiwL65Tl013clSo X-Received: by 2002:a17:907:96a2:b0:a55:7669:8b4a with SMTP id hd34-20020a17090796a200b00a5576698b4amr4467157ejc.32.1713901773804; Tue, 23 Apr 2024 12:49:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1713901773; cv=none; d=google.com; s=arc-20160816; b=DujNU7OjBQOt34hyhdw12NsJZ6IHek98m7iX979TUGPjHekxy12orjrlxFGawQEgSj MTYfin/yIOO2rksr9K8PGKMIOtXe5jlf0jC3NPrJ6QY3ENVixPk6G8XcGDhQ9Y57IYMs GRN/gozobZG4Dy3ZRQVaDR85FAlKx+ZmV6Y8noRjJWhylGihQTp/TzMdLNN2ht3SKDH4 20kWU3EUjT66soTXNuQGSBcsUz0pusV+rBxCCDDt4rS8nbdaHq1D9mvZcjRXa2B2Z6PJ wtf4R9dgaGibBdNP4fp8Tr0Zk7Laj8XO62IPoJVtpih8cfbaTD0Boohnfiq31yl9WYEC 2Nag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id; bh=TN+Oi7n9VGgjTcQL7wdjoIRcLqUCS5PWNRq5B1x0bO8=; fh=QYMfFzHmI+zcOUnYDTr43L2pVofoDHCjrwEEm0vjxAc=; b=TevZ5m/ko9HwKclj+uYb14wD32mjKWRxRdPs5/dn/GPsHFNyFjf4BuxrRzGxXbNIfR Nn3NmiMPQjl8vZGttTNDt+LTrpfM7Wyw24XZTLrVyvBOIJuryycWtPuvPGAsX2/RxYUq 0BY5zCWVWu68QIYeY23d1gGnqLKJW/UDXdjZWdA9NJoijBdr9dVoGhU6N9ZyQ+DY/dIg A2QM+aMiT6nM1RWXRfei3JQbCYb73gowNwDFlfWKGtuv++83+m7VIh4PHmF8hdk5G2Lf 3nAeIU+RmcEWtd+JLzhFeNE4GDT43zRjhdIJdNMtkTH+4akTtzQ9fElqHmcDeXXOux4c 4fNA==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id ex21-20020a170907955500b00a55bc7e8548si182830ejc.1.2024.04.23.12.49.33 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 23 Apr 2024 12:49:33 -0700 (PDT) Received-SPF: pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Received: from [127.0.0.1] (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 43NJnUrU027146 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 23 Apr 2024 21:49:32 +0200 Message-ID: <2e3905fc81549945746982e8f7d45b6f612420e1.camel@ilbers.de> Subject: Re: [PATCH 1/2] remove conditional SDE paths From: Uladzimir Bely To: Felix Moessbauer , benedikt.niedermayr@siemens.com, isar-users@googlegroups.com Cc: venkata.pyla@toshiba-tsip.com, quirin.gylstorff@siemens.com Date: Tue, 23 Apr 2024 22:49:30 +0300 In-Reply-To: <20240422185843.550406-1-felix.moessbauer@siemens.com> References: <20240422185843.550406-1-felix.moessbauer@siemens.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.52.0 (by Flathub.org) MIME-Version: 1.0 X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: yX1tu1nCR34M On Mon, 2024-04-22 at 20:58 +0200, 'Felix Moessbauer' via isar-users wrote: > The SOURCE_DATE_EPOCH variable is now always available, both as > bitbake > variable, as well as as env-var. By that, we can remove all > conditional > paths that checked if the variable is available. Also, manual exports > of > the bitbake variable into the env is no longer required. >=20 > Signed-off-by: Felix Moessbauer > --- > =C2=A0meta/classes/dpkg-source.bbclass=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 3 --- > =C2=A0meta/classes/image-account-extension.bbclass=C2=A0 | 13 +++------ > =C2=A0meta/classes/image.bbclass=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= | 27 +++++------------ > -- > =C2=A0meta/classes/imagetypes_wic.bbclass=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 3 --- > =C2=A0meta/classes/initramfs.bbclass=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 5 ---- > =C2=A0meta/classes/rootfs-add-files.bbclass=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 |=C2=A0 4 --- > =C2=A0.../isar-bootstrap/isar-bootstrap.inc=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 |=C2=A0 4 --- > =C2=A07 files changed, 10 insertions(+), 49 deletions(-) >=20 > diff --git a/meta/classes/dpkg-source.bbclass b/meta/classes/dpkg- > source.bbclass > index 7e3868f6..7fd5d2ed 100644 > --- a/meta/classes/dpkg-source.bbclass > +++ b/meta/classes/dpkg-source.bbclass > @@ -11,9 +11,6 @@ do_dpkg_source() { > =C2=A0=C2=A0=C2=A0=C2=A0 # Create a .dsc file from source directory to us= e it with sbuild > =C2=A0=C2=A0=C2=A0=C2=A0 DEB_SOURCE_NAME=3D$(dpkg-parsechangelog --show-f= ield Source --file > ${WORKDIR}/${PPS}/debian/changelog) > =C2=A0=C2=A0=C2=A0=C2=A0 find ${WORKDIR} -name "${DEB_SOURCE_NAME}*.dsc" = -maxdepth 1 - > delete > -=C2=A0=C2=A0=C2=A0 if [ ! -z "${SOURCE_DATE_EPOCH}" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 export SOURCE_DATE_EPOCH=3D"$= {SOURCE_DATE_EPOCH}" > -=C2=A0=C2=A0=C2=A0 fi > =C2=A0=C2=A0=C2=A0=C2=A0 sh -c "cd ${WORKDIR}; dpkg-source ${DPKG_SOURCE_= EXTRA_ARGS} -b > ${PPS}" > =C2=A0} > =C2=A0addtask dpkg_source after do_prepare_build before do_dpkg_build > diff --git a/meta/classes/image-account-extension.bbclass > b/meta/classes/image-account-extension.bbclass > index 3d4e1d1d..b63fff5c 100644 > --- a/meta/classes/image-account-extension.bbclass > +++ b/meta/classes/image-account-extension.bbclass > @@ -114,11 +114,10 @@ def image_create_users(d: "DataSmart") -> None: > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 # chpasswd adds a random salt when running against= a > clear-text password. > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 # For reproducible images, we manually generate th= e > password and use the > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 # SOURCE_DATE_EPOCH to generate the salt in a > deterministic way. > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 source_date_epoch =3D d.getVar("SOURCE_DATE_EPOCH") or > "" > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 if source_date_epoch: > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 command.append("-e") > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 salt =3D > hashlib.sha256("{}\n".format(source_date_epoch).encode()).hexdigest() > [0:15] > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 password =3D bb.process.run('ope= nssl passwd -6 -- > salt {} {}'.format(salt, password))[0].strip() > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 source_date_epoch =3D d.getVar("SOURCE_DATE_EPOCH") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 command.append("-e") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 salt =3D > hashlib.sha256("{}\n".format(source_date_epoch).encode()).hexdigest() > [0:15] > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 password =3D bb.process.run('openssl passwd -6 --salt > {} {}'.format(salt, password))[0].strip() > =C2=A0 > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 = else: > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 command.append("-e") > @@ -131,10 +130,6 @@ def image_create_users(d: "DataSmart") -> None: > =C2=A0 > =C2=A0ROOTFS_POSTPROCESS_COMMAND +=3D "image_postprocess_accounts" > =C2=A0python image_postprocess_accounts() { > -=C2=A0=C2=A0=C2=A0 import os > -=C2=A0=C2=A0=C2=A0 if d.getVar("SOURCE_DATE_EPOCH") !=3D None: > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 os.environ["SOURCE_DATE_EPOCH= "] =3D > d.getVar("SOURCE_DATE_EPOCH") > -=20 During testing in CI together with other patches from the mailist, faced a small merge/logical conflict with patch "[v3] image-account- extenstion: rebuild on varflag changes" that adds line +image_postprocess_accounts[vardeps] +=3D "USERS GROUPS SOURCE_DATE_EPOCH" I guess, it should become now: +image_postprocess_accounts[vardeps] +=3D "USERS GROUPS" , is not it? > =C2=A0=C2=A0=C2=A0=C2=A0 image_create_groups(d) > =C2=A0=C2=A0=C2=A0=C2=A0 image_create_users(d) > =C2=A0} > diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass > index 98741da0..34faa6af 100644 > --- a/meta/classes/image.bbclass > +++ b/meta/classes/image.bbclass > @@ -289,18 +289,6 @@ python() { > =C2=A0=C2=A0=C2=A0=C2=A0 d.appendVar('IMAGER_BUILD_DEPS', ' ' + ' > '.join(sorted(imager_build_deps))) > =C2=A0} > =C2=A0 > - > -# make generation of initramfs reproducible > -# note: this function is shared across multiple rootfs, but we only > want to make the > -#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 image rootfs reproducible. Otherwi= se changes of > SOURCE_DATE_EPOCH would > -#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 invalidate the SSTATE entries for = most packages, even if > they don't use the > -#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 global SOURCE_DATE_EPOCH variable. > -rootfs_install_pkgs_install:prepend() { > -=C2=A0=C2=A0=C2=A0 if [ ! -z "${SOURCE_DATE_EPOCH}" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 export SOURCE_DATE_EPOCH=3D"$= {SOURCE_DATE_EPOCH}" > -=C2=A0=C2=A0=C2=A0 fi > -} > - > =C2=A0# here we call a command that should describe your whole build > system, > =C2=A0# this could be "git describe" or something similar. > =C2=A0# set ISAR_RELEASE_CMD to customize, or override do_mark_rootfs to > do something > @@ -451,17 +439,14 @@ EOSUDO > =C2=A0 > =C2=A0=C2=A0=C2=A0=C2=A0 # Set same time-stamps to the newly generated fi= le/folders in > the > =C2=A0=C2=A0=C2=A0=C2=A0 # rootfs image for the purpose of reproducible b= uilds. > -=C2=A0=C2=A0=C2=A0 if [ -n "${SOURCE_DATE_EPOCH}" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 fn=3D"${DEPLOY_DIR_IMAGE}/fil= es.modified_timestamps" > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if sudo find ${ROOTFSDIR} -ne= wermt "$(date - > d@${SOURCE_DATE_EPOCH} '+%Y-%m-%d %H:%M:%S')" \ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -prin= tf "%y %p\n" -exec touch '{}' -h - > d@${SOURCE_DATE_EPOCH} ';' | egrep ^f >"$fn"; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if [ = -e "$fn" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 bbwarn "modified timestamp (${SOURCE_DATE_EPOCH}) of > $(cat "$fn" | wc -l) files for image reproducibly." \ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "List of files= modified can be found in: > .${DEPLOY_DIR_IMAGE}/files.modified_timestamps" > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 fi > +=C2=A0=C2=A0=C2=A0 fn=3D"${DEPLOY_DIR_IMAGE}/files.modified_timestamps" > +=C2=A0=C2=A0=C2=A0 if sudo find ${ROOTFSDIR} -newermt "$(date - > d@${SOURCE_DATE_EPOCH} '+%Y-%m-%d %H:%M:%S')" \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -printf "%y %p\n" -exec touch= '{}' -h - > d@${SOURCE_DATE_EPOCH} ';' | egrep ^f >"$fn"; then > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if [ -e "$fn" ]; then > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bbwar= n "modified timestamp (${SOURCE_DATE_EPOCH}) of > $(cat "$fn" | wc -l) files for image reproducibly." \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "List of files modified can be f= ound in: > .${DEPLOY_DIR_IMAGE}/files.modified_timestamps" > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 fi > =C2=A0=C2=A0=C2=A0=C2=A0 fi > - > =C2=A0} > =C2=A0do_rootfs_finalize[network] =3D "${TASK_USE_SUDO}" > =C2=A0addtask rootfs_finalize before do_rootfs after do_rootfs_postproces= s > diff --git a/meta/classes/imagetypes_wic.bbclass > b/meta/classes/imagetypes_wic.bbclass > index bce881ed..3b697cdd 100644 > --- a/meta/classes/imagetypes_wic.bbclass > +++ b/meta/classes/imagetypes_wic.bbclass > @@ -157,9 +157,6 @@ generate_wic_image() { > =C2=A0=C2=A0=C2=A0=C2=A0 export FAKEROOTCMD=3D${FAKEROOTCMD} > =C2=A0=C2=A0=C2=A0=C2=A0 export BUILDDIR=3D${TOPDIR} > =C2=A0=C2=A0=C2=A0=C2=A0 export MTOOLS_SKIP_CHECK=3D1 > -=C2=A0=C2=A0=C2=A0 if [ ! -z "${SOURCE_DATE_EPOCH}" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 export SOURCE_DATE_EPOCH=3D"$= {SOURCE_DATE_EPOCH}" > -=C2=A0=C2=A0=C2=A0 fi > =C2=A0=C2=A0=C2=A0=C2=A0 mkdir -p ${IMAGE_ROOTFS}/../pseudo > =C2=A0=C2=A0=C2=A0=C2=A0 touch ${IMAGE_ROOTFS}/../pseudo/files.db > =C2=A0 > diff --git a/meta/classes/initramfs.bbclass > b/meta/classes/initramfs.bbclass > index 925c3f6d..5b5943f2 100644 > --- a/meta/classes/initramfs.bbclass > +++ b/meta/classes/initramfs.bbclass > @@ -38,11 +38,6 @@ do_generate_initramfs() { > =C2=A0=C2=A0=C2=A0=C2=A0 rootfs_do_mounts > =C2=A0=C2=A0=C2=A0=C2=A0 rootfs_do_qemu > =C2=A0 > -=C2=A0=C2=A0=C2=A0 # generate reproducible initrd if requested > -=C2=A0=C2=A0=C2=A0 if [ ! -z "${SOURCE_DATE_EPOCH}" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 export SOURCE_DATE_EPOCH=3D"$= {SOURCE_DATE_EPOCH}" > -=C2=A0=C2=A0=C2=A0 fi > - > =C2=A0=C2=A0=C2=A0=C2=A0 sudo -E chroot "${INITRAMFS_ROOTFS}" sh -c '\ > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 export kernel_version=3D= $(basename /boot/vmlinu[xz]* | cut - > d'-' -f2-); \ > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if [ -n "$kernel_version= " ]; then \ > diff --git a/meta/classes/rootfs-add-files.bbclass > b/meta/classes/rootfs-add-files.bbclass > index 4125caf5..8ebd25cb 100644 > --- a/meta/classes/rootfs-add-files.bbclass > +++ b/meta/classes/rootfs-add-files.bbclass > @@ -16,10 +16,6 @@ ROOTFS_ADDITIONAL_FILES ??=3D "" > =C2=A0 > =C2=A0 > =C2=A0python rootfs_add_files() { > -=C2=A0=C2=A0=C2=A0 import os > -=C2=A0=C2=A0=C2=A0 if d.getVar("SOURCE_DATE_EPOCH") !=3D None: > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 os.environ["SOURCE_DATE_EPOCH= "] =3D > d.getVar("SOURCE_DATE_EPOCH") > - > =C2=A0=C2=A0=C2=A0=C2=A0 postprocess_additional_files =3D > d.getVar('ROOTFS_ADDITIONAL_FILES').split() > =C2=A0=C2=A0=C2=A0=C2=A0 rootfsdir =3D d.getVar("ROOTFSDIR") > =C2=A0 > diff --git a/meta/recipes-core/isar-bootstrap/isar-bootstrap.inc > b/meta/recipes-core/isar-bootstrap/isar-bootstrap.inc > index b1567d7b..faf22a50 100644 > --- a/meta/recipes-core/isar-bootstrap/isar-bootstrap.inc > +++ b/meta/recipes-core/isar-bootstrap/isar-bootstrap.inc > @@ -310,10 +310,6 @@ do_bootstrap() { > =C2=A0=C2=A0=C2=A0=C2=A0 sudo rm -rf --one-file-system "${ROOTFSDIR}" > =C2=A0=C2=A0=C2=A0=C2=A0 deb_dl_dir_import "${ROOTFSDIR}" "${BOOTSTRAP_BA= SE_DISTRO}- > ${BASE_DISTRO_CODENAME}" > =C2=A0 > -=C2=A0=C2=A0=C2=A0 if [ -n "${SOURCE_DATE_EPOCH}" ]; then > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 export SOURCE_DATE_EPOCH=3D"$= {SOURCE_DATE_EPOCH}" > -=C2=A0=C2=A0=C2=A0 fi > - > =C2=A0=C2=A0=C2=A0=C2=A0 sudo -E -s <<'EOSUDO' > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 set -e > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if [ "${BOOTSTRAP_FOR_HO= ST}" =3D "0" ]; then > --=20 > 2.39.2 >=20