I have a scheme code like (define rpi-boot-partition (partition (size (* 128 (expt 2 20))) (label "BOOT") (file-system "vfat") (flags '()) (initializer (gexp initialize-efi-partition)))) (define rpi-root-partition (partition (size 'guess) (label "RASPIROOT") (file-system "ext4") (flags '(boot)) (initializer (gexp initialize-root-partition)))) (define raspberry-pi-image (image (format 'disk-image) (partitions (list rpi-boot-partition rpi-root-partition)))) The output is like that: $ fdisk -l /gnu/store/hnsfs5a161f5hvymg7ar541qrml62yvv-raspberry-pi-barebones-raw-image Device Boot Start End Sectors Size Id Type /gnu/store/hnsfs5a161f5hvymg7ar541qrml62yvv-raspberry-pi-barebones-raw-image1 1 262144 262144 128M 83 Linux /gnu/store/hnsfs5a161f5hvymg7ar541qrml62yvv-raspberry-pi-barebones-raw-image2 262145 3583688 3321544 1.6G 83 Linux No boot flag is set on the first partition. The file system seems to be incorrect (ext* instead of vfat)