Xquartz en Mavericks 10.9 falla

Hay un problema con la ejecución de xquartz en mi sistema. Lo instalé usando el enlace del sitio web de Apple. Sin embargo, cuando ejecuto xquartz desde la terminal, obtengo:

:~$ xquartz
/Applications/Utilities/XQuartz.app/Contents/MacOS/X11: line 10: /usr/local/bin/bash: No such file or directory
/Applications/Utilities/XQuartz.app/Contents/MacOS/X11: line 10: exec: /usr/local/bin/bash: cannot execute: No such file or directory

Esto me impide iniciar aplicaciones xquartz/x11 que descargué a través de macports. ¿Cómo puedo resolver esto para que xquartz funcione correctamente?

¿ Es /usr/local/bin/bashun ejecutable/binario o un enlace simbólico a uno?
No tenía ninguna referencia a bash en la carpeta. Creé un enlace simbólico para él y resolvió mis errores.

Respuestas (1)

/Applications/Utilities/XQuartz.app/Contents/MacOS/X11es solo un script de shell que ejecuta lo que esté definido $SHELLen su entorno:

case $(basename "${SHELL}") in
    bash)          exec -l "${SHELL}" --login -c 'exec "${@}"' - "${@}" ;;

(etc).

En su caso, parece que $SHELLestá configurado en /usr/local/bin/bash, que no existe. Sin embargo, lo que es interesante es que, dado que tiene un indicador en el que ha escrito xquartz, claramente está ejecutando un shell de alguna descripción. Sin embargo, no corresponde al valor de $SHELL.

Dos sugerencias sobre cómo podría suceder esto:

  1. $SHELLnormalmente reflejará el shell de inicio de sesión para su usuario. Puede configurarlo en Preferencias del sistema -> Usuarios y grupos -> haga clic con el botón derecho en su nombre de usuario y elija "Opciones avanzadas". Si establece esto en un valor no válido, normalmente no podrá abrir una terminal... a menos que vaya a las preferencias de Terminal.app y establezca la opción "Conchas abiertas con:" en algo que sí existe. Luego obtendrá una terminal de trabajo con un archivo $SHELL.
  2. Alternativamente, podría ser algo en sus scripts de inicio de shell ( .bashrc, .profile, etc.) que exporta un valor engañoso $SHELLal entorno. Si ha personalizado alguno de estos, eche un vistazo y asegúrese de que no está configurando las cosas incorrectamente.
Gracias por su ayuda; me ayudó a comprender el problema e implementar una solución. Tienes razón, ya tenía un caparazón abierto y solía which bashdarme la ruta correcta. Luego creé un enlace simbólico a ese bash y lo puse en /usr/local/bin/bash. Ahora puedo usar xquartz, probado con xclock, gimp, etc.