Round 324: Parted ext, Fdisk ext, Gdisk ext, Sfdisk ext, Blkid ext (20 commands)

ober

d7329979360c4aba154385afbeab96b690eea7a2

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index f421b39..7e4cc07 100644
--- a/docs/jemacs-vs-emacs.md
+++ b/docs/jemacs-vs-emacs.md
@@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features 
 | ebib-import-file | :orange_circle: | Import file into Ebib |
 | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer |
 
+### Round 324 — Parted ext, Fdisk ext, Gdisk ext, Sfdisk ext, Blkid ext
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `parted-print` | :orange_circle: | Print partition table |
+| `parted-mkpart` | :orange_circle: | Create partition |
+| `parted-rm` | :orange_circle: | Remove partition |
+| `parted-align` | :orange_circle: | Check alignment |
+| `fdisk-info` | :orange_circle: | Show disk info |
+| `fdisk-create` | :orange_circle: | Create partition |
+| `fdisk-delete` | :orange_circle: | Delete partition |
+| `fdisk-type` | :orange_circle: | Set partition type |
+| `gdisk-print` | :orange_circle: | Print GPT table |
+| `gdisk-create` | :orange_circle: | Create GPT partition |
+| `gdisk-delete` | :orange_circle: | Delete GPT partition |
+| `gdisk-verify` | :orange_circle: | Verify GPT |
+| `sfdisk-dump` | :orange_circle: | Dump partition table |
+| `sfdisk-restore` | :orange_circle: | Restore partition table |
+| `sfdisk-list` | :orange_circle: | List partitions |
+| `sfdisk-delete` | :orange_circle: | Delete partition |
+| `blkid-show` | :orange_circle: | Show block devices |
+| `blkid-probe` | :orange_circle: | Probe device |
+| `blkid-cache` | :orange_circle: | Show blkid cache |
+| `blkid-uuid` | :orange_circle: | Look up UUID |
+
 ### Round 323 — Grub ext, Efibootmgr ext, Mokutil ext, Sbsign ext, Fwupd ext
 
 | Feature | Status | Notes |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index 6414ec1..6f19d30 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -24213,4 +24213,60 @@
 
 (def (cmd-fwupd-security app)
   (let* ((echo (app-state-echo app)))
-    (echo-message! echo "Fwupd: showing security attributes")))
\ No newline at end of file
+    (echo-message! echo "Fwupd: showing security attributes")))
+
+;;; Round 324 — Gdisk ext, Sfdisk ext, Blkid ext (batch 2)
+
+(def (cmd-gdisk-delete app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device and partition: "
+      (lambda (spec)
+        (echo-message! echo (str "Gdisk: deleting partition " spec))))))
+
+(def (cmd-gdisk-verify app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Gdisk: verifying GPT on " dev))))))
+
+(def (cmd-sfdisk-dump app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Sfdisk: dumping partition table of " dev))))))
+
+(def (cmd-sfdisk-restore app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device and backup: "
+      (lambda (spec)
+        (echo-message! echo (str "Sfdisk: restoring " spec))))))
+
+(def (cmd-sfdisk-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Sfdisk: listing partitions")))
+
+(def (cmd-sfdisk-delete app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device and partition: "
+      (lambda (spec)
+        (echo-message! echo (str "Sfdisk: deleting " spec))))))
+
+(def (cmd-blkid-show app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Blkid: showing all block devices")))
+
+(def (cmd-blkid-probe app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Blkid: probing " dev))))))
+
+(def (cmd-blkid-cache app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Blkid: showing cache")))
+
+(def (cmd-blkid-uuid app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "UUID: "
+      (lambda (uuid)
+        (echo-message! echo (str "Blkid: looking up UUID " uuid))))))
\ No newline at end of file
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index a141b69..4f9858f 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -24908,3 +24908,65 @@
       (lambda (key)
         (echo-message! echo (str "MOK: importing " key))))))
 
+;;; Round 324 — Parted ext, Fdisk ext, Gdisk ext, Sfdisk ext, Blkid ext (batch 1)
+
+(def (cmd-parted-print app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Parted: printing partition table of " dev))))))
+
+(def (cmd-parted-mkpart app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device and type: "
+      (lambda (spec)
+        (echo-message! echo (str "Parted: creating partition " spec))))))
+
+(def (cmd-parted-rm app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device and partition number: "
+      (lambda (spec)
+        (echo-message! echo (str "Parted: removing partition " spec))))))
+
+(def (cmd-parted-align app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Parted: checking alignment on " dev))))))
+
+(def (cmd-fdisk-info app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Fdisk: showing info for " dev))))))
+
+(def (cmd-fdisk-create app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Fdisk: creating partition on " dev))))))
+
+(def (cmd-fdisk-delete app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device and partition: "
+      (lambda (spec)
+        (echo-message! echo (str "Fdisk: deleting partition " spec))))))
+
+(def (cmd-fdisk-type app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Partition and type: "
+      (lambda (spec)
+        (echo-message! echo (str "Fdisk: setting type " spec))))))
+
+(def (cmd-gdisk-print app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Gdisk: printing GPT table of " dev))))))
+
+(def (cmd-gdisk-create app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Device: "
+      (lambda (dev)
+        (echo-message! echo (str "Gdisk: creating partition on " dev))))))
+
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index fc26130..00fc73b 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -8221,4 +8221,25 @@
   (register-command! 'fwupd-update cmd-fwupd-update)
   (register-command! 'fwupd-history cmd-fwupd-history)
   (register-command! 'fwupd-security cmd-fwupd-security)
+  ;; Round 324
+  (register-command! 'parted-print cmd-parted-print)
+  (register-command! 'parted-mkpart cmd-parted-mkpart)
+  (register-command! 'parted-rm cmd-parted-rm)
+  (register-command! 'parted-align cmd-parted-align)
+  (register-command! 'fdisk-info cmd-fdisk-info)
+  (register-command! 'fdisk-create cmd-fdisk-create)
+  (register-command! 'fdisk-delete cmd-fdisk-delete)
+  (register-command! 'fdisk-type cmd-fdisk-type)
+  (register-command! 'gdisk-print cmd-gdisk-print)
+  (register-command! 'gdisk-create cmd-gdisk-create)
+  (register-command! 'gdisk-delete cmd-gdisk-delete)
+  (register-command! 'gdisk-verify cmd-gdisk-verify)
+  (register-command! 'sfdisk-dump cmd-sfdisk-dump)
+  (register-command! 'sfdisk-restore cmd-sfdisk-restore)
+  (register-command! 'sfdisk-list cmd-sfdisk-list)
+  (register-command! 'sfdisk-delete cmd-sfdisk-delete)
+  (register-command! 'blkid-show cmd-blkid-show)
+  (register-command! 'blkid-probe cmd-blkid-probe)
+  (register-command! 'blkid-cache cmd-blkid-cache)
+  (register-command! 'blkid-uuid cmd-blkid-uuid)
 )