¿El escritorio olvida el tema?

79

Estoy ejecutando Ubuntu en VirtualBox (en un host de Windows 7). Varias veces, la barra de menú de nivel superior, la barra de tareas, y aparentemente todos los cuadros de diálogo del sistema, han olvidado el tema "Ambiente" listo para usar al que se ajustan cuando instalé el sistema por primera vez. Los subtítulos de las ventanas aún conservan el tema, pero prácticamente nada más lo hace.

He buscado por todas partes en Google para obtener ayuda con este problema. Todo lo que he encontrado sugiere ejecutar gconf reset o eliminar .gconf * .gnome * y otros directorios similares. He seguido todos estos consejos y nada funciona. Todavía tengo un aspecto 3D gris aburrido estilo Windows 95. En ocasiones anteriores, después de mucho perder el tiempo, me di por vencido y reinicié la instancia de VM, y me sorprendió gratamente ver el tema original "Ambiente" restaurado a través de la interfaz de usuario, pero invariablemente desaparece nuevamente algún tiempo después, generalmente después de un reinicio, así que nunca puedo entender qué hice que lo rompió.

Aquí hay una muestra del sitio de Ubuntu de cómo quiero que se vea.

texto alternativo

Y aquí hay una captura de pantalla de mi sistema como se ve actualmente.

texto alternativo

También tenga en cuenta que mis terminales GNOME normalmente tienen un bonito aspecto semi-translúcido de color púrpura, y como se puede ver en la captura de pantalla, ahora son solo un blanco mate sólido.

Esta última vez (justo ayer), probar numerosas combinaciones de todos los trucos habituales y reiniciar varias veces no lo ha solucionado, así que aquí estoy en SU ​​preguntándome:

¿Cómo recupero el tema listo para usar para mi escritorio Gnome / Ubuntu, notando que eliminar todos los archivos de configuración, como se sugiere en muchos lugares en línea, no logra esto?

Puede ser útil saber que parece fallar después de cambiar el tamaño de la instancia de VM, forzando al escritorio de Ubuntu a cambiar su tamaño, o después de jugar con la configuración de Compiz. No he podido averiguar cuál de estos es, y no podría ser ninguno. Dada la cantidad de dolor que he tenido que pasar para que las cosas vuelvan a la normalidad (y dado que no sé cómo hacerlo), ha resultado difícil aislar definitivamente la causa.

Marcelo Cantos
fuente

Respuestas:

45

La respuesta de @ zpletan me llevó a buscar un poco, lo que rápidamente descubrió lo que parece ser la causa de mi problema. Se detalla en Ubuntu Bug # 574296 . En resumen, mi sistema Core i7 con un SSD comienza todo con tiempos suficientemente diferentes que gnome-settings-daemon se ejecuta demasiado temprano, se rescata y me deja principalmente con un tema GTK de serie.

Un corto sueño en lo /etc/xdg/autostart/gnome-settings-daemon.desktoparregla:

Exec= bash -c "sleep 2; /usr/lib/gnome-settings-daemon/gnome-settings-daemon"
Marcelo Cantos
fuente
¡Está bien! Solo pensé que mejoraría la validez de su respuesta: D
Marco Ceppi
2
+1, sin embargo, debo tener en cuenta que esto no funcionó todo el tiempo para mí (fue esporádico) ... vea mi respuesta a continuación sobre cómo obtuve algo que parece funcionar el 100% del tiempo.
TM.
22

No pude solucionar este problema con ninguna de las respuestas sugeridas (la respuesta actualmente aceptada funcionó esporádicamente, pero por lo general no me funcionó). Traté de aumentar mucho el tiempo de sueño y todavía no funcionaba constantemente.

Sin embargo, una de las respuestas señaló un error que rastrea este problema, y ​​encontré un comentario sobre el error que me resolvió.

Aquí están los bits clave:

Primero, crea un script bash (lo nombré /etc/xdg/autostart/gnomesettingsdaemonfix.sh)

#!/bin/bash

pid=$(pgrep gnome-settings-)

while [ -n "$pid" ];
do
  pid=$(pgrep gnome-settings-)
  sleep 0
done

exit 0

Asegúrese de que sea ejecutable (ejecutar chmod +x).

Luego edite /etc/xdg/autostart/gnome-settings-daemon.desktop

Cambia la Execlínea a:

Exec=bash -c '/etc/xdg/autostart/gnomesettingsdaemonfix.sh;/usr/lib/gnome-settings-daemon/gnome-settings-daemon'

Eso parece haberme solucionado hasta ahora.

TM.
fuente
44
+1 Esta parece ser la mejor solución donde, en lugar de ajustar el tiempo de sueño, la condición de carrera se aborda realmente.
mindless.panda
1
¿Por qué no se ha solucionado este error? Si esta simple comprobación puede solucionar el problema, ¿por qué no se ha realizado un parche?
Luke no tiene nombre el
Creí que esta solución solucionaría mi problema ya que tengo un Core i3 pero no lo hizo :( Mi gnomesettingsdaemonfix.shtiene permisos 0777. Una cosa que encontré diferencia en mi ubuntu 16 es que la Execlínea tenía () en usr/lib/gnome-settings-daemon/gnome-settings-daemon-localeexeclugar de usr/lib/gnome-settings-daemon/gnome-settings-daemon. ¿Estoy haciendo algo mal?
Ejaz
16

Presione Alt + F2 (Ejecutar aplicación) y ejecute lo siguiente:

gksudo gnome-settings-daemon
zpletan
fuente
+1, @zpletan por darme un empujón en la dirección correcta. Cuando ejecuto esta vía sudo gnome-settings-daemon, recupera el tema completo, pero no quiero tener que ejecutar esto cada vez que reinicio mi sistema. Agregaré los errores que obtengo sin sudo a mi pregunta. Tal vez eso insinúe lo que va mal.
Marcelo Cantos
En realidad, eso no es necesario. El comentario de @Jorge sobre mi respuesta lleva a una pregunta que muestra exactamente el resultado que estoy viendo.
Marcelo Cantos
7

10.10 tiene este problema, pero normalmente ocurre cuando instala el controlador propietario de nvidia. Sin embargo, la solución probablemente también funcionará en una máquina virtual.

Crea un archivo de texto. Escribir en ella

incluir "/usr/share/themes/Ambiance/gtk-2.0/gtkrc"
gtk-icon-theme-name = "ubuntu-mono-dark"

y guárdelo en su carpeta de inicio con el nombre .gtkrc-2.0. Reiniciar.

Si todavía hay elementos incorrectos (para mí fue la fuente), debe agregar este cambio al archivo, google para un tutorial de GTK para las posibles afinaciones.

rumtscho
fuente
+1, @rumtscho; Esta respuesta trae de vuelta el tema completo. Sin embargo, parece una solución alternativa. Dado que un Ubuntu 10.10 impecable se ve bien sin él, ¿por qué se necesita este archivo?
Marcelo Cantos
Un Ubuntu impecable viene solo con controladores de video de código abierto. El problema que describe es un error común en los controladores de video propietarios. Como son de código cerrado, solo nVidia puede ofrecer una solución. Puede eliminarlos y volver a un controlador de código abierto, pero perderá Compiz y aceleración 3d.
rumtscho
Esto parece haber solucionado esto en mi instalación 10.10 ... por ahora
Nathan Schwermann
hablé demasiado pronto, en mi próximo reinicio la configuración se perdió de nuevo
Nathan Schwermann
@schwiz Para mí, funciona siempre, pero la configuración debe guardarse en la carpeta de inicio de la cuenta con la que está conectado actualmente. Si reiniciaste e iniciaste sesión como un usuario diferente, no funciona. Si inicia una ventana de interfaz gráfica de usuario con sudo, no funciona bien, ya que entonces tiene la configuración de usuario root, y no del usuario conectado.
rumtscho
4

He estado buscando una solución para este problema durante meses. Al parecer, nadie sabe qué lo causa. Este error ha existido durante años y nadie lo ha solucionado.

A veces ocurre durante el arranque con una condición de carrera entre la primera y la segunda instancia de gnome-settings-daemon, y a veces ocurre en medio de una sesión de escritorio de trabajo cuando gnome-settings-daemon deja de funcionar o se bloquea.

La única solución que he encontrado que parece solucionarlo es escribir

killall gnome-settings-daemon
gnome-settings-daemon &

en una terminal en funcionamiento que dejo abierta.

Cerrar el terminal mata la instancia de fondo de gnome-settings-daemon y el escritorio vuelve al tema predeterminado (no el predeterminado de Ubuntu sino el predeterminado de gnome). Por lo tanto, ejecuto el daemon en segundo plano y dejo el terminal ejecutándose también porque el proceso necesita su padre.

Cheryl
fuente
Puede evitar mantener abierta una terminal ejecutando Ejecutar aplicación (Alt + F2) y dándole gksudo gnome-settings-daemoncomo argumento.
vemv
4

Tuve el mismo problema y recibí un error en la mendicidad: Could not apply the stored configuration for monitors.

Se ha eliminado el archivo: ~/.config/monitors.xmlre-conectado y trabajó como un guante.

top-less
fuente
2
¡Esto funcionó para mí también! Para los lectores, creo que debería prestar atención a esta solución si recientemente ha modificado (o modificado y restaurado) su xconfig ( /etc/X11/xorg.conf[.d]).
Severo Raz
2

Tengo el mismo problema, lo sudo killall nautilussoluciona. (temporalmente)

Pozo
fuente
Gracias por comentar, @Pit, pero esto no hizo nada por mí.
Marcelo Cantos
Tuve el problema nuevamente hoy y tuve que correr gnome-appearance-propertiespara arreglar el menú y luego killall nautilusarreglar la apariencia del nautilus.
Hoyo
1

Lo siento, pero mi sugerencia anterior de usar '--sync' no es una solución. Resulta que después de algunos reinicios, el problema es el mismo.

Pero con suerte, logré capturar el siguiente resultado del proceso de bloqueo 'gnome-settings-daemon' durante los inicios cuando el tema no se aplica:

** (gnome-settings-daemon:1679): WARNING **: You can only run one xsettings manager at a time; exiting

** (gnome-settings-daemon:1679): WARNING **: Unable to start xsettings manager: Could not initialize xsettings manager.

Cuando el tema se aplica con éxito, no hay salida.

A partir de esto, parece que gnome-settings-daemon podría estar ejecutándose dos veces de alguna manera. Aparentemente, si la primera instancia se completa antes de que se ejecute la segunda instancia, se aplicará el tema, de lo contrario fallará.

NOTA: La captura de salida se realizó editando /etc/xdg/autostart/gnome-settings-daemon.desktop's 'Exec =' entrada a "bash -c '/ usr / lib / gnome-settings-daemon / gnome-settings-daemon --debug --sync &> /home/sanjeev/Desktop/test.txt '"(la opción --sync se utilizó según lo recomendado por algunos sitios web)

PD: Otras pruebas muestran que, de hecho, hay dos instancias en ejecución que deberían ejecutarse una tras otra.

Aunque el método 'dormir' podría funcionar, aquí hay una solución más 'técnicamente correcta', si puedo, al problema. He intentado con 6 reinicios y lo siguiente parece funcionar:

Paso 1: Cree un script (lo llamé gnome-settings-daemon-fix.sh) en / etc / xdg / autostart con lo siguiente:

#!/bin/bash
# gnome-settings-daemon-fix.sh

pid=`pgrep gnome-settings-`
wait pid

exit 0

Paso 2: Edite 'gnome-settings-daemon.desktop' en la entrada 'Exec =' y reemplácelo con:

Exec=bash -c 'bash /etc/xdg/autostart/gnome-settings-daemon-fix.sh ;/usr/lib/gnome-settings-daemon/gnome-settings-daemon'

Todo está hecho. Básicamente, lo que estamos haciendo es esperar a que salga la primera instancia antes de que se lance la segunda. ¿Alguien podría notificar si esto solucionó su problema?

Sanjeev
fuente
Esto está cerca, pero no funciona por un par de razones. Sin embargo, el mayor problema es que el comando de espera no funcionará en otro proceso.
TM.
1

También tuve el problema muy similar. Esto fue después de una actualización (parcial IIRC) de mi Natty Narwhal, ya que estaba en estado alfa 3. En mi caso, el archivo ~ / michael / .nautilus / browser.xml parecía estar dañado. Después de probar algunas de las sugerencias de este sitio parcial, simplemente eliminé este archivo, reinicié mi PC y todos mis temas volvieron y permanecieron estables. Creo que puedes intentar resolver tu problema como yo.

Michael Staengl
fuente
1

Esto me sucede ocasionalmente con 11.04 Unity 3D y cada vez que lo borro abriendo Apariencia, botón Personalizar, pestaña Ícono y haciendo clic en el conjunto de íconos elegido aunque esté indicado como en uso. En mi caso sería Faenza-Dark. Ocurre con tanta frecuencia que aún no he identificado ninguna secuencia de eventos que cause esto.

fragos
fuente
1

Esto me funcionó en una ventana de terminal:

echo "PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games\"" | tee -a ~/.profile
Jorge Castro
fuente
1

Aquí hay una solución rápida, vaya a su consola virtual, detenga gdm, inicie el servidor X

  1. presione "Ctrl + F1 derecho" (Ctrl + Alt + F1 es una combinación para instalaciones no virtualizadas)
  2. iniciar sesión
  3. tipo: sudo /etc/init.d/gdm stop
  4. tipo: startx

Como esta es mi primera publicación, tuve que poner imágenes como esta:

http://imgur.com/a/bi0xm#0

nidla
fuente
1

Esto también me sucedió a mí y, en mi caso, tuve que destruir mi directorio de inicio completo y luego restaurar los fragmentos, según la respuesta aquí . Si está ejecutando los scripts de sincronización para gnome-settings-daemon, vea si puede hacer que funcione correctamente creando otra cuenta e iniciando sesión como esa cuenta. En mi caso, la segunda cuenta no tenía el problema de no inicio y, por lo tanto, apliqué la solución en el enlace.

mfisch
fuente
0

Por favor, intente esto y reinicie! :)

gconftool-2 --shutdown        
rm -rf ~/.gconf/apps/panel       
pkill gnome-panel        
Iván Stojanovic
fuente
Gracias por la sugerencia, Iván, pero no plátano. Ingresé las instrucciones anteriores y reinicié. El sistema regresó con un panel recién configurado, pero aún con el esquema de color gris suave y un fondo blanco en las ventanas de mi Terminal.
Marcelo Cantos
0

Creo que hay bastantes personas con la idea correcta.

Mi conjetura es que después de ciertas actualizaciones (nuevos núcleos, etc.) ese ureadahead se vuelve a perfilar. Aquí es donde creo que ocurre el problema. gnome-settings-daemon recibe una llamada demasiado pronto.

Eliminé todos los archivos con 'pack' (pack, home.pack, boot.pack, run.pack) en el nombre en la carpeta / var / lib / ureadahead / para forzar un nuevo perfil. Todo se veía genial después de eso.

Al volver a crear un perfil, elimine los archivos anteriores, reinicie e inicie sesión rápidamente tan pronto como vea la pantalla de inicio de sesión. Espere unos 30 segundos o cuando la unidad deje de girar antes de hacer nada. Deja que termine su negocio. Su ventana de nautilus debería verse bien ahora.

Tal vez se deba archivar un error con ureadahead para poner fuera de servicio a gnome-settings-daemon.

usuario32089
fuente