How to fix non working Dropbox icon on Xubuntu 14.04 LTS 64?
Solution 1
Just got this bug on my Xubuntu 15.10, broken icon and no way to open the menu. I think the bug is connected to Dropbox starting to use "indicator area" for their tray icon instead of "notification area" and the sudo-fix just happens to work because of some environment variables are not in use with sudo sessions.
At least for me this problem can be fixed by running:
dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start
This seems to move the icon back to "notification area" which fixes both icon and menu. This way the daemon runs as a normal user and not as root.
EDIT: If you create your own startup script for Dropbox based on this fix, remember to disable the default startup script with "dropbox autostart n
" command (Thank StockBreak for this one, saved me some time this morning).
EDIT2: ...and for some reason I still had to remove the autostart setting from Dropbox GUI (click icon >> Preferences >> Start Dropbox on system startup). Hope it stays off after this one.
EDIT: To implement this fix in a script that run every time session starts, try this solution: https://askubuntu.com/a/795864/496493
Solution 2
A new workaround, proposed by File C., is "dbus-launch dropbox start -i".
The following adaptations are reported by users to work at least on the Linux distributions Fedora, Gentoo, Kubuntu, Linux Mint, openSUSE, Slackware, Ubuntu, Xubuntu... and the desktop environments Cinnamon, KDE 4, KDE 5, Mate, Unity, Xfce...
This new dbus-launch workaround seems to work a little faster, with more reliability, and in more cases than the previous DBUS_SESSION_BUS_ADDRESS workaround.
As command line:
dropbox stop && dbus-launch dropbox start
Or as a shell script file:
#!/bin/bash
dropbox stop && dbus-launch dropbox start
Solution 3
Thanks to kk78's solution I made this complete workaround (see also my other post):
I copied* my desktop entry:
cp ~/.config/autostart/dropbox.desktop ~/.config/autostart/start_dropbox.desktop
Changed the entry like this (please notice the env
word):
[Desktop Entry]
Name=Dropbox
GenericName=File Synchronizer
Comment=Sync your files across computers and to the web
#Exec=dropbox start -i
Exec=env DBUS_SESSION_BUS_ADDRESS="" dropbox start -i
Terminal=false
Type=Application
Icon=dropbox
Categories=Network;FileTransfer;
StartupNotify=false
And disabled Dropbox's autostart:
dropbox autostart n
* you cannot just edit it because Dropbox replaces the file every time you log in.
Solution 4
[This is my deprecated early answer, now kept to research this and related bugs; for newer and better workarounds, without the file ownership change/recovery inconvenience of sudo, see kk78's answer instead, or the command line "dropbox stop && dbus-launch dropbox start"
in another answer]
This Dropbox tray icon bug seems to be related to permissions.
Until it gets fixed, a temporary workaround from the command line (Konsole, Terminal, etc.), which is working these days for users of Xubuntu, Linux Mint, etc.:
dropbox stop
sudo dropbox start
Note:
About the "sudo", running Dropbox as root overcomes the permission bug, and the tray icon works again correctly.
However, it has the small secondary effect of having a few files in the hidden folder ~/.dropbox/ owned by root now instead of the user (as you can see with e.g. a file manager such as Dolphin), and therefore the root password is requested when starting Dropbox.
This is ok as a temporary workaround to get the Dropbox tray icon fully working on Linux until the bug is hopefully fixed by a next update, but if the fix doesn't restore the correct permissions, in that hypothetical case a quick solution after the bug fix will be:
sudo dropbox stop
sudo chown -R USER:GROUP /home/USER/.dropbox
dropbox start
Of course, replacing USER and GROUP. For example, if you are co-creator of Unix, UTF-8, Go language, etc. ;) it would be something like:
sudo chown -R ken:ken /home/ken/.dropbox
Update:
Sorry, I've just seen something that makes this temporary workaround still workable but less convenient: Not only those few already mentioned files in the hidden ~/.dropbox folder get owned by root, also the files downloaded from the Dropbox servers to the Dropbox folder (usually ~/Dropbox) on the computer running Dropbox as root.
So, I'm still using this workaround until the bug fix, but if we want to use it we have to apply the permissions recovery line also to the Dropbox folder, at least when we want to edit our downloaded documents. For example:
sudo chown -R USER:GROUP /home/USER/Dropbox
To save time, and to apply it when we start the computer, we can include it in a simple shell script, e.g. a dropbox.sh text file with the executable property, that we can run from the command line or by mouse click:
#!/bin/bash
dropbox stop
sudo dropbox start
sudo chown -R USER:GROUP /home/USER/Dropbox
Simple alternative workaround:
Instead of all the previous procedures, if dealing with file ownership changes and recoveries, etc. is too inconvenient, the simplest alternative is probably to just wait for the Dropbox bug fix without using the icon, and simply check the Dropbox status from time to time using the command line:
dropbox status
The result, if Dropbox is running, most of the time will be: "Up to date".
Later, probably you can use the up arrow to quickly run this line again from a small command line window that you can keep open.
See additional command line help by just typing:
dropbox
As already suggested, to stop using the other workaround (sudo), recover normal file ownership, and start running Dropbox again as normal user instead of root, use just one time (replacing USER and GROUP):
sudo dropbox stop
sudo chown -R USER:GROUP /home/USER/Dropbox
sudo chown -R USER:GROUP /home/USER/.dropbox
sudo chown -R USER:GROUP /home/USER/.dbus
dropbox start
New update:
See kk78's answer to this question, with a much better workaround than mine, and with Dropbox tray icon as normal user, not root. It works at least for Xubuntu and Linux Mint.
It can also be used as a shell script:
#!/bin/bash
dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start
Solution 5
Instead of staying on an older version or fiddling with other aspects, I have decided to use this script instead of the little icon. It puts the output from the command dropbox status
directly in your panel. However, when it is syncing or up to date there is a little check mark or syncing character.
Install the Generic Monitor by pasting the following in terminal:
sudo apt-get install xfce4-genmon-plugin
Set the following script to run using the Generic Monitor panel plugin. I went without a Label and set it to run every five seconds.
#!/bin/bash
status=$(dropbox status)
if [ "$status" = "Up to date" ]; then
echo "✔"
elif [[ "$status" == "Syncing"* ]] || [[ "$status" == "Indexing"* ]] || [[ "$status" == "Downloading"* ]]; then
echo "⟲"
else
echo "$status"
fi
You'll need to run the following so it does not show a password prompt (which can be disregarded anyways) on login:
sudo chown -R USER:GROUP ~/.dropbox
USER:GROUP
is normally just your username twice.
When I need to change a setting I will just launch Dropbox with sudo
to change my settings. As documented on this page launching with sudo
enables the little icon and menu to appear.
Additionally you can echo out your own Dropbox icon or image if you prefer that. If your Dropbox command line is not working, you can download the Dropbox python script here. (In my case I am not using the *.py extension for the Dropbox python script name.)
Related videos on Youtube
user505080
Updated on September 18, 2022Comments
-
user505080 over 1 year
A few hours ago the dropbox icon in Xubuntu 14.04 stopped working. The icon is black with a red slashed zero. I cannot click on it to bring up the dropbox menu. I believe there was an update right before this happened. I reinstalled then purged dropbox. I even deleted all associated files and hidden folders and after I installed it again. Still, the icon is not working. Tried to stop and start the service... again nothing.
-
jbrock over 8 yearsYou can always downgrade Dropbox. I am on 3.12.5 and have no icon issues. I hope Dropbox will not auto-update it soon. However, there is a way to block this also. forums.linuxmint.com/… dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-3.12.5.tar.gz
-
jbrock over 8 yearsI have reported this bug with all necessary details to Dropbox. I had a similar issue before with Linux Mint. They held off on upgrading my Dropbox until the version with a bug fix. I am a paid user, and they state that I should receive a response within 24-48 hours. If they reply with key information, I'll be sure to post here.
-
jbrock over 8 yearsYou may be able to downgrade without first uninstalling. This might avoid a complete re-index of all Dropbox files. It may fix the icon issue until the bug is fixed and then they push out that update.
-
jbrock about 8 years@mcwise At this page, dropbox.com/install?os=lnx, follow the instructions for headless install. However, instead of using their link, use the link I have posted above to the tar.gz file. This should overwrite your install with version 3.12.5. Dropbox seems to be waiting and not upgrading that version yet.
-
Attila Csipak about 8 yearsThis bug was reported on Launchpad meanwhile: bugs.launchpad.net/bugs/1546176 (Also, this question is linked in one of the comments :-)
-
Scott Stensland over 6 yearsThis bug re-appears on Ubuntu 17.10 and none of below work
-
dez93_2000 over 6 years@ScottStensland the sudo option worked for me however it creates a permissions nightmare so I absolutely wouldn't recommend it.
-
new QOpenGLWidget over 5 yearsThis bug also goes for Ubuntu...
-
-
user505080 about 8 yearsThis workaround DOES work in my Xubuntu 14.04 64. Everybody please notice the "sudo". Thank you Juan M. Gonzalez
-
Juan M. Gonzalez about 8 yearsHowever we have to remember that my suggestion of running as root just for these days is a really temporary workaround, and the real solution should come from a quick bug fix by Dropbox.
-
Juan M. Gonzalez about 8 yearsIn practice, I'm finding that the simple "dropbox status" workaround without icon is better and more convenient than the other "sudo dropbox start" workaround with icon.
-
Juan M. Gonzalez about 8 yearsThis kk78's workaround also works for me, giving the tray icon for normal user. I've not tried StockBreak's desktop entry for this but probably works as well. Instead, I'm using the #!/bin/bash line and kk78's line as a simple shell script in a "dropboxicon.sh" text file with the executable property, and right click > Actions > Run In Konsole, until the bug is fixed. This workaround works well. Thank you.
-
Juan M. Gonzalez about 8 yearsNew: See kk78's answer, with a much better workaround than mine.
-
Juan M. Gonzalez about 8 yearsAs you said, "It seems that the Dropbox icon likes residing in the Notification Panel, but not the Indicator Plugin." I think you were in the right track, as kk78's workaround shows.
-
Bruce about 8 yearsQuite cool, never knew I could do this! Useful for lots of other things. Cheers.
-
BSchlinker about 8 yearsRemoving the indicator plugin was key for me -- just running
dropbox start
withDBUS_SESSION_BUS_ADDRESS=""
was insufficient to get dropbox out of the indicator plugin. -
demaniak about 8 yearsXubuntu 14.04 64bit LTS - confirmed same exact problem, confirmed above work-a-round does the trick (all be it temporarily).
-
bmaupin about 8 yearsHere's a one-liner for this fix:
sed -i.bak '/#!\/bin\/sh/a export DBUS_SESSION_BUS_ADDRESS=""' ~/.dropbox-dist/dropboxd; dropbox stop && dropbox start
-
Admin about 8 yearsVery cool! Thanks for sharing this. I didn't know about the Generic Monitor.
-
Admin about 8 yearsSimpler:
env DBUS_SESSION_BUS_ADDRESS="" dropbox start -i
-
dez93_2000 about 8 yearsThis did it for me, though for clarification: you edit the start_dropbox.desktop file (with mousepad or whatever)
-
dez93_2000 about 8 yearsanother note: in menulibre (or your menu system) you need to change the command entry from "dropbox start -i" to "env DBUS_SESSION_BUS_ADDRESS="" dropbox start -i" so the right one runs when initiated from the menu.
-
Daniel Fischer about 8 yearsHad the same problem in Kubuntu 14.04 and also here it solved the issue!
-
Ads20000 about 8 yearsThe command line command works great but only works for that session. To make the fix permanent, one should, after running this command, go to the Dropbox indicator > Preferences... > uncheck Start Dropbox on system startup. Then add
dbus-launch dropbox start
to Session and Startup > Application Autostart. This works perfectly for me on Xubuntu 16.04 LTS. -
allebone about 8 yearsThis was the only way for me to get it to work in Ubuntu Mint xenial 16.04 LTS.
-
Ads20000 almost 8 yearsAnnoyingly I can't edit my comment. The application autostart command perhaps should be
dbus-launch dropbox start -i
(this works on Ubuntu (GNOME) Flashback 16.10, idk whether it works on Xubuntu as well) -
jumpnett almost 8 yearsThis works in lubuntu 16.4
-
Swoogan almost 8 years@Ads20000 this didn't work on Kubuntu 14.04 because KDE restores your session when you login. The dbus-launch fails since dropbox is already running. Rather that prepend a
dropbox stop
to the command, I entereddropbox
in System Settings->Startup and Shutdown->Session Management->Applications to be excluded from sessions. -
Sampo almost 8 yearsThe
DBUS_SESSION_BUS_ADDRESS=""
solution did nothing for me, but this one worked! Running Linux Mint 17.3. -
Sathiya Narayanan almost 8 yearsWorked also for 16.04 eventually, but I had to install and add another
indicator-applet
to the panel (aside to the already available and presentindicator-applet-complete
), otherwise the dropbox icon simply didn't appear. This on a new installation of Ubuntu 16.04 x86 (on a very old Toshiba laptop), running agnome-fallback
session withmetacity
. -
Santiago over 7 yearsThis solution worked for me on Linux Mint 18, Cinammon 3.0
-
jarno over 7 yearsFor some reason even removing the autostart setting from Dropbox GUI did not stop dropbox from autostarting, but I guess that is why there is
dropbox stop
in the script. -
jarno over 7 yearsWhy
bash -c
and not justdropbox status
? -
jarno over 7 years@blujay or even
DBUS_SESSION_BUS_ADDRESS= dropbox start -i
. But some people reportdbus-launch dropbox start -i
works better. -
jarno over 7 yearsI guess this could be applied in Xubuntu 16.04, too, but it uses systemd instead of upstart by default.
-
jarno over 7 years@BSchlinker maybe dropbox was running already before you tried to launch it with
DBUS_SESSION_BUS_ADDRESS=""
? -
jarno over 7 yearsSee my answer. For my surprise, the init script worked in Xubuntu 16.04, too, even if it uses systemd instead of upstart.
-
jbrock over 7 years@jarno I have a faint memory that initially it did not work by only putting
$(dropbox status)
. However, for some reason$(bash -c 'dropbox status')
did work. Using$(dropbox status)
now works so I've updated my script accordingly. Thanks for letting me know. -
jbrock over 7 years@jarno I do not use the Notification Area or the Indicator plugin. So, I'm not sure.
-
user411778 over 7 yearsI read somewhere that upstart would still be used for user mode services after systemd was rolled out, which would explain why the script still works. The list of services is in
/usr/share/upstart/sessions
-
Admin over 7 years@jarno Not everyone uses a Bash-style shell. For example, I use Fish as my interactive shell, and variables are not set with the
name=value
syntax, so it's necessary to useenv
. Usingenv
works everywhere. -
Juan M. Gonzalez over 7 yearsThis workaround is working well for example for a laptop with Linux Mint 17.2 (based on Ubuntu 14.04) and KDE 4.13.2. However, not sure why, but for a more recent Linux version the bug seems somehow fixed with no more need for workaround: this happens on another laptop with Linux Mint 18 (based on Ubuntu 16.04) and KDE Plasma 5.6.5. Maybe this particular fix is in the KDE version, since Linux Mint 18 still has the bug for other users, and Dropbox doesn't seem to have made a general fix yet.
-
Joris Bierkens over 7 yearsIt seems that after a fresh update of today, this workaround is no longer working for me. Does anybody have any suggestions? I am on Xubuntu 16.04.1
-
Dee'Kej over 7 yearsI can confirm this workaround helps with Dropbox not displaying tray icon in Cinnamon 3.2.7. [Currently running Fedora 25, Cinnamon spin.] Thanks a lot! :)
-
jarno over 7 yearsHow can you start dropbox by the init script in terminal so that no logout is needed?
-
user411778 over 7 yearsUse
initctl --user start dropbox
to restart the user mode upstart job as a child of the userinit
process. -
Daniel Andrei Mincă over 7 yearsGreat... now I'm getting
Unable to monitor entire Dropbox folder hierarchy. Please run "echo fs.inotify.max_user_watches=100000 | sudo tee -a /etc/sysctl.conf; sudo sysctl -p" and restart Dropbox to fix the problem.
-
David Dombrowsky about 7 yearsThis is the only solution that works on Ubuntu 16.10 (yakkety). Thanks!
-
unklyf about 7 yearsThe original worked for me, may have to try some of the permanent solutions like the script etc. But for now, happy to see the dropbox icon working well. I'm running Mint Xfce 18.1 64 bit
-
Diogo Gomes about 7 years
dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start
not work in Ubuntu 17.04. After running the command, it appears but with broken icon and without menu. -
kk78 almost 7 yearsOn 17.04 you might try the "new workaround" below i.e.
dropbox stop && dbus-launch dropbox start
. I've been using it on my laptop (currently Xubuntu 17.04) and haven't had problems. It would be really nice if Dropbox fixed this... -
Jacob Vlijm almost 7 yearsWorks on Budgie 17.04 :)
-
NicolasSmith over 6 yearsWorks on Ubuntu 14.04 Mate.
-
Ibraheem Moosa over 6 yearsCan anyone explain why this works?
-
Admin about 2 yearsDoesn't work for me on Ubuntu 21.10.