Bug#785149: grub-installer: NVMe boot drives not supported
I just realized that an out-of-band email thread I had with Cyril didn’t make it to this issue - here’s the final email to me from Cyril:
-----
Steve Rowe <sarowe@gmail.com> (2015-05-12):
>
>> On May 12, 2015, at 4:49 PM, Cyril Brulebois <kibi@debian.org> wrote:
>>> --- grub-installer-1.117/grub-installer 2015-01-12 23:01:14.000000000 -0500
>>> +++ grub-installer-1.117/grub-installer.fixed 2015-05-12 15:13:49.002358498 -0400
>>> @@ -134,7 +134,7 @@
>>> # This should probably be rewritten using udevadm or similar.
>>> device_to_disk () {
>>> echo "$1" | \
>>> - sed 's:\(/dev/\(cciss\|ida\|rs\)/c[0-9]d[0-9][0-9]*\|/dev/mmcblk[0-9]\|/dev/\(ad\|ada\|da\)[0-9]\+\|/dev/[hs]d[0-9]\+\|/dev/[a-z]\+\).*:\1:'
>>> + sed 's:\(/dev/nvme[0-9]n[0-9]\|/dev/\(cciss\|ida\|rs\)/c[0-9]d[0-9][0-9]*\|/dev/mmcblk[0-9]\|/dev/\(ad\|ada\|da\)[0-9]\+\|/dev/[hs]d[0-9]\+\|/dev/[a-z]\+\).*:\1:'
>>
>> I moved the addition to the end, which makes visual inspection slightly
>> easier.
>
> There’s a problem with this: the preceding pattern "/dev/[a-z]\+" will match "/dev/nvme.*”, so the nvme pattern will never be reached.
Good catch, pushed this extra commit accordingly:
https://anonscm.debian.org/cgit/d-i/grub-installer.git/commit/?id=22a8aef
>>> # Run update-grub in $ROOT
>>> @@ -252,7 +252,7 @@
>>> /dev/mapper)
>>> disc_offered_devfs="$bootfs"
>>> ;;
>>> - /dev/[hsv]d[a-z0-9]|/dev/xvd[a-z]|/dev/cciss/c[0-9]d[0-9]*|/dev/ida/c[0-9]d[0-9]*|/dev/rs/c[0-9]d[0-9]*|/dev/mmcblk[0-9]|/dev/ad[0-9]*|/dev/da[0-9]*)
>>> + /dev/nvme[0-9]n[0-9]|/dev/[hsv]d[a-z0-9]|/dev/xvd[a-z]|/dev/cciss/c[0-9]d[0-9]*|/dev/ida/c[0-9]d[0-9]*|/dev/rs/c[0-9]d[0-9]*|/dev/mmcblk[0-9]|/dev/ad[0-9]*|/dev/da[0-9]*)
>>
>> Same story here.
>
> Looks like there is no general pattern that will match “/dev/nvme.*”
> above, so putting it at the end isn’t a problem.
Adjusted for consistency.
Thanks again!
Mraw,
KiBi.
-----
Reply to: