[GH-ISSUE #1630] dropbox: program cannot update itself #1094

Closed
opened 2026-05-05 07:26:32 -06:00 by gitea-mirror · 20 comments
Owner

Originally created by @laurento on GitHub (Nov 4, 2017).
Original GitHub issue: https://github.com/netblue30/firejail/issues/1630

I've noticed dropbox doesn't update itself while running under firejail. The icon on the tray keeps the blue spinning emblem and the contextual menu the "upgrading..." entry.

If I instead run the dropbox application without using firejail everything works as expected. I've tried to look at the dropbox log messages and to run firejail in debug mode but I didn't see anything strange. Please let me know if I can provide any additional information.

Originally created by @laurento on GitHub (Nov 4, 2017). Original GitHub issue: https://github.com/netblue30/firejail/issues/1630 I've noticed dropbox doesn't update itself while running under firejail. The icon on the tray keeps the blue spinning emblem and the contextual menu the "upgrading..." entry. If I instead run the dropbox application without using firejail everything works as expected. I've tried to look at the dropbox log messages and to run firejail in debug mode but I didn't see anything strange. Please let me know if I can provide any additional information.
gitea-mirror 2026-05-05 07:26:32 -06:00
Author
Owner

@Fred-Barclay commented on GitHub (Nov 17, 2017):

Hi @laurento
What version of firejail, and what Linux distro, are you running?

I've tried replicating this myself on Ubuntu 17.10, but I can't figure out how to force dropbox to install an old version so I can try updating. 🙁

<!-- gh-comment-id:345314408 --> @Fred-Barclay commented on GitHub (Nov 17, 2017): Hi @laurento What version of firejail, and what Linux distro, are you running? I've tried replicating this myself on Ubuntu 17.10, but I can't figure out how to force dropbox to install an old version so I can try updating. 🙁
Author
Owner

@laurento commented on GitHub (Nov 17, 2017):

Since I opened the issue here I ran dropbox out the jail to let it upgrade. My current version is v37.4.29 and it has the same issue. I'm running debian testing.

<!-- gh-comment-id:345346904 --> @laurento commented on GitHub (Nov 17, 2017): Since I opened the issue here I ran dropbox out the jail to let it upgrade. My current version is v37.4.29 and it has the same issue. I'm running debian testing.
Author
Owner

@laurento commented on GitHub (Jan 18, 2018):

I'm using firejail-0.9.52 and dropbox-41.4.80 right now and the issue seems to be gone. I propose to close this bug report.

<!-- gh-comment-id:358752637 --> @laurento commented on GitHub (Jan 18, 2018): I'm using firejail-0.9.52 and dropbox-41.4.80 right now and the issue seems to be gone. I propose to close this bug report.
Author
Owner

@Fred-Barclay commented on GitHub (Jan 19, 2018):

Closing, thanks!

<!-- gh-comment-id:358846037 --> @Fred-Barclay commented on GitHub (Jan 19, 2018): Closing, thanks!
Author
Owner

@laurento commented on GitHub (Sep 24, 2018):

Aaarg! Brand new installation firajail-0.9.4 on Debian Buster (testing) same issue :(

Shall we reopen this issue?

<!-- gh-comment-id:424108575 --> @laurento commented on GitHub (Sep 24, 2018): Aaarg! Brand new installation firajail-0.9.4 on Debian Buster (testing) same issue :( Shall we reopen this issue?
Author
Owner

@Fred-Barclay commented on GitHub (Sep 24, 2018):

Yep, reopening!

@laurento please kill dropbox, download https://raw.githubusercontent.com/netblue30/firejail/master/contrib/jail_prober.py, and run
python3 jail_prober.py dropbox (you may need to change the dropbox executable path or name -- I don't know what it is 😄 ). Then follow the prompts in the terminal -- enter 'y' if dropbox works correctly and 'n' if it doesn't. Paste the output back here.

(jail_prober.py is an experimental script I wrote -- it works on my end but apologies in advance if it doesn't work for you!).

<!-- gh-comment-id:424160620 --> @Fred-Barclay commented on GitHub (Sep 24, 2018): Yep, reopening! @laurento please kill dropbox, download https://raw.githubusercontent.com/netblue30/firejail/master/contrib/jail_prober.py, and run `python3 jail_prober.py dropbox` (you may need to change the dropbox executable path or name -- I don't know what it is :smile: ). Then follow the prompts in the terminal -- enter 'y' if dropbox works correctly and 'n' if it doesn't. Paste the output back here. (jail_prober.py is an experimental script I wrote -- it works on my end but apologies in advance if it doesn't work for you!).
Author
Owner

@chiraag-nataraj commented on GitHub (May 20, 2019):

Is this still an issue @laurento?

<!-- gh-comment-id:494086194 --> @chiraag-nataraj commented on GitHub (May 20, 2019): Is this still an issue @laurento?
Author
Owner

@laurento commented on GitHub (May 21, 2019):

Is this still an issue @laurento?

Well, last time I've tried (few months ago) the issue was still there. However, I'm now using dropbox via flatpak so I solved using a different kind of confinement :)

<!-- gh-comment-id:494281790 --> @laurento commented on GitHub (May 21, 2019): > Is this still an issue @laurento? Well, last time I've tried (few months ago) the issue was still there. However, I'm now using dropbox via flatpak so I solved using a different kind of confinement :)
Author
Owner

@chiraag-nataraj commented on GitHub (May 21, 2019):

I guess I'll close this for now then - we can always re-open if it's an issue and they wan to stick with firejail :D

<!-- gh-comment-id:494291720 --> @chiraag-nataraj commented on GitHub (May 21, 2019): I guess I'll close this for now then - we can always re-open if it's an issue and they wan to stick with firejail :D
Author
Owner

@chiraag-nataraj commented on GitHub (May 23, 2019):

Haha I'll re-open it myself since I'm running into the same issue right now 😂

<!-- gh-comment-id:495407162 --> @chiraag-nataraj commented on GitHub (May 23, 2019): Haha I'll re-open it myself since I'm running into the same issue right now :joy:
Author
Owner

@chiraag-nataraj commented on GitHub (May 23, 2019):

Never mind. I restarted it after it kept spinning and now it says "up to date"...🤷‍♂️

<!-- gh-comment-id:495407550 --> @chiraag-nataraj commented on GitHub (May 23, 2019): Never mind. I restarted it after it kept spinning and now it says "up to date"...:man_shrugging:
Author
Owner

@chiraag-nataraj commented on GitHub (May 23, 2019):

Sorry for the noise. I figured out that it didn't actually update.

The most annoying thing is that I need to let it sit there a little while each time for it to figure out it needs to update (I don't think there's a way I can manually force an update...).

<!-- gh-comment-id:495408529 --> @chiraag-nataraj commented on GitHub (May 23, 2019): Sorry for the noise. I figured out that it didn't actually update. The most annoying thing is that I need to let it sit there a little while each time for it to figure out it needs to update (I don't think there's a way I can manually force an update...).
Author
Owner

@chiraag-nataraj commented on GitHub (May 23, 2019):

Workaround: Use the control script here and run the update operation. If it works, I'll add the workaround label and close this again 😜

[edit] Unfortunately, it did not work.

[edit2] Ah, okay. The issue is the is_dropbox_valid() function in the Python script that checks to make sure the download is able to run. I'm going to try hacking the script so it doesn't try to do that...

<!-- gh-comment-id:495412161 --> @chiraag-nataraj commented on GitHub (May 23, 2019): Workaround: Use the control script [here](https://www.dropbox.com/install?os=lnx) and run the `update` operation. If it works, I'll add the workaround label and close this again :stuck_out_tongue_winking_eye: [edit] Unfortunately, it did not work. [edit2] Ah, okay. The issue is the `is_dropbox_valid()` function in the Python script that checks to make sure the download is able to run. I'm going to try hacking the script so it doesn't try to do that...
Author
Owner

@chiraag-nataraj commented on GitHub (May 24, 2019):

Here's the full workaround:

  1. Download this script and put it somewhere you can easily access within the sandbox.
  2. Edit the is_dropbox_valid() function (starts at line 254 I believe) to always return True (you don't even need to do much, just ensure that's the first line of the function and you don't even need to touch the rest).
  3. Start a sandboxed dropboxd instance.
  4. Now, run firejail --join=dropboxd ~/path/to/dropbox.py update
  5. This should update the binary properly.

I just tested this with a firejail-ed dropboxd and it updated properly! I'm going to close this for now and tag it with the workaround label as stated earlier.

<!-- gh-comment-id:495428366 --> @chiraag-nataraj commented on GitHub (May 24, 2019): Here's the full workaround: 1. Download [this script](https://www.dropbox.com/install?os=lnx) and put it somewhere you can easily access _within the sandbox_. 2. Edit the `is_dropbox_valid()` function (starts at line `254` I believe) to always `return True` (you don't even need to do much, just ensure that's the first line of the function and you don't even need to touch the rest). 3. Start a sandboxed `dropboxd` instance. 4. Now, run `firejail --join=dropboxd ~/path/to/dropbox.py update` 5. This should update the binary properly. I just tested this with a `firejail`-ed `dropboxd` and it updated properly! I'm going to close this for now and tag it with the workaround label as stated earlier.
Author
Owner

@cebas commented on GitHub (Oct 3, 2022):

Hi, this is still happening to me.
I have Kubuntu 22.04 and firejail 0.9.70
Is there any way to fix it with local profiles?

<!-- gh-comment-id:1265924643 --> @cebas commented on GitHub (Oct 3, 2022): Hi, this is still happening to me. I have Kubuntu 22.04 and firejail 0.9.70 Is there any way to fix it with local profiles?
Author
Owner

@powerman commented on GitHub (Aug 1, 2025):

Still actual.

As a glance firejail --join=dropbox dropbox-cli update and then manual restart works around the issue, but it usually starts spinning after a while after restart, so I'm not 100% sure it is actually fixed now.

<!-- gh-comment-id:3143650642 --> @powerman commented on GitHub (Aug 1, 2025): Still actual. As a glance `firejail --join=dropbox dropbox-cli update` and then manual restart works around the issue, but it usually starts spinning after a while after restart, so I'm not 100% sure it is actually fixed now.
Author
Owner

@kmk3 commented on GitHub (Aug 1, 2025):

Still actual.

As a glance firejail --join=dropbox dropbox-cli update and then manual
restart works around the issue, but it usually starts spinning after a while
after restart, so I'm not 100% sure it is actually fixed now.

What firejail version/distribution name/version?

For debugging, you could try commenting lines in dropbox.profile until it works
to see which ones are causing the issue and then post them here.

<!-- gh-comment-id:3143685150 --> @kmk3 commented on GitHub (Aug 1, 2025): > Still actual. > > As a glance `firejail --join=dropbox dropbox-cli update` and then manual > restart works around the issue, but it usually starts spinning after a while > after restart, so I'm not 100% sure it is actually fixed now. What firejail version/distribution name/version? For debugging, you could try commenting lines in dropbox.profile until it works to see which ones are causing the issue and then post them here.
Author
Owner

@powerman commented on GitHub (Aug 1, 2025):

Gentoo Linux. Using default dropbox profile. globals.local blacklists a few dirs in ${HOME}, completely unrelated to dropbox.

firejail version 0.9.74

Compile time support:
	- always force nonewprivs support is disabled
	- AppArmor support is disabled
	- AppImage support is enabled
	- chroot support is enabled
	- D-BUS proxy support is enabled
	- file transfer support is enabled
	- IDS support is disabled
	- Landlock support is enabled
	- networking support is enabled
	- output logging is enabled
	- overlayfs support is disabled
	- private-home support is enabled
	- private-lib support is disabled
	- private-cache and tmpfs as user enabled
	- sandbox check is enabled
	- SELinux support is disabled
	- user namespace support is enabled
	- X11 sandboxing support is enabled

For debugging, you could try commenting lines in dropbox.profile until it works
to see which ones are causing the issue and then post them here.

Sure, I know. But taking in account it starts spinning after a while after start and there is no way to force it start updating immediately - this kind of debugging may take days, if not weeks. Also it's not clear how to undo successful upgrade to force it upgrade again (just remove all files in .dropbox-dist/?).

<!-- gh-comment-id:3143703293 --> @powerman commented on GitHub (Aug 1, 2025): Gentoo Linux. Using default dropbox profile. `globals.local` blacklists a few dirs in `${HOME}`, completely unrelated to dropbox. ``` firejail version 0.9.74 Compile time support: - always force nonewprivs support is disabled - AppArmor support is disabled - AppImage support is enabled - chroot support is enabled - D-BUS proxy support is enabled - file transfer support is enabled - IDS support is disabled - Landlock support is enabled - networking support is enabled - output logging is enabled - overlayfs support is disabled - private-home support is enabled - private-lib support is disabled - private-cache and tmpfs as user enabled - sandbox check is enabled - SELinux support is disabled - user namespace support is enabled - X11 sandboxing support is enabled ``` > For debugging, you could try commenting lines in dropbox.profile until it works > to see which ones are causing the issue and then post them here. Sure, I know. But taking in account it starts spinning after a while after start and there is no way to force it start updating immediately - this kind of debugging may take days, if not weeks. Also it's not clear how to undo successful upgrade to force it upgrade again (just remove all files in .dropbox-dist/?).
Author
Owner

@kmk3 commented on GitHub (Aug 1, 2025):

For debugging, you could try commenting lines in dropbox.profile until it
works to see which ones are causing the issue and then post them here.

Sure, I know. But taking in account it starts spinning after a while after
start and there is no way to force it start updating immediately - this kind
of debugging may take days, if not weeks. Also it's not clear how to undo
successful upgrade to force it upgrade again (just remove all files in
.dropbox-dist/?).

That's unfortunate.

Not sure of a good way to debug it then.

Maybe it would be feasible to analyze the update code and create a separate
script that calls into the update function and/or that allows installing a
specific version.

Similarly to that comment above:

If that works, maybe it could be published in its own repository to help
improve the experience of other dropbox users.

<!-- gh-comment-id:3143826246 --> @kmk3 commented on GitHub (Aug 1, 2025): > > For debugging, you could try commenting lines in dropbox.profile until it > > works to see which ones are causing the issue and then post them here. > > Sure, I know. But taking in account it starts spinning after a while after > start and there is no way to force it start updating immediately - this kind > of debugging may take days, if not weeks. Also it's not clear how to undo > successful upgrade to force it upgrade again (just remove all files in > .dropbox-dist/?). That's unfortunate. Not sure of a good way to debug it then. Maybe it would be feasible to analyze the update code and create a separate script that calls into the update function and/or that allows installing a specific version. Similarly to that comment above: * <https://github.com/netblue30/firejail/issues/1630#issuecomment-495428366> If that works, maybe it could be published in its own repository to help improve the experience of other dropbox users.
Author
Owner

@powerman commented on GitHub (Aug 1, 2025):

Similarly to that comment above:

Link "this script" in that comment is useless.

<!-- gh-comment-id:3143975403 --> @powerman commented on GitHub (Aug 1, 2025): > Similarly to that comment above: Link "this script" in that comment is useless.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/firejail#1094
No description provided.