[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Rebuilding Debian Live gnome image fails



On 12/02/2021 17:16, Matthijs wrote:
On 12-02-2021 03:12, John Crawley wrote:
On 09/02/2021 21:40, Matthijs wrote:
Following the Debian Live manual on using a predefined configuration(https://live-team.pages.debian.net/live-manual/html/live-manual/managing-a-configuration.en.html#333):
$ mkdir live-images && cd live-images
$ lb config --config https://salsa.debian.org/live-team/live-images.git::debian
$ cd images/standard
$ sudo lb build

...this works and I get an ISO image in that directory.

But, instead doing this:
$ mkdir live-images && cd live-images
$ lb config --config https://salsa.debian.org/live-team/live-images.git::debian
$ cd images/gnome-desktop
$ sudo lb build
(note the change in the 'cd' command)
...this does NOT work. The build command starts doing a lot of work, fetching & installing stuff, but then simply stops at this point (copy/paste of ~17 lines of build.log):
It's not mentioned in those docs, but I'm pretty sure you'll need to
run 'lb config' one more time after moving to the config directory
(and possibly editing the files inside), before 'lb build'.

Interesting. I've tried it, but it doesn't make much of a difference - stops at roughly the same point (well, I get two lines extra, but not much information from that).

I did manage to trace the root cause back to lines 75/76 in /usr/lib/live/build/chroot_package-lists:
     Expand_packagelist "$(basename ${LIST})" "config/package-lists" \
             | grep -v '^#' >> chroot/root/packages.chroot

It seems that at some point, with the config I'm using, "Expand_packagelist" does not return anything and the script then simply stops. When I replace it with:
     My_list=$(Expand_packagelist "$(basename ${LIST})" "config/package-lists")
     echo ${My_list} | grep -v '^#' >> chroot/root/packages.chroot

...the build continues and delivers a bootable image. So, my issue seems to be solved with that, or at least I have a workaround. Perhaps I'll dive a bit further, because right now I don't fully understand why the build would stop originally: I would expect, if "expand_packagelist" doesn't return anything, that the following "grep" would hang indefinitely.

This might be the issue that was fixed with a commit on Jan. 12th:
https://salsa.debian.org/live-team/live-build/-/commit/f13273368a16df271e4317d413d9da564f541dea
You could try that fix of appending '|| true' to the line.
Nevertheless, an additional "lb config" doesn't seem to be necessary, as the modified chrot_package-list script works correctly with the original procedure.

You're right in this case, because auto/config holds exactly the same configuration for all the desktop versions. I still think, however, that if you edited auto/config inside the gnome (or whatever) directory, that you'd have to run 'lb config' inside the directory to pick the changes up.

Just in the interest of science, I have a local git clone of live-images, so I copied images/gnome-desktop to a virtual machine and ran the same live-build commands there. The build failed at exactly the same point you recorded.

--
John


Reply to: