[Simple-cdd-devel] Bugfixes
Vagrant Cascadian
vagrant at debian.org
Tue Jan 17 02:51:43 UTC 2017
On 2016-08-30, Gábor Boskovits wrote:
> Dear Maintainers!
>
> I'm interested in the development of this project.
Thanks for your interest, and apologies for the slow response...
> 1.
>
> I have found, that there is a problem in the build-simple-cdd script in
> check_configuration.
>
> There is an undefined variable "pathname", which causes the script to stop
> in case of invalid preseed file, even with --force-preseed.
>
> I attach a patch for the problem.
Thanks, patch applied!
> 2.
>
> I would like to propose an update to the cd build tool.
>
> I had a problem try to get a fully automated install on efi firmware.
>
> The current efi bootloader is grub, and there is no way to configure grub,
> like there is a way to configure isolinux.
>
> I propose to extend the tool with a block like it was done with isolinuxcfg.
>
> I thought about something along th lines of the other attached patch.
I've applied the BOOT_TIMEOUT portion of the patch.
The GRUB_DEFAULT_ENTRY part needed an additional one-line patch to
simple_cdd/variables.py to support GRUB_DEFAULT_ENTRY, otherwise
tools/build/debian-cd is called with "set -u" that errors on attempts to
use unset variables.
I haven't applied it yet due to the variable handling possibly needing
more thought in regards to new/custom variables...
> 3.
>
> a.) I would like to ask, if there is any reason why qemu_opts and mem
> support was dropped?
> It is in the documentation, but it seems to me, that it is ignored by the
> script.
>
> I would like to use the qemu parameters machine, bios and mem.
>
> b.) Would it be better to add these options individually, or add back
> support of qemu_opts?
>
> 4.
> I realized, that for example the preseed file is checked even if
> --qemu-only option is applied.
>
> Is this really necessary?
Honestly, I haven't used the qemu-specific features for quite some time,
so they are largely untested at this point.
> 5.
> What is causing porblems for me in preseed anyway is trying to preseed
> passwd/user-password-crypted.
>
> The preseed file checker does not recognize this value.
>
> What would be a good approach to include support for this?
It really should be fixed in debconf-set-selections, or giving it an
option to use an alternate passwd.dat file or something.
I filed a bug in 2010 about this issue, but it hasn't received a
response:
https://bugs.debian.org/587380
> From ff96084183cd2300f20c1142d4068dfd02c45f8b Mon Sep 17 00:00:00 2001
> From: "Boskovits, Gabriel" <boskovits at gmail.com>
> Date: Tue, 30 Aug 2016 01:18:55 +0200
> Subject: [PATCH] Corrected incorrect variable name
>
> ---
> build-simple-cdd | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/build-simple-cdd b/build-simple-cdd
> index 1881d3a..95a2892 100755
> --- a/build-simple-cdd
> +++ b/build-simple-cdd
> @@ -168,9 +168,9 @@ class SimpleCDD:
> for p in self.env.get("preseed_files"):
> if verify_preseed_file(p): continue
> if self.args.force_preseed:
> - log.warn("preseed file invalid: %s", pathname)
> + log.warn("preseed file invalid: %s", p)
> else:
> - raise Fail("preseed file invalid: %s", pathname)
> + raise Fail("preseed file invalid: %s", p)
>
>
> def paranoid_checks(self):
> --
> 2.7.4
Merged this obvious fix, thanks again!
> From e8ed3270c9a9971bdc8e5a3c42487c920752a87b Mon Sep 17 00:00:00 2001
> From: "Boskovits, Gabriel" <boskovits at gmail.com>
> Date: Tue, 30 Aug 2016 10:57:41 +0200
> Subject: [PATCH] My squashed commits
>
> ---
> tools/build/debian-cd | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/tools/build/debian-cd b/tools/build/debian-cd
> index de21eef..47b37d1 100644
> --- a/tools/build/debian-cd
> +++ b/tools/build/debian-cd
> @@ -100,6 +100,17 @@ for dir in etc install ; do
> fi
> done
>
> +grubcfg="$TDIR/$CODENAME/CD1/boot/grub/grub.cfg"
> +if [ -f "$grubcfg" ]; then
> + if [ -n "$BOOT_TIMEOUT" ]; then
> + SEC_TIMEOUT=$(( $BOOT_TIMEOUT / 10 ))
> + echo "set timeout=$SEC_TIMEOUT" >> $grubcfg
> + fi
> + if [ -n "$GRUB_DEFAULT_ENTRY" ]; then
> + echo "set default=$GRUB_DEFAULT_ENTRY" >> $grubcfg
> + fi
> +fi
> +
> extras_base_dir="$simple_cdd_temp/extras"
>
> if [ -n "$extras_base_dir" ] && [ -d "$extras_base_dir" ]; then
> --
> 2.7.4
Merged the BOOT_TIMEOUT part only so far.
This seems to work, once simple_cdd/variables.py is patched to have a
textVar entry for GRUB_DEFAULT_ENTRY, otherwise tools/build-debian-cd
errors out if GRUB_DEFAULT_ENTRY is unset, due to the way
tools/build/debian-cd is called (using "set -u").
Thanks for your contributions! In the future, please submit one bug
report per issue, and please use the debian bug tracking system:
https://www.debian.org/Bugs/Reporting
live well,
vagrant
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/simple-cdd-devel/attachments/20170116/521c4bfa/attachment.sig>
More information about the Simple-cdd-devel
mailing list