Yo uso tanto GNOME como KDE SC. En GNOME, uso Docky pero no lo uso con KDE. Por lo tanto, me gustaría que Docky se inicie solo cuando inicio sesión en GNOME, no en KDE. En KDE, hay una opción para hacer que un programa se inicie automáticamente solo en KDE. Pero no puedo encontrar ninguna de esas opciones en GNOME.
¿Cómo puedo hacer esto?
Gracias por adelantado.
Puede editar el objeto de inicio en ~/.config/autostart
y agregarlo al final:
OnlyShowIn=GNOME
Es una opción mal nombrada, pero hará que KDE no inicie la aplicación.
No tengo instalado kde para verificar esto, pero creo que agregar la aplicación aquí: Sistema -> Preferencias -> Sesiones -> Programas de inicio es específico de gnome.
Si eso no funciona, siempre puede colocar el programa en un script de contenedor que verifique el valor de la variable de entorno $ DESKTOP_SESSION. Algo como esto:
#!/bin/bash
if [ $DESKTOP_SESSION == "GNOME" ];then
myApplication
fi
¡Espero que esto responda a su pregunta!
Si no puede encontrar la entrada que inicia un programa, también puede encontrarla en /etc/xdg/autostart
en su lugar. Sé que finalmente arreglaron Nautilus automáticamente comenzando en KDE usando la configuración OnlyShownIn. El cambio de archivos en este directorio es para todo el sistema, por lo que es posible que desee copiar el archivo de la aplicación infractora en ~/.config/autostart/
En lugar de usar OnlyShownIn, también puedes usar NotShownIn. Esto puede permitirle no tener algo para un escritorio, sino mostrarlo para todos los demás. Para este ejemplo, puede cargar Docky en todos los administradores de escritorio, excepto KDE, utilizando lo siguiente:
NotShownIn=KDE;
Si no desea que se inicie en ningún escritorio, puede cambiarlo a OnlyShownIn=;
Se supone que las líneas en los archivos .desktop terminan en punto y coma. El punto y coma también se usa para separar valores para configuraciones que toman más de un valor al mismo tiempo.
Este truco significaría que debe enumerar cada Shell de escritorio que utiliza para evitar que algo se ejecute. Por lo tanto, usar NotShownIn=Unity
estaría bien si solo tiene Unity instalado, pero aún así comenzaría si luego instaló KDE o Gnome.
Si el archivo de escritorio en la carpeta de inicio automático del usuario no detiene el inicio de una aplicación, deberá tratar con el archivo de escritorio en el directorio xdg. Para esto, haría una copia de seguridad del archivo. En lugar de copiarlo con una extensión bak, o algo estándar que pueda sobrescribirse más adelante, haga esto para la aplicación imaginaria llamada badapp para este ejemplo.
Sudo cp /etc/xdg/autostart/badapp.desktop /etc/xdg/autostart/badapp.desktop.stop
Luego puede editar el archivo de escritorio original. Si algo se rompe y termina comenzando con un arranque de texto, puede cambiar el nombre del archivo al nombre original.
Sudo cp /etc/xdg/autostart/badapp.desktop.stop /etc/xdg/autostart/badapp.desktop
Además, la carpeta de inicio automático de usuario predeterminada para KDE es ~/.kde/Autostart/
porque KDE hace las cosas a la manera de KDE.
System > Preferences > Startup Applications
Esta es la alternativa de Gnome al Administrador de inicio de KDE.
La otra forma de editar el archivo de inicio automático es con una línea como:
OnlyShowIn=GNOME;Unity;