summaryrefslogtreecommitdiff
path: root/gnu/installer/final.scm
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2022-01-15 14:50:10 +0100
committerMathieu Othacehe <othacehe@gnu.org>2022-02-02 16:46:44 +0100
commit112ef30b84744872b3a7617d9e54b3df5db95560 (patch)
tree3f097eb44042246716e683c3877e8a0f2d38ecc0 /gnu/installer/final.scm
parent41eb0f01fcf05902be9972cc993fdb332edb928c (diff)
downloadguix-patches-112ef30b84744872b3a7617d9e54b3df5db95560.tar
guix-patches-112ef30b84744872b3a7617d9e54b3df5db95560.tar.gz
installer: Turn passwords into opaque records.
* gnu/installer/user.scm (<secret>, secret?, make-secret, secret-content): Add opaque <secret> record that boxes its contents, with a custom printer that doesn't display anything. * gnu/installer/newt/user.scm (run-user-add-page, run-user-page): Box it. * gnu/installer/final.scm (create-user-database): Unbox it. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Diffstat (limited to 'gnu/installer/final.scm')
-rw-r--r--gnu/installer/final.scm5
1 files changed, 3 insertions, 2 deletions
diff --git a/gnu/installer/final.scm b/gnu/installer/final.scm
index 63e5073ff4..2087536502 100644
--- a/gnu/installer/final.scm
+++ b/gnu/installer/final.scm
@@ -85,8 +85,9 @@ USERS."
(uid (if root? 0 #f))
(home-directory
(user-home-directory user))
- (password (crypt (user-password user)
- (salt)))
+ (password (crypt
+ (secret-content (user-password user))
+ (salt)))
;; We need a string here, not a file-like, hence
;; this choice.