Hi, Tim Magee <timo...@eastlincoln.net> skribis:
> In ./gnu/installer/parted.scm: > 1258:19 19 (user-partition->file-system _) > In gnu/system/uuid.scm: > 317:2 18 (uuid->string . _) > In ice-9/boot-9.scm: > 1669:16 17 (raise-exception _ #:continuable? _) > 1667:16 16 (raise-exception _ #:continuable? _) > 1667:16 15 (raise-exception _ #:continuable? _) > 1667:16 14 (raise-exception _ #:continuable? _) > 1667:16 13 (raise-exception _ #:continuable? _) > 1667:16 12 (raise-exception _ #:continuable? _) > 1667:16 11 (raise-exception _ #:continuable? _) > 1667:16 10 (raise-exception _ #:continuable? _) > 1667:16 9 (raise-exception _ #:continuable? _) > 1667:16 8 (raise-exception _ #:continuable? _) > 1669:16 7 (raise-exception _ #:continuable? _) > 1764:13 6 (_ #<&compound-exception components: (#<&error> #<&origin: > "match"> #<&message message: "no matching pattern"> #<&irritants irritants: > (#f ext4)> #<&exception-with-kind-and-arg...>) > In ice-9/eval.scm: > 619:8 5 (_ #(#(#<directory (guile-user) 7f10d0fb6f00> #<<installer> > name: newt init: #<procedure init ()> exit: #<procedure exit ()> exit-error: > #<procedure exit-error (file key args)> f...>) ...)) > 619:8 4 (_ #(#(#(#<directory (guile-user) 7f10d0fb6f00> #<<installer> > name: newt init: #<procedure init ()> exit: #<procedure exit ()> exit-error: > #<procedure exit-error (file key args)> f...>) ...)) > In ice-9/ports.scm: > 463:17 3 (call-with-output-file _ _ #:binary _ #:encoding _) > In ice-9/eval.scm: > 691:9 2 (_ #(#(#<directory (guile-user) 7f10d0fbf00> match-error > ("match" "no matching pattern" (#f ext4))) #<output: > /tmp/last-installer-error 19>)) > 159:9 1 (_ #(#(#<directory (guile-user) 7f10d0fbf00> match-error > ("match" "no matching pattern" (#f ext4))) #<output: > /tmp/last-installer-error 19>)) > In unknown file: > 0 (make-stack #t) > ice-9/eval.scm:159:9: Throw to key `match-error' with args `("match" "no > matching pattern" (#f ext4))'. Apparently what happens here is that ‘read-partition-uuid’, called by ‘user-partition->file-system’, returns #f, and that value is then passed to ‘uuid->string’. There are two ways ‘read-partition-uuid’ can return #f: 1. the partition doesn’t have one of the types listed in ‘%partition-uuid-readers’; 2. the partition does not exist or is EIO (see use of ‘ENOENT-safe’ in ‘partition-field-reader’). So most likely the problem is #2. Now, when we reach this code (from ‘user-partitions->configuration’), partitions have been created. I wonder if there’s a possibility that the kernel hasn’t yet updated /dev by the time we reach this? ‘free-parted’ is supposed to avoid that though. WDYT, Mathieu? Ludo’.