file-systems: Support UUIDs for FAT12.

* gnu/build/file-systems.scm (fat16-superblock?): Support FAT12.

Change-Id: Ia14899134e02bda54b0796efb0bc1c6f89e95c0d
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
This commit is contained in:
Quentin Vincent 2025-06-15 07:35:04 +02:00 committed by Danny Milosavljevic
parent e417692c4b
commit f6b65101dc
No known key found for this signature in database
GPG key ID: E71A35542C30BAA5

View file

@ -608,13 +608,16 @@ using the least destructive approach."
;;;
;;; FAT16 file systems.
;;; FAT16/FAT12 file systems.
;;;
(define (fat16-superblock? sblock)
"Return #t when SBLOCK is a fat16 boot record."
(bytevector=? (sub-bytevector sblock 54 8)
(string->utf8 "FAT16 ")))
"Return #t when SBLOCK is a fat16 or fat12 boot record."
(let ((boot-record (sub-bytevector sblock 54 8)))
(or (bytevector=? boot-record
(string->utf8 "FAT16 "))
(bytevector=? boot-record
(string->utf8 "FAT12 ")))))
(define (read-fat16-superblock device)
"Return the raw contents of DEVICE's fat16 superblock as a bytevector, or