Uninstall
Order matters: disable the user service first. A package cannot stop a service running inside your session, and removing the package underneath a live mount leaves the mountpoint behind.
systemctl --user disable --now wusel@default # unmount now, and stop auto-mounting
sudo dnf remove wusel wusel-nautilus # or: sudo apt remove wusel wusel-nautilus
Repeat the first line for every named account you enabled.
On dnf and apt, removing wusel takes wusel-nautilus with it, because
it depends on wusel; naming both does the same. On Arch, name both:
sudo pacman -R wusel wusel-nautilus.
Your Nextcloud is untouched throughout. Wusel only ever mounted it.
What removal takes with it
Everything the packages own: the binary, the systemd unit template, the search
provider and the default account’s sidebar registration from wusel; the
Nautilus extension and its emblem icons from wusel-nautilus. Sidebar registrations that Wusel wrote for named
accounts
(/usr/share/applications/org.freedesktop.CloudProviders.wusel.*.desktop) are
cleaned up too, by the wusel package’s removal scriptlet — the RPM’s %postun, the
DEB’s postrm, the Arch package’s post_remove.
What is deliberately left behind
Your per-user data:
-
~/.config/wusel— configuration, credentials and pins -
~/.local/state/wusel— the state database -
~/.cache/wusel— downloaded file contents -
/var/tmp/wusel-<uid>/— the state database, if Wusel moved it there because your home directory is on a network filesystem
Packages never touch files in a home directory, and keeping these means a later reinstall picks up exactly where you left off, with no new login.
Wipe everything and start fresh
When you want a genuinely clean slate — reinstalling because something is broken — remove that data as well:
systemctl --user disable --now wusel@default # if not already done
systemctl --user reset-failed 'wusel@*' 2>/dev/null || true
rm -rf ~/.config/wusel ~/.local/state/wusel ~/.cache/wusel
rm -rf /var/tmp/wusel-$(id -u) # only exists if the database was relocated
secret-tool clear service wusel 2>/dev/null || true # the app password in the keyring
The last line is a no-op if the password was in the 0600 file rather than the
keyring — that file went with ~/.config/wusel.
After this nothing of Wusel remains: a fresh install plus wusel login starts
from zero.
The app password is revocable on the server side too. If you are decommissioning a machine rather than reinstalling, revoke it in Nextcloud under Settings → Security → Devices & sessions.
If you removed the package first
Disabling the service also clears its enable symlink under
~/.config/systemd/user. If the package went first and left a dangling link
behind:
systemctl --user disable wusel@default
systemctl --user daemon-reload
This tidies it up even though the unit file is already gone.
A source install
There is no package to remove, and no scriptlet cleans up after you. Disable the service, then remove what you installed by hand — the sidebar registrations first, while the binary that removes them is still there:
systemctl --user disable --now wusel@default
rm -f ~/.config/systemd/user/wusel@.service # the unit `wusel service enable` wrote
systemctl --user daemon-reload
sudo wusel desktop uninstall-provider # add --account NAME for each named account
sudo rm -f /usr/local/bin/wusel # or ~/.local/bin/wusel
cd /path/to/wusel/integration/nautilus && sudo make uninstall
sudo /path/to/wusel/integration/gnome-search/install.sh --uninstall
Skip the lines for the pieces you never installed: the sidebar registration
exists only if you ran sudo wusel desktop install-provider, the search
provider only if you ran integration/gnome-search/install.sh.
Then the per-user data above — including /var/tmp/wusel-<uid>/ — if you want
it gone.