mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
home: environment-variables: Fix escaping.
* gnu/home/services.scm (environment-variable-shell-definitions): Fix escaping. * tests/guix-home.sh: Add STRING_WITH_ESCAPES environment variable and test its value. Reported-by: elevnkb
This commit is contained in:
parent
2acce55a00
commit
35ecbb418c
2 changed files with 6 additions and 3 deletions
|
@ -192,7 +192,7 @@ (define (environment-variable-shell-definitions variables)
|
||||||
(list->string (string-fold-right
|
(list->string (string-fold-right
|
||||||
(lambda (chr lst)
|
(lambda (chr lst)
|
||||||
(if (memq chr quoted-chars)
|
(if (memq chr quoted-chars)
|
||||||
(append (list chr #\\) lst)
|
(append (list #\\ chr) lst)
|
||||||
(cons chr lst)))
|
(cons chr lst)))
|
||||||
'()
|
'()
|
||||||
value))))
|
value))))
|
||||||
|
|
|
@ -84,8 +84,9 @@ trap 'chmod -Rf +w "$test_directory"; rm -rf "$test_directory"' EXIT
|
||||||
home-environment-variables-service-type
|
home-environment-variables-service-type
|
||||||
`(("TODAY" . "26 messidor")
|
`(("TODAY" . "26 messidor")
|
||||||
("SHELL" . ,(file-append bash "/bin/bash"))
|
("SHELL" . ,(file-append bash "/bin/bash"))
|
||||||
("BUILDHOSTTIME" . ,#~(strftime "%c"
|
("BUILDHOST_TIME" . ,#~(strftime "%c"
|
||||||
(localtime (current-time))))
|
(localtime (current-time))))
|
||||||
|
("STRING_WITH_ESCAPES" . "chars: \" /\\")
|
||||||
("LITERAL" . ,(literal-string "${abc}"))))
|
("LITERAL" . ,(literal-string "${abc}"))))
|
||||||
|
|
||||||
(simple-service 'home-bash-service-extension-test
|
(simple-service 'home-bash-service-extension-test
|
||||||
|
@ -156,6 +157,8 @@ EOF
|
||||||
|
|
||||||
( . "${HOME}/.guix-home/setup-environment"; test "$TODAY" = "26 messidor" )
|
( . "${HOME}/.guix-home/setup-environment"; test "$TODAY" = "26 messidor" )
|
||||||
( . "${HOME}/.guix-home/setup-environment"; test "$LITERAL" = '${abc}' )
|
( . "${HOME}/.guix-home/setup-environment"; test "$LITERAL" = '${abc}' )
|
||||||
|
( . "${HOME}/.guix-home/setup-environment";
|
||||||
|
test "$STRING_WITH_ESCAPES" = "chars: \" /\\")
|
||||||
( . "${HOME}/.guix-home/setup-environment";
|
( . "${HOME}/.guix-home/setup-environment";
|
||||||
echo "$SHELL" | grep "/gnu/store/.*/bin/bash" )
|
echo "$SHELL" | grep "/gnu/store/.*/bin/bash" )
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue