El problema
Este es un indicador de Dropbox roto en gnome-flashback en Ubuntu 16.04.1. (Versión de Dropbox: x86_64-9.4.94)
Como se puede ver aquí, funciona bien en Unity. Pero ¿cómo puedo conseguiresoen gnome-flashback (como indicador de aplicación)?
La solución
Cuando fuerzo a Dropbox a presentarse como el antiguo icono 1 de la bandeja del sistema , el menú se vuelve utilizable.
Preguntas abiertas
- ¿Qué convence a Dropbox de presentar el ícono de color en gnome-flashback cuando se ejecuta como indicador de aplicación? Como indicador es blanco y negro en Unity.
- ¿Puedo engañar a Dropbox haciéndole creer que se ejecuta en Unity? ¿Puedo forzar el "modo appindicator"?
- ¿Hay algún problema en que el código de Dropbox no pueda decidir correctamente entre la bandeja del sistema y el indicador de aplicación? Este icono de color parece el resultado de mitad bandeja del sistema, mitad indicador de aplicación...
1 Puedes forzar que Dropbox entre en "modo bandeja del sistema" ejecutándolo dbus-launch dropbox start
o DBUS_SESSION_BUS_ADDRESS= dropbox start
en lugar de iniciarlo con un archivo dropbox start
.
Respuesta1
¿Puedo engañar a Dropbox haciéndole creer que se ejecuta en Unity? ¿Puedo forzar el "modo appindicator"?
¡Sí tu puedes! Los experimentos muestran que Dropbox (o relacionado) busca la variable de entorno XDG_CURRENT_DESKTOP
, un elemento estándar de freedesktop.org que refleja el nombre del entorno de escritorio en uso. Configúrelo Unity
y Dropbox se volverá cuerdo. (Probé otros valores sensatos, pero los resultados fueron peores).
Habrá varias formas de colocar esa variable en Dropbox. Elegí editar el script de la interfaz de línea de comando /usr/bin/dropbox
del nautilus-dropbox
paquete para sobrescribir siempre esta variable. Agregue esta línea después de las importaciones. También funcionará para "Iniciar Dropbox al iniciar el sistema":
os.environ['XDG_CURRENT_DESKTOP'] = 'Unity'