Il giorno dom 2 ott 2022 alle ore 00:14 Roberto A. Foglietta < roberto.foglietta@gmail.com> ha scritto: > > Il giorno mer 14 set 2022 alle ore 10:34 Henning Schild < henning.schild@siemens.com> ha scritto: > > > > You can always use dpkg-prebuilt where you download that package, > > binary patch it and later installed the modified copy with isar. > > However if you have a sources.list entry and that package can > > potentially get updated, you will not be able to make that hack stable. > > > > That is a pattern for a broken binary package which i had to get into > > a layer. > > > > do_binary_patch[cleandirs] += "${WORKDIR}/blabla-package" > > do_binary_patch() { > > sudo dpkg-deb -R ${WORKDIR}/blabla-package.deb ${WORKDIR}/blabla-package > > # do something funny with the control file, i.e. sed -i -e ... Depends > > sudo dpkg-deb -b ${WORKDIR}/blabla-package > > } > > addtask binary_patch after do_unpack before do_deploy_deb > > I am trying to fetch the package but I cannot, could you help me? > > SRC_URI = "apt://pippo-fs" > addtask apt_fetch before do_binary_patch > > ERROR: pippo-fs-1.0-r0 do_apt_fetch: ExecutionError('/build/tmp/work/debian-bullseye-amd64/pippo-fs/1.0-r0/temp/run.do_apt_fetch.100', 100, None, None) > ERROR: Logfile of failure stored in: /build/tmp/work/debian-bullseye-amd64/pippo-fs/1.0-r0/temp/log.do_apt_fetch.100 > Log data follows: > | DEBUG: Executing shell function do_apt_fetch > | Reading package lists... > | E: Unable to find a source package for pippo-fs > | ERROR: ExecutionError('/build/tmp/work/debian-bullseye-amd64/pippo-fs/1.0-r0/temp/run.do_apt_fetch.100', 100, None, None) > ERROR: Task (/build/../repo/recipes-support/nvidia-repack/pippo-fs.bb:do_apt_fetch) failed with exit code '1' > NOTE: Tasks Summary: Attempted 30 tasks of which 29 didn't need to be rerun and 1 failed. > > pippo-fs is a legit package that could be fetch if put into IMAGE_PREINSTALL > > Using do_fetch complains about checksum file > > bb.data_smart.ExpansionError: Failure expanding variable do_fetch[file-checksums], expression was ${@bb.fetch.get_checksum_file_list(d)} which triggered exception MalformedUrl: The URL: 'pippo-fs' is invalid and cannot be interpreted Even more interesting this simple recipe inherit dpkg-base SRC_URI = "apt://${PN}" download the package ONLY if the package is into the debian repository but NOT if the package is in a external repository defined into conf/ but available with IMAGE_PREINSTALL I have also tried to change the repository but it did not work either diff --git a/meta/classes/sbuild.bbclass b/meta/classes/sbuild.bbclass index a29b745..4fa6a46 100644 --- a/meta/classes/sbuild.bbclass +++ b/meta/classes/sbuild.bbclass @@ -55,7 +55,7 @@ EOF cp -rf "${SCHROOT_CONF}/sbuild" "${SBUILD_CONF_DIR}" sbuild_fstab="${SBUILD_CONF_DIR}/fstab" - fstab_baseapt="${REPO_BASE_DIR} /base-apt none rw,bind 0 0" + fstab_baseapt="${REPO_ISAR_DIR} /base-apt none rw,bind 0 0" grep -qxF "${fstab_baseapt}" ${sbuild_fstab} || echo "${fstab_baseapt}" >> ${sbuild_fstab} fstab_pkgdir="${WORKDIR} /home/builder/${PN} none rw,bind 0 0"