* [PATCH] add drivemap support to 30_os-prober.in and use UUIDs
@ 2009-06-07 15:37 Felix Zielcke
2009-06-07 15:55 ` Pavel Roskin
2009-06-11 19:00 ` Felix Zielcke
0 siblings, 2 replies; 6+ messages in thread
From: Felix Zielcke @ 2009-06-07 15:37 UTC (permalink / raw)
To: The development of GRUB 2
[-- Attachment #1: Type: text/plain, Size: 401 bytes --]
Attached patch uses `prepare_grub_to_access_device' to set the root in
the generated entrys.
And it adds drivemap to the chainload ones, if root isn't (hd0).
The Debian grub-installer adds map only with Dos and Windows, should I
do the same or is it okay to do it for all?
-# update-grub helper script.
+# grub-mkconfig helper script.
Does this needs to be mentioned in ChangeLog?
--
Felix Zielcke
[-- Attachment #2: os-prober.patch --]
[-- Type: text/x-patch, Size: 2504 bytes --]
2009-06-07 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/30_os-prober.in: Source
${libdir}/grub/grub-mkconfig_lib. Use prepare_grub_to_access_device
to set the root device.
diff --git a/util/grub.d/30_os-prober.in b/util/grub.d/30_os-prober.in
index 7d4d17e..9a6dff4 100644
--- a/util/grub.d/30_os-prober.in
+++ b/util/grub.d/30_os-prober.in
@@ -1,7 +1,7 @@
#! /bin/sh -e
-# update-grub helper script.
-# Copyright (C) 2006,2007,2008 Free Software Foundation, Inc.
+# grub-mkconfig helper script.
+# Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc.
#
# GRUB is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -16,6 +16,12 @@
# You should have received a copy of the GNU General Public License
# along with GRUB. If not, see <http://www.gnu.org/licenses/>.
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+
+. ${libdir}/grub/grub-mkconfig_lib
+
if [ -z "`which os-prober 2> /dev/null`" -o -z "`which linux-boot-prober 2> /dev/null`" ] ; then
# missing os-prober and/or linux-boot-prober
exit 0
@@ -45,7 +51,15 @@ for OS in ${OSPROBED} ; do
cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" {
- set root=${CHAINROOT}
+EOF
+ prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
+
+ if [ `echo ${CHAINROOT} | sed -e 's/,[0-9]*[a-z]*//g'` != "(hd0)" ] ; then
+ cat << EOF
+ drivemap -s (hd0) \$root
+EOF
+ fi
+ cat << EOF
chainloader +1
}
EOF
@@ -61,15 +75,15 @@ EOF
LINITRD="`echo ${LINUX} | cut -d ':' -f 5`"
LPARAMS="`echo ${LINUX} | cut -d ':' -f 6- | tr '^' ' '`"
- LINUXROOT="`grub-probe --target=drive --device ${LBOOT} 2> /dev/null`"
-
if [ -z "${LLABEL}" ] ; then
LLABEL="${LONGNAME}"
fi
cat << EOF
menuentry "${LLABEL} (on ${DEVICE})" {
- set root=${LINUXROOT}
+EOF
+ prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
+ cat << EOF
linux ${LKERNEL} ${LPARAMS}
EOF
if [ -n "${LINITRD}" ] ; then
@@ -88,7 +102,9 @@ EOF
OSXDISK=disk"`echo ${OSXROOT} | awk -F , '{ print $1 ; }' | sed 's/(hd//;'`"s"`echo ${OSXROOT} | awk -F , '{ print $2 ; }' | sed 's/)//;'`"
cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" {
- set root=${OSXROOT}
+EOF
+ prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
+ cat << EOF
insmod vbe
do_resume=0
if [ /var/vm/sleepimage -nt10 / ]; then
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH] add drivemap support to 30_os-prober.in and use UUIDs
2009-06-07 15:37 [PATCH] add drivemap support to 30_os-prober.in and use UUIDs Felix Zielcke
@ 2009-06-07 15:55 ` Pavel Roskin
2009-06-08 10:54 ` Vladimir 'phcoder' Serbinenko
2009-06-11 19:00 ` Felix Zielcke
1 sibling, 1 reply; 6+ messages in thread
From: Pavel Roskin @ 2009-06-07 15:55 UTC (permalink / raw)
To: The development of GRUB 2
On Sun, 2009-06-07 at 17:37 +0200, Felix Zielcke wrote:
> Attached patch uses `prepare_grub_to_access_device' to set the root in
> the generated entrys.
> And it adds drivemap to the chainload ones, if root isn't (hd0).
>
> The Debian grub-installer adds map only with Dos and Windows, should I
> do the same or is it okay to do it for all?
Perhaps it would be better to avoid it when it's not needed. But it may
be tricky to determine what bootloader we are using.
Let's do it always and eliminate the cases where it's harmful or
definitely useless.
> -# update-grub helper script.
> +# grub-mkconfig helper script.
> Does this needs to be mentioned in ChangeLog?
The standard says:
'When you change just comments or doc strings, it is enough to write
an entry for the file, without mentioning the functions. Just "Doc
fixes" is enough for the change log.'
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] add drivemap support to 30_os-prober.in and use UUIDs
2009-06-07 15:55 ` Pavel Roskin
@ 2009-06-08 10:54 ` Vladimir 'phcoder' Serbinenko
2009-06-09 20:21 ` Felix Zielcke
0 siblings, 1 reply; 6+ messages in thread
From: Vladimir 'phcoder' Serbinenko @ 2009-06-08 10:54 UTC (permalink / raw)
To: The development of GRUB 2
On Sun, Jun 7, 2009 at 5:55 PM, Pavel Roskin<proski@gnu.org> wrote:
> On Sun, 2009-06-07 at 17:37 +0200, Felix Zielcke wrote:
>> Attached patch uses `prepare_grub_to_access_device' to set the root in
>> the generated entrys.
>> And it adds drivemap to the chainload ones, if root isn't (hd0).
>>
>> The Debian grub-installer adds map only with Dos and Windows, should I
>> do the same or is it okay to do it for all?
>
> Perhaps it would be better to avoid it when it's not needed. But it may
> be tricky to determine what bootloader we are using.
>
> Let's do it always and eliminate the cases where it's harmful or
> definitely useless.
Drivemapping isn't good per se. It's more like unfortunate need.
However it should always be safe to drivemap because AFAIK no OS
relies on particular drive ordering except 0x80 being booting drive.
However this entry will fail unless my drivemap fix is incorporated
>
>> -# update-grub helper script.
>> +# grub-mkconfig helper script.
>> Does this needs to be mentioned in ChangeLog?
>
> The standard says:
>
> 'When you change just comments or doc strings, it is enough to write
> an entry for the file, without mentioning the functions. Just "Doc
> fixes" is enough for the change log.'
>
> --
> Regards,
> Pavel Roskin
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/grub-devel
>
--
Regards
Vladimir 'phcoder' Serbinenko
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] add drivemap support to 30_os-prober.in and use UUIDs
2009-06-08 10:54 ` Vladimir 'phcoder' Serbinenko
@ 2009-06-09 20:21 ` Felix Zielcke
2009-06-09 20:34 ` Pavel Roskin
0 siblings, 1 reply; 6+ messages in thread
From: Felix Zielcke @ 2009-06-09 20:21 UTC (permalink / raw)
To: The development of GRUB 2
Am Montag, den 08.06.2009, 12:54 +0200 schrieb Vladimir 'phcoder'
Serbinenko:
> On Sun, Jun 7, 2009 at 5:55 PM, Pavel Roskin<proski@gnu.org> wrote:
> > On Sun, 2009-06-07 at 17:37 +0200, Felix Zielcke wrote:
> >> Attached patch uses `prepare_grub_to_access_device' to set the root in
> >> the generated entrys.
> >> And it adds drivemap to the chainload ones, if root isn't (hd0).
> >>
> >> The Debian grub-installer adds map only with Dos and Windows, should I
> >> do the same or is it okay to do it for all?
> >
> > Perhaps it would be better to avoid it when it's not needed. But it may
> > be tricky to determine what bootloader we are using.
> >
> > Let's do it always and eliminate the cases where it's harmful or
> > definitely useless.
> Drivemapping isn't good per se. It's more like unfortunate need.
> However it should always be safe to drivemap because AFAIK no OS
> relies on particular drive ordering except 0x80 being booting drive.
> However this entry will fail unless my drivemap fix is incorporated
os-prober currently prints `chain' on FreeDOS, QNX4, Windows, MS-DOS,
Solaris, Minix and Dell Utility Partition
Solaris probable won't need it but for Minix and QNX4 (I don't even know
what this is) I don't know.
FreeDOS probable needs it too or not?
So better just use it always and if someone says it can't boot because
of drivemap we can change it for that OS.
--
Felix Zielcke
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] add drivemap support to 30_os-prober.in and use UUIDs
2009-06-09 20:21 ` Felix Zielcke
@ 2009-06-09 20:34 ` Pavel Roskin
0 siblings, 0 replies; 6+ messages in thread
From: Pavel Roskin @ 2009-06-09 20:34 UTC (permalink / raw)
To: The development of GRUB 2
On Tue, 2009-06-09 at 22:21 +0200, Felix Zielcke wrote:
> os-prober currently prints `chain' on FreeDOS, QNX4, Windows, MS-DOS,
> Solaris, Minix and Dell Utility Partition
> Solaris probable won't need it but for Minix and QNX4 (I don't even know
> what this is) I don't know.
> FreeDOS probable needs it too or not?
FreeDOS 1.0 still needs drivemap. Dell Utility Partition is MS DOS
based, so I think it needs drivemap too.
> So better just use it always and if someone says it can't boot because
> of drivemap we can change it for that OS.
That's exactly my suggestion.
Even we check that a certain version of, say, QNX is fine without
drivemap, some older version may need it, and somebody may have that
version.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] add drivemap support to 30_os-prober.in and use UUIDs
2009-06-07 15:37 [PATCH] add drivemap support to 30_os-prober.in and use UUIDs Felix Zielcke
2009-06-07 15:55 ` Pavel Roskin
@ 2009-06-11 19:00 ` Felix Zielcke
1 sibling, 0 replies; 6+ messages in thread
From: Felix Zielcke @ 2009-06-11 19:00 UTC (permalink / raw)
To: The development of GRUB 2
Am Sonntag, den 07.06.2009, 17:37 +0200 schrieb Felix Zielcke:
> Attached patch uses `prepare_grub_to_access_device' to set the root in
> the generated entrys.
> And it adds drivemap to the chainload ones, if root isn't (hd0).
>
> The Debian grub-installer adds map only with Dos and Windows, should I
> do the same or is it okay to do it for all?
>
> -# update-grub helper script.
> +# grub-mkconfig helper script.
> Does this needs to be mentioned in ChangeLog?
Commited.
--
Felix Zielcke
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2009-06-11 19:00 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-07 15:37 [PATCH] add drivemap support to 30_os-prober.in and use UUIDs Felix Zielcke
2009-06-07 15:55 ` Pavel Roskin
2009-06-08 10:54 ` Vladimir 'phcoder' Serbinenko
2009-06-09 20:21 ` Felix Zielcke
2009-06-09 20:34 ` Pavel Roskin
2009-06-11 19:00 ` Felix Zielcke
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.