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’.

Reply via email to