unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#35722: Filesystem error in the installer
@ 2019-05-13 22:01 Graham Lee
  2019-05-14 16:30 ` Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Graham Lee @ 2019-05-13 22:01 UTC (permalink / raw)
  To: 35722

[-- Attachment #1: Type: text/plain, Size: 1033 bytes --]

Hi folks,

I'm trying to install from the GNU GUIX 1.0.0 ISO, which I've copied to
USB. I pick the graphical installer, run through the language,
timezone, and keyboard choices. Then I either pick "guided" or "guided
with encryption" partition scheme, and I choose one big partition
instead of separate /home. Then the error appears.

I've attached a scaled down photo of the trace, as that was the easiest
way to get it off of the system I'm running on (which isn't networked
at the time of error). For clarity, the error message is:

ice-9/eval.scm:159:9: Unhandled fat16 fs-type

My hardware is a Dell Latitude E7450 and I'm trying to use a (currently
GPT-partitioned) Samsung SSD PM871 mSATA 256GB disk. If the installer
is confused by the existing FAT16 partition, that's the EFI partition.

Presumably I could work around it by repartitioning and removing the
EFI partition before running the installer. If so, should I switch to
an MBR partition table? Or is there a fix, or another workaround?

Thanks for your help,
Graham.

[-- Attachment #2: guix-installer-error.JPG --]
[-- Type: image/jpeg, Size: 249177 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#35722: Filesystem error in the installer
  2019-05-13 22:01 bug#35722: Filesystem error in the installer Graham Lee
@ 2019-05-14 16:30 ` Ludovic Courtès
  2019-05-14 16:50   ` Danny Milosavljevic
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2019-05-14 16:30 UTC (permalink / raw)
  To: Graham Lee; +Cc: 35722-done

Hello,

Graham Lee <graham@iamleeg.com> skribis:

> I'm trying to install from the GNU GUIX 1.0.0 ISO, which I've copied to
> USB. I pick the graphical installer, run through the language,
> timezone, and keyboard choices. Then I either pick "guided" or "guided
> with encryption" partition scheme, and I choose one big partition
> instead of separate /home. Then the error appears.
>
> I've attached a scaled down photo of the trace, as that was the easiest
> way to get it off of the system I'm running on (which isn't networked
> at the time of error). For clarity, the error message is:
>
> ice-9/eval.scm:159:9: Unhandled fat16 fs-type

I tried in a VM to provide a disk with a FAT16 partition to reproduce
this bug.  I could hit this particular error when choosing the “manual”
partitioning method and then selecting the FAT16 partition.  However I
could not reproduce the bug when choosing the “guided” methods.

I think we don’t need the installer to be able to create FAT16
partitions; we merely need it to recognize and gracefully handle them
when they exist (which I think is quite unusual: the EFI System
Partition seems to be FAT32 usually, no?).

Anyway I think this is fixed by commit
628d09ae53047ea666f4f84ae5e5be911647fe8c, which Danny just pushed.  :-)

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#35722: Filesystem error in the installer
  2019-05-14 16:30 ` Ludovic Courtès
@ 2019-05-14 16:50   ` Danny Milosavljevic
  2019-05-14 17:00     ` Danny Milosavljevic
  2019-05-14 18:20     ` Danny Milosavljevic
  0 siblings, 2 replies; 7+ messages in thread
From: Danny Milosavljevic @ 2019-05-14 16:50 UTC (permalink / raw)
  Cc: Mathieu Othacehe, 35722-done, Graham Lee

[-- Attachment #1: Type: text/plain, Size: 1207 bytes --]

> Anyway I think this is fixed by commit
> 628d09ae53047ea666f4f84ae5e5be911647fe8c, which Danny just pushed.  :-)

Yeah, but I fixed it by adding the file system type--which is kinda a sledgehammer
approach.  We really don't want to include every file system known to man in the
installer.  In this case we had fat32 already--which uses the same package as
fat16 anyway.

Maybe it would be better long term to make it impossible to edit those
entries that we don't know how to handle, while still not crashing/restarting
the installer.

Right now, gnu/installer/newt/partition.scm:604 (listbox-action) will fail
because partition->user-partition fails.  The former should probably be
modified such that it just shows an error message dialog (without
stacktrace) and lets the user continue on his way after he dismisses it.

Unfortunately, I don't know enough about newt to do that myself.

The naming throws me off, too.  What's a user-partition compared to a
partition? *scratches head*

partition-filesystem-user-type does some manual mapping of parted
file system names to "user" names (that's what actually fails).
Sounds like a lot of extra complexity to me.  Is it worth it?

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#35722: Filesystem error in the installer
  2019-05-14 16:50   ` Danny Milosavljevic
@ 2019-05-14 17:00     ` Danny Milosavljevic
  2019-05-14 17:37       ` Graham Lee
  2019-05-14 18:20     ` Danny Milosavljevic
  1 sibling, 1 reply; 7+ messages in thread
From: Danny Milosavljevic @ 2019-05-14 17:00 UTC (permalink / raw)
  Cc: Mathieu Othacehe, 35722-done, Graham Lee

[-- Attachment #1: Type: text/plain, Size: 172 bytes --]

Or just not let the user select "Format this partition" if we don't know how to
format it.
Also not let the user specify a mount point if we don't know how to mount it.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#35722: Filesystem error in the installer
  2019-05-14 17:00     ` Danny Milosavljevic
@ 2019-05-14 17:37       ` Graham Lee
  2019-05-14 18:42         ` Danny Milosavljevic
  0 siblings, 1 reply; 7+ messages in thread
From: Graham Lee @ 2019-05-14 17:37 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: Mathieu Othacehe, 35722-done

Hi,

> On 14 May 2019, at 18:00, Danny Milosavljevic <dannym@scratchpost.org> wrote:
> 
> Or just not let the user select "Format this partition" if we don't know how to
> format it.
> Also not let the user specify a mount point if we don't know how to mount it.

Thanks Danny, I appreciate you pushing a fix. I will find out how to make an updated installer and try again :).

Just to clear up, though, I was going through the guided partitioning, so didn’t either select to format the partition or try to mount it. It was already there, I have no opinion on it except that if it disappears my EFI probably breaks :). But this means that I’m not sure the fixes you described above would have helped in my situation. Also I would expect to install EFI-based GRUB so if I want to do that from the GUIX installer (and not, say, boot some other GNU/Linux installer to install GRUB), I would need to mount the FAT16 partition, or I [or the guided partitioning system] would need to know to recreate it as FAT32.

I understand that there are firmwares out there (I don’t know about mine) that won’t recognise small FAT partitions unless they are FAT16. On the other hand, the UEFI specification seems to expect the partition to be FAT32. So this is a case of different things working in theory and in practice. Also in practice: mkfs.fat will make small filesystems FAT16 by default, and some distros (notably, Fedora, which is what my target machine currently runs) don’t tell it otherwise. So even if the EFI partition is always FAT32 in theory, there will be practical cases where it’s FAT16.

Thanks again,
Graham.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#35722: Filesystem error in the installer
  2019-05-14 16:50   ` Danny Milosavljevic
  2019-05-14 17:00     ` Danny Milosavljevic
@ 2019-05-14 18:20     ` Danny Milosavljevic
  1 sibling, 0 replies; 7+ messages in thread
From: Danny Milosavljevic @ 2019-05-14 18:20 UTC (permalink / raw)
  Cc: Mathieu Othacehe, 35722-done, Graham Lee

[-- Attachment #1: Type: text/plain, Size: 952 bytes --]

Root cause analysis:

                (user-partitions (append
                                  (auto-partition disk #:scheme scheme) 
                                  (create-special-user-partitions
                                   (disk-partitions disk))))) <---


(define (create-special-user-partitions partitions)
  "Return a list with a <user-partition> record describing the ESP partition
found in PARTITIONS, if any."
  (filter-map (lambda (partition)
                (and (esp-partition? partition)
                     (partition->user-partition partition))) <----
              partitions))

I think create-special-user-partitions and the form above is automatically
trying to keep existing UEFI ESP partitions of the user.

And partition->user-partition failed for (existing) fat16 partitions.

So the fix of adding fat16 was definitely the right one for that specific
file system type.

It should be fine now.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#35722: Filesystem error in the installer
  2019-05-14 17:37       ` Graham Lee
@ 2019-05-14 18:42         ` Danny Milosavljevic
  0 siblings, 0 replies; 7+ messages in thread
From: Danny Milosavljevic @ 2019-05-14 18:42 UTC (permalink / raw)
  To: Graham Lee; +Cc: Mathieu Othacehe, 35722-done

[-- Attachment #1: Type: text/plain, Size: 1419 bytes --]

Hi Graham,

On Tue, 14 May 2019 18:37:38 +0100
Graham Lee <graham@iamleeg.com> wrote:

> Thanks Danny, I appreciate you pushing a fix. I will find out how to make an updated installer and try again :).

> Just to clear up, though, I was going through the guided partitioning, so didn’t either select to format the partition or try to mount it. 

Thanks, good to know.  So the bug was much worse and would basically have
prevented anyone that has this kind of EFI from using our guided partitioning.

>But this means that I’m not sure the fixes you described above would have helped in my situation.

It would have.

(I still think that it would be better not to do the silly
"parted file system type -> user file system type" dance in the first place
but maybe there is a good reason for it.  In any case, it should work now)

For the record (and for future problems like that), I went and implemented
everything we need for fat16:

* Creating
* Mounting
* Parted file system type -> user file system type conversion
* Showing that file system type in the GUI

When actually that would have been enough:

* Parted file system type -> user file system type conversion

>Also I would expect to install EFI-based GRUB so if I want to do that from the GUIX installer (and not, say, boot some other GNU/Linux installer to install GRUB), I would need to mount the FAT16 partition

Yes.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-05-14 18:44 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-13 22:01 bug#35722: Filesystem error in the installer Graham Lee
2019-05-14 16:30 ` Ludovic Courtès
2019-05-14 16:50   ` Danny Milosavljevic
2019-05-14 17:00     ` Danny Milosavljevic
2019-05-14 17:37       ` Graham Lee
2019-05-14 18:42         ` Danny Milosavljevic
2019-05-14 18:20     ` Danny Milosavljevic

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).