Skip to content

Instantly share code, notes, and snippets.

@p-fruck
Last active March 11, 2026 09:38
Show Gist options
  • Select an option

  • Save p-fruck/6ec354da8fb348c19cca013c6c64df76 to your computer and use it in GitHub Desktop.

Select an option

Save p-fruck/6ec354da8fb348c19cca013c6c64df76 to your computer and use it in GitHub Desktop.
Flatpak Nextcloud Client Nautilus Integration

Setup

This has been tested on Fedora Silverblue and might need adaptation for other distros. This setup enables nextcloud integration for nautilus with the flatpak version of the nextcloud desktop client.

Prerequisites

The following packages must be installed

Configuration

As the nextcloud-client-nautilus package depends on the nextcloud-client package, I was unable to install the integration without the full nextcloud client using my system package manager and instead performed the install of the nautilus integration manually, which should work on other distros too, maybe with slight modifications.

The extension itself is a simple python script that can be installed like this:

mkdir -p ~/.local/share/nautilus-python/extensions/
curl -Lo ~/.local/share/nautilus-python/extensions/syncstate.py https://github.com/nextcloud/desktop/raw/master/shell_integration/nautilus/syncstate.py

If you restart nautilus, you should already see your shares in the side panel and be able to use the rightclick context menu. You might have to kill nautilus instances manually beforehand: pkill -9 nautilus

To see the debug output of the nautilus-python extension, use NAUTILUS_PYTHON_DEBUG=misc nautilus

Icons

Currently all sync icons are missing as they would are packaged by the nextcloud-client. You can copy them directly from the nextcloud desktop source code (run this code in bash):

curl -LO https://github.com/nextcloud/desktop/archive/refs/heads/master.tar.gz
tar -xzvf master.tar.gz
for size in 128x128 16x16 256x256 32x32 48x48 64x64 72x72
do
  target=~/.local/share/icons/hicolor/${size}/apps
  mkdir -p ${target}
  for icon in desktop-master/shell_integration/icons/${size}/*
  do
    # basename starts with oC_ instead of Nextcloud_
    basename=$(basename ${icon})
    cp ${icon} ${target}/${basename/oC/Nextcloud}
  done
done
rm -r desktop-master master.tar.gz

Now you should have a "proper" nextcloud desktop integration for nautilus :) Let's hope nautilus will be packaged as flatpak soon and its flatpak extensions become a thing...

@p-fruck
Copy link
Author

p-fruck commented Aug 22, 2025

I had to swop first curl command para order to this to make it work:

@p-sims Thanks for pointing this out, I updated my gist accordingly. Let's hope the wayland issue gets fixed soon...

@ecodiv glad to hear that it works with AppImage too ^^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment