Johannes Schauer Marin Rodrigues <jo...@debian.org> writes: >> > mmdebstrap ... --variant=apt --chrooted-customize-hook=bash unstable >> > /dev/null >> >> Would that work, though? > Yes. Did you try it and it did not work? What was the error message?
No :) I wanted to read about what it did first. I tried it just now, though. With the --included metapackage it has the same behavior as before: complains that it can't install libopencv-dev. If I don't ask it to --install the problematic package, intending to manually poke apt, then I can't do that: the problematic package is nowhere to be found. It was originally on disk locally, but without --include, it was never copied into the bind mount. I do want to have a metapackage: this allows the metapackage to be updated in the future, and have users be able to "apt update && apt upgrade". I guess I could do this differently for testing. By making the metapackage available in an apt server, and using an undocumented option. That's a heavy lift though. If I was so expert to know to do these things, I probably wouldn't need to debug stuff in the first place >> In any case, I figured out my specific problem by creating a similar >> scenario on a native arm64 box. I was naming the pinning file xxxx.conf >> instead of xxxx.pref which apparently matters. > > Yes, in the man page of apt_preferences it says: "The files have either no or > "pref" as filename extension". In one of my last mails to you I also suggested > you add: > > --setup-hook='{ echo "Package: XXX"; echo "Pin: origin \"YYY\""; echo > "Pin-Priority: 1"; } > "$1"/etc/apt/preferences.d/mypinnings.pref' > > Notice that I used the correct filename extension. Yep. I liked my extension better, but didn't realize that the name was significant. >> On the arm64 box this produced a clear error message ("apt" told me to >> rename the file). But with mmdebstrap there was no specific error at all, as >> you saw. Any idea why? > > Which apt command produced the error? I also don't think it was an error. It > was only a warning, right? Did you get it for "apt-get update" or for "apt-get > install"? Great questions. I just tried it again: $ sudo apt update .... N: Ignoring file 'mypinnings.conf' in directory '/etc/apt/preferences.d/' as it has an invalid filename extension So I don't know what the answer is. But this felt undebuggable, and I wish I could figure this stuff without sinking many hours into it or asking you every time. Thanks for the help, as always.