summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Vincent <quentin_vincent@disroot.org>2025-06-15 07:35:04 +0200
committerDanny Milosavljevic <dannym@friendly-machines.com>2025-06-16 00:25:54 +0200
commitf6b65101dcb9a679eaf74fd235b53de2f4586ac5 (patch)
tree2e4b24e15b71c7229486d3f6d2b08d5835285bcb
parente417692c4b4b6852451b3fe5b15c54ad397a6b1a (diff)
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>
-rw-r--r--gnu/build/file-systems.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm
index 6fd9f95093..c506a4911f 100644
--- a/gnu/build/file-systems.scm
+++ b/gnu/build/file-systems.scm
@@ -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