diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-03-10 15:21:48 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-03-10 18:16:39 +0100 |
commit | 09844816c77caaa60f4149f99a34733966724627 (patch) | |
tree | 87406f3b9dc19d73011bde85e49f024180b6821a /gnu/system | |
parent | 98619142b8c54287136216d0008871f9170a1808 (diff) | |
download | guix-09844816c77caaa60f4149f99a34733966724627.tar guix-09844816c77caaa60f4149f99a34733966724627.tar.gz |
vm: Compute UUIDs truly deterministically.
This is a followup to 1540075c790dfaeff52c93392f2fc63b9e23b77e.
The mistake had no effect on prior Guile versions but it's visible since
Guile 3.0.1 and the fix for <https://bugs.gnu.org/39634>.
* gnu/system/vm.scm (operating-system-uuid): Hash a list of
'file-system-digest' values, not the 'file-system-type' procedure.
Diffstat (limited to 'gnu/system')
-rw-r--r-- | gnu/system/vm.scm | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 03a511cdde..d1c131ecb4 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> @@ -629,7 +629,8 @@ TYPE (one of 'iso9660 or 'dce). Return a UUID object." 'iso9660)) (bytevector->uuid (uint-list->bytevector - (list (hash file-system-type + (list (hash (map file-system-digest + (operating-system-file-systems os)) (- (expt 2 32) 1)) (hash (operating-system-host-name os) (- (expt 2 32) 1)) |