grub-devel.gnu.org archive mirror
 help / color / mirror / Atom feed
From: "Lennart Sorensen" <lsorense@csclub.uwaterloo.ca>
To: The development of GNU GRUB <grub-devel@gnu.org>
Subject: Re: [RFC] grub-install C rewrite
Date: Thu, 26 Sep 2013 10:44:00 -0400	[thread overview]
Message-ID: <20130926144400.GR13097@csclub.uwaterloo.ca> (raw)
In-Reply-To: <52443DA7.1030707@gmail.com>

On Thu, Sep 26, 2013 at 03:59:03PM +0200, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> What kind of changes was it? Could we make them into some (possibly
> hidden) options?

Well for quite a while the logic was assuming apple powerpc, and it
needed rework to make it work on the IBM powerpc systems.

To some extent I think grub-install as a script is a great source of
info on what steps have to be taken to install grub, so you can do it
manually if something isn't working.

> windows is low priority and more of a bonus. The problems of handling
> anything that looks like a list (e.g. list of devices where / resides on
> in case of btrfs) and code becoming hairy to handle those cases is
> bigger reason.

Sure lists can be a hassle.

I didn't check lately, but does grub-install understand a list of devices
to install to yet?

ie:  grub-install /dev/sda /dev/sdb

After all if I have software raid, both those devices contain /boot and
are valid to boot from.  And since on things like IBM powerpc,
grub-install likes to update the firmware with the list of boot devices,
they do all have to be specified at once or you end up with the wrong
list (which so far I have worked around by manually fixing the firmware
settings after updating grub, which doesn't happen very often lately).

So calling grub-install for each device in turn (as I believe Debian
does on x86 if you tell it multiple boot devices), does not actually
give the correct result.

Of course when grub-install is a script, it is easy to fiddle with it
to make it handle such a case.

So really my main objection is that it is much harder to debug and fix
C code than it is to fix a script calling a bunch of external commands.

At the very least a C version of grub-install must have an option to
list every command it is attempting to execute externally.  Certainly
adding 'set -x' to grub-install has often been helpful.

-- 
Len Sorensen


  reply	other threads:[~2013-09-26 14:44 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-26 13:08 [RFC] grub-install C rewrite Vladimir 'φ-coder/phcoder' Serbinenko
2013-09-26 13:35 ` Lennart Sorensen
2013-09-26 13:59   ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-09-26 14:44     ` Lennart Sorensen [this message]
2013-09-26 18:49       ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-09-26 20:22         ` Lennart Sorensen
2013-09-26 20:29           ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-09-26 20:51           ` Chris Murphy
2013-09-26 22:15             ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-09-27  3:10         ` Andrey Borzenkov
2013-09-26 17:10   ` Seth Goldberg
2013-09-26 18:51     ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-09-26 18:56       ` Darren J Moffat
2013-09-26 18:57       ` Seth Goldberg
2013-09-26 14:49 ` Andrey Borzenkov
2013-09-26 15:01   ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-10-06 14:54 ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-10-06 15:56   ` Andrey Borzenkov
2013-10-06 18:05     ` Vladimir 'φ-coder/phcoder' Serbinenko
  -- strict thread matches above, loose matches on Subject: below --
2013-09-26 17:52 Kalamatee

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130926144400.GR13097@csclub.uwaterloo.ca \
    --to=lsorense@csclub.uwaterloo.ca \
    --cc=grub-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).