Cyril Roelandt <tipec...@gmail.com> skribis: > +(define (run-shell shell env-name) > + "Run the given SHELL, adding '(ENV-NAME) ' at the start of the prompt." > + (cond ((string=? shell "/bin/bash") > + (let* ((directory (or (getenv "TMPDIR") "/tmp")) > + (template (string-append directory "/guix-file.XXXXXX")) > + (out (mkstemp! template))) > + (format out "export PS1=\"(~a) $PS1\"" env-name) > + (flush-output-port out) > + (system (string-append "/bin/bash --rcfile " template))))
What about this simpler idea: ‘guix environment’ would unconditionally do: (setenv "GUIX_ENVIRONMENT" "t") and then users can choose in their .bashrc to use a separate PS1 when GUIX_ENVIRONMENT is defined. WDYT? Ludo’.