[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
03/04: scripts: Adjust disk-space warning functionality.
From: |
guix-commits |
Subject: |
03/04: scripts: Adjust disk-space warning functionality. |
Date: |
Thu, 27 Feb 2020 18:10:26 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit 71c3c3df92375ca9b4bd28b2be90dda67288fa5c
Author: Ludovic Courtès <address@hidden>
AuthorDate: Thu Feb 27 23:56:14 2020 +0100
scripts: Adjust disk-space warning functionality.
This is a followup to fb7eec3a84afd7464027d2492a8b551a61df2725.
* guix/scripts.scm (warn-about-disk-space): Do not multiply
ABSOLUTE-THRESHOLD-IN-BYTES by 2^30. Compare AVAILABLE to the max of
RELATIVE-THRESHOLD-IN-BYTES and ABSOLUTE-THRESHOLD-IN-BYTES, not the
min. Display AVAILABLE divided by 2^30.
---
guix/scripts.scm | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/guix/scripts.scm b/guix/scripts.scm
index 7ad1d51..e235c8d 100644
--- a/guix/scripts.scm
+++ b/guix/scripts.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès
<address@hidden>
+;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019, 2020 Ludovic Courtès
<address@hidden>
;;; Copyright © 2014 Deck Pickard <address@hidden>
;;; Copyright © 2015, 2016 Alex Kost <address@hidden>
;;;
@@ -228,17 +228,19 @@ Show what and how will/would be built."
(thresholds (%disk-space-warning)))
"Display a hint about 'guix gc' if less than THRESHOLD of /gnu/store is
available.
-THRESHOLD is a pair of (ABSOLUTE-THRESHOLD RELATIVE-THRESHOLD)."
+THRESHOLDS is a pair (ABSOLUTE-THRESHOLD . RELATIVE-THRESHOLD)."
+ (define GiB (expt 2 30))
+
(let* ((stats (statfs (%store-prefix)))
(block-size (file-system-block-size stats))
(available (* block-size (file-system-blocks-available stats)))
(total (* block-size (file-system-block-count stats)))
(relative-threshold-in-bytes (* total (cadr thresholds)))
- (absolute-threshold-in-bytes (* 1024 1024 1024 (car thresholds))))
- (when (< available (min relative-threshold-in-bytes
+ (absolute-threshold-in-bytes (car thresholds)))
+ (when (< available (max relative-threshold-in-bytes
absolute-threshold-in-bytes))
(warning (G_ "only ~,1f GiB of free space available on ~a~%")
- available (%store-prefix))
+ (/ available 1. GiB) (%store-prefix))
(display-hint (format #f (G_ "Consider deleting old profile
generations and collecting garbage, along these lines: