[PATCH] installer: Update to Guile-Parted 0.0.2 release.

DoneSubmitted by Mathieu Othacehe.
Details
3 participants
  • Ludovic Courtès
  • Mathieu Othacehe
  • Ricardo Wurmus
Owner
unassigned
Severity
normal
M
M
Mathieu Othacehe wrote on 24 Sep 2019 14:26
(address . guix-patches@gnu.org)(name . Mathieu Othacehe)(address . m.othacehe@gmail.com)
20190924122603.25583-1-m.othacehe@gmail.com
* gnu/installer/parted.scm (data-partition?, metadata-partition?,freespace-partition?, normal-partition?, extended-partition?,logical-partition?): Remove, as now provided by Guile-Parted.* gnu/installer/newt/partition.scm (run-disk-page): Remove disk-destroy calls,replace disk-delete-all by disk-remove-all-partitions anddisk-delete-partition by disk-remove-partition*.--- gnu/installer/newt/partition.scm | 9 ++---- gnu/installer/parted.scm | 48 +++----------------------------- 2 files changed, 7 insertions(+), 50 deletions(-)
Toggle diff (149 lines)diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scmindex 7a9f11a15e..74e9473171 100644--- a/gnu/installer/newt/partition.scm+++ b/gnu/installer/newt/partition.scm@@ -587,7 +587,6 @@ edit it." disks)) (new-user-partitions (remove-user-partition-by-disk user-partitions item)))- (disk-destroy item) `((disks . ,(cons new-disk other-disks)) (user-partitions . ,new-user-partitions))) `((disks . ,disks)@@ -625,7 +624,7 @@ edit it." info-text))) (case result ((1)- (disk-delete-all item)+ (disk-remove-all-partitions item) `((disks . ,disks) (user-partitions . ,(remove-user-partition-by-disk user-partitions item))))@@ -649,7 +648,7 @@ edit it." (let ((new-user-partitions (remove-user-partition-by-partition user-partitions item)))- (disk-delete-partition disk item)+ (disk-remove-partition* disk item) `((disks . ,disks) (user-partitions . ,new-user-partitions)))) (else@@ -696,9 +695,7 @@ by pressing the Exit button.~%~%"))) #f)) (check-user-partitions user-partitions)))) (if user-partitions-ok?- (begin- (for-each (cut disk-destroy <>) disks)- user-partitions)+ user-partitions (run-disk-page disks user-partitions #:guided? guided?))) (let* ((result-disks (assoc-ref result 'disks))diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scmindex 682e233d9f..3439f211e2 100644--- a/gnu/installer/parted.scm+++ b/gnu/installer/parted.scm@@ -64,13 +64,7 @@ user-partition-parted-object find-esp-partition- data-partition?- metadata-partition?- freespace-partition? small-freespace-partition?- normal-partition?- extended-partition?- logical-partition? esp-partition? boot-partition? default-esp-mount-point@@ -172,24 +166,6 @@ "Find and return the ESP partition among PARTITIONS." (find esp-partition? partitions)) -(define (data-partition? partition)- "Return #t if PARTITION is a partition dedicated to data (by opposition to-freespace, metadata and protected partition types), return #f otherwise."- (let ((type (partition-type partition)))- (not (any (lambda (flag)- (member flag type))- '(free-space metadata protected)))))--(define (metadata-partition? partition)- "Return #t if PARTITION is a metadata partition, #f otherwise."- (let ((type (partition-type partition)))- (member 'metadata type)))--(define (freespace-partition? partition)- "Return #t if PARTITION is a free-space partition, #f otherwise."- (let ((type (partition-type partition)))- (member 'free-space type)))- (define* (small-freespace-partition? device partition #:key (max-size MEBIBYTE-SIZE))@@ -200,21 +176,6 @@ inferior to MAX-SIZE, #f otherwise." (device-sector-size device)))) (< size max-sector-size))) -(define (normal-partition? partition)- "return #t if partition is a normal partition, #f otherwise."- (let ((type (partition-type partition)))- (member 'normal type)))--(define (extended-partition? partition)- "return #t if partition is an extended partition, #f otherwise."- (let ((type (partition-type partition)))- (member 'extended type)))--(define (logical-partition? partition)- "Return #t if PARTITION is a logical partition, #f otherwise."- (let ((type (partition-type partition)))- (member 'logical type)))- (define (partition-user-type partition) "Return the type of PARTITION, to be stored in the TYPE field of <user-partition> record. It can be 'normal, 'extended or 'logical."@@ -813,7 +774,7 @@ cause them to cross." (define (rmpart disk number) "Remove the partition with the given NUMBER on DISK." (let ((partition (disk-get-partition disk number)))- (disk-remove-partition disk partition)))+ (disk-remove-partition* disk partition))) ;;@@ -928,12 +889,12 @@ exists." (if has-extended? ;; msdos - remove everything.- (disk-delete-all disk)+ (disk-remove-all-partitions disk) ;; gpt - remove everything but esp if it exists. (for-each (lambda (partition) (and (data-partition? partition)- (disk-remove-partition disk partition)))+ (disk-remove-partition* disk partition))) non-boot-partitions)) (let* ((start-partition@@ -1348,7 +1309,7 @@ USER-PARTITIONS, or return nothing." (define (init-parted) "Initialize libparted support."- (probe-all-devices)+ (probe-all-devices!) (exception-set-handler (lambda (exception) EXCEPTION-OPTION-UNHANDLED))) @@ -1364,7 +1325,6 @@ the devices not to be used before returning." ;; https://mail.gnome.org/archives/commits-list/2013-March/msg18423.html. (let ((device-file-names (map device-path devices))) (for-each force-device-sync devices)- (free-all-devices) (for-each (lambda (file-name) (let ((in-use? (with-delay-device-in-use? file-name))) (and in-use?-- 2.23.0
M
M
Mathieu Othacehe wrote on 24 Sep 2019 14:28
installer: Update to Guile-Parted 0.0.2 release.
(address . 37497@debbugs.gnu.org)
87y2ydq3n8.fsf@gmail.com
Hello,
Here's a patch to update the installer to the new Guile-Parted release. Itgets rid of the "delete" functions, that are now taken care of by pointerfinalizers.
I tested it on an x64 VM without seeing any regression, but sadly its hard tocover all cases. I'll update the Guile-Parted when this gets pushed.
Thanks,
Mathieu
L
L
Ludovic Courtès wrote on 25 Sep 2019 14:54
(name . Mathieu Othacehe)(address . m.othacehe@gmail.com)(address . 37497@debbugs.gnu.org)
87k19wmt87.fsf@gnu.org
Hi Mathieu,
Mathieu Othacehe <m.othacehe@gmail.com> skribis:
Toggle quote (8 lines)> Here's a patch to update the installer to the new Guile-Parted release. It> gets rid of the "delete" functions, that are now taken care of by pointer> finalizers.
> gnu/installer/newt/partition.scm | 9 ++----> gnu/installer/parted.scm | 48 +++-----------------------------> 2 files changed, 7 insertions(+), 50 deletions(-)
Nice, LGTM!
Toggle quote (3 lines)> I tested it on an x64 VM without seeing any regression, but sadly its hard to> cover all cases. I'll update the Guile-Parted when this gets pushed.
I guess you’ll have to push the ‘guile-parted’ package update rightbefore this patch, right?
Thanks,Ludo’.
M
M
Mathieu Othacehe wrote on 25 Sep 2019 16:04
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 37497@debbugs.gnu.org)
87v9tgpj3w.fsf@gmail.com
Hey,
Toggle quote (3 lines)> I guess you’ll have to push the ‘guile-parted’ package update right> before this patch, right?
Yes, done as a3246602a2 and 70c7b7c799. Thanks for the review.
Mathieu
R
R
Ricardo Wurmus wrote on 27 Sep 2019 07:54
(address . 37497-done@debbugs.gnu.org)
87ef02gu85.fsf@elephly.net
Mathieu Othacehe <m.othacehe@gmail.com> writes:
Toggle quote (5 lines)>> I guess you’ll have to push the ‘guile-parted’ package update right>> before this patch, right?>> Yes, done as a3246602a2 and 70c7b7c799. Thanks for the review.
Thanks. Closing.
-- Ricardo
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 37497@debbugs.gnu.org