[v2] Fix missing /var/lib/dpkg/available in Buster rootfs

Message ID 20251222090030.1922930-1-amikan@ilbers.de
State Under Review
Headers show
Series [v2] Fix missing /var/lib/dpkg/available in Buster rootfs | expand

Commit Message

Anton Mikanovich Dec. 22, 2025, 9 a.m. UTC
From: Vladimir Burkin <mxvisor@gmail.com>

When building an image based on Debian Buster the rootfs installation
fails on dpkg because /var/lib/dpkg/available is missing.
isar-mmdebstrap.inc tries to work around this by adding an mmdebstrap
hook. The hook uses touch /var/lib/dpkg/available, but it runs on the
host rather than inside the mmdebstrap rootfs. The proposed fix is to
use the hook parameter $1 (the mmdebstrap rootfs path) when creating
the file.

Signed-off-by: Vladimir Burkin <mxvisor@gmail.com>
Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Anton Mikanovich Dec. 22, 2025, 9:10 a.m. UTC | #1
Hello Vladimir,

Thanks for submitting the patch.
I've resent your commit as v2 with some formatting applied.
Here is the way how we send patches for the review on the list:

- Send in text form (no attachments, no html allowed).
- Title should shortly describe the fix.
- Commit message should describe what is done and why it is done.
- Field Signed-off is required to point on commit authors.
- Field From is nice to have.
- Title ~50 symbols, commit message lines <72 symbols.

Sending the patch can be done from git itself by the command like:

git send-email -1 --subject-prefix="PATCH v2" --to 
isar-users@googlegroups.com

where:
-1 - send 1 commit from the HEAD of current repo.
--subject-prefix="PATCH v2" - version 2 of patchset, can be just "PATCH" 
for v1.

22/12/2025 11:00, Anton Mikanovich wrote:
> From: Vladimir Burkin <mxvisor@gmail.com>
>
> When building an image based on Debian Buster the rootfs installation
> fails on dpkg because /var/lib/dpkg/available is missing.
> isar-mmdebstrap.inc tries to work around this by adding an mmdebstrap
> hook. The hook uses touch /var/lib/dpkg/available, but it runs on the
> host rather than inside the mmdebstrap rootfs. The proposed fix is to
> use the hook parameter $1 (the mmdebstrap rootfs path) when creating
> the file.
>
> Signed-off-by: Vladimir Burkin <mxvisor@gmail.com>
> Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
> ---
>   meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc b/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc
> index 80b13a9e..73fe9434 100644
> --- a/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc
> +++ b/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc
> @@ -18,7 +18,7 @@ BOOTSTRAP_TMPDIR = "${WORKDIR}/tempdir"
>   MM_HOOK_JESSIE = "/usr/share/mmdebstrap/hooks/jessie-or-older"
>   DPKG_HOOKS ?= "${@'--hook-dir='+d.getVar('MM_HOOK_JESSIE') \
>                 if os.path.isdir(d.getVar('MM_HOOK_JESSIE')) \
> -              else '--customize-hook=\'touch /var/lib/dpkg/available\''}"
> +              else '--customize-hook=\'touch $1/var/lib/dpkg/available\''}"
>   MMHOOKS:focal ?= "${DPKG_HOOKS}"
>   MMHOOKS:buster ?= "${DPKG_HOOKS}"
>

Patch

diff --git a/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc b/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc
index 80b13a9e..73fe9434 100644
--- a/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc
+++ b/meta/recipes-core/isar-mmdebstrap/isar-mmdebstrap.inc
@@ -18,7 +18,7 @@  BOOTSTRAP_TMPDIR = "${WORKDIR}/tempdir"
 MM_HOOK_JESSIE = "/usr/share/mmdebstrap/hooks/jessie-or-older"
 DPKG_HOOKS ?= "${@'--hook-dir='+d.getVar('MM_HOOK_JESSIE') \
               if os.path.isdir(d.getVar('MM_HOOK_JESSIE')) \
-              else '--customize-hook=\'touch /var/lib/dpkg/available\''}"
+              else '--customize-hook=\'touch $1/var/lib/dpkg/available\''}"
 MMHOOKS:focal ?= "${DPKG_HOOKS}"
 MMHOOKS:buster ?= "${DPKG_HOOKS}"