¿Por qué GNOME Display Manager siempre lee .profile?

Recientemente cambié de inicio de session de terminal (¿getty?) Al Administrador de visualización de GNOME. Parece que GDM siempre lee .profile , independientemente de la configuration del usuario del shell de inicio de session (Zsh en mi caso). ¿Porqué es eso? Supongo que está codificado en su fuente , pero no puedo encontrarlo. ¿Por qué hicieron eso? ¿El software depende de alguna funcionalidad del shell Bourne?

Esto no es muy bueno si quiero usar tanto GDM como getty (como respaldo), porque entonces necesito mantener mi .profile y .zprofile sincronizados. No estoy tan seguro acerca de la obtención de .profile en .zprofile (conocí algunos problemas de compatibilidad antes, cuando traté de get .bashrc en .zshrc ). Creo que Bash llamó como /bin/sh comporta en modo POSIX, pero no estoy seguro de si evita todas las trampas.

En caso de que importe, estoy en la última versión de Arch Linux, ejecutando GNOME con Wayland (por lo que no debería haber ningún script de Xsession involucrado).

Solutions Collecting From Web of "¿Por qué GNOME Display Manager siempre lee .profile?"

Sus problemas con .bashrc no están relacionados. .profile necesita ser compatible con todos los shells compatibles con sh , mientras que por supuesto .bashrc es específico de Bash y generalmente no debe ser obtenido por otros shells.

En general, coloque las cosas que desea compartir entre shells en .profile , y asegúrese de hacerlo desde los files de inicio de sus otras shells (a less que por supuesto ya lo hagan de manera pnetworkingeterminada).

Obviamente, debe asegurarse de evitar el código que se comporta de manera diferente en diferentes shells (la falta de cotización está bien en Zsh pero es un problema en los shells compatibles con Bourne, por ejemplo).

En cuanto a la parte "por qué" de su pregunta, esto es para que la configuration en su .profile esté disponible para los progtwigs que ejecuta desde su session GUI, no solo por los que ejecuta desde un shell (o tal vez deberíamos decir "tradicional"). "shell, y considere su session GUI como un shell" no tradicional ").