Installation (Fedora RPM)
This page is the end-user path: install the packaged .rpm, then turn Wusel on.
It is the counterpart to Trying it out, which builds
from source. Building the RPM itself is covered by
Project, licence & distribution and
packaging/rpm/README.md in the repository.
Get the package
Every v* tag builds the RPM for x86_64 and aarch64 and attaches both to a
GitHub Release, so the normal route is to download one from
the latest release and install
that file. These are the unsigned community RPMs — there is no Wusel dnf
repository, so dnf will not update them for you; grab the next release the same
way.
You can also build the RPM yourself (mise run rpm, output in dist/); see
Project, licence & distribution and
packaging/rpm/README.md.
Install the package
sudo dnf install ./wusel-*.rpm
The one dependency the spec states explicitly is fuse3, for the setuid
fusermount3 helper the unprivileged mount needs; the shared libraries the
binary and the Nautilus extension link against come in automatically as
soname dependencies. The nautilus and gnome-shell applications are only
Recommends: the package installs on a machine without them and the mount works
— you simply get no sidebar entry, no emblems and no Shell search. The search
provider in particular links no GNOME Shell library at all; it is the wusel
binary answering D-Bus, which the Shell activates on demand. dnf also runs
Fedora’s icon-cache and desktop-database triggers for you.
The package installs the wusel binary, a systemd user service template, the
Nautilus extension with its emblem icons, the GNOME Shell search provider, and
the Nautilus sidebar (cloud-provider) registration for the default account.
Turn it on
Three steps: log in, enable the mount service, then load the desktop integration once.
Step 1 — Log in
wusel login https://cloud.example.org
This runs Nextcloud’s official Login Flow v2: it prints a URL, you approve the
connection in your browser, and Wusel stores an app password. By default that
password goes into your OS keyring (GNOME Keyring / KWallet); if no keyring is
available it falls back to a 0600 file. To force the file, log in with
wusel login --keyring false <url>. Nothing is mounted yet.
Step 2 — Enable the mount (systemd user service)
The mount runs as a user service — no sudo, tied to your login session. One
instance per account; the default account is wusel@default:
systemctl --user enable --now wusel@default
--now mounts your cloud at ~/Wusel immediately, and enable makes it come
back automatically at every login. This one service is the whole running
Wusel: it serves the filesystem, drives the Nautilus sidebar entry and per-file
emblems, and pushes live emblem updates.
Check it and follow its log:
systemctl --user status wusel@default
journalctl --user -u wusel@default -f
|
|
Step 3 — Load the desktop integration (log out and back in)
The Nautilus extension and the GNOME Shell search provider are loaded by their host processes at session start. After installing the package, log out and log back in once so both pick it up.
-
Files (Nautilus) — a Wusel (Nextcloud) entry appears in the sidebar, and files carry a status emblem (cloud = online-only, cloud+check = cached, green check = pinned/always offline, up-arrow = pending upload). Right-click a file for Make Available Offline / Free Up Space.
-
Search — start typing in the Activities overview; Nextcloud matches appear under Wusel (Nextcloud) and open from your local
~/Wusel.
|
Faster than a full re-login: restart Nautilus with |
If the search provider does not show up
The search provider is D-Bus-activated by GNOME Shell — there is no service to start. If results do not appear:
-
Open Settings → Search and make sure Wusel (Nextcloud) is present and toggled on (GNOME lists a provider here only after a Shell restart).
-
Confirm you are logged in (Step 1) — search queries the server with your stored credentials.
-
First queries can be slow while the server warms up; Wusel waits up to a few seconds per query.
See File-manager integration for how the emblems, menu and search work under the hood.
More than one Nextcloud account
Each account is its own login, its own mount folder, and its own service
instance. For an account named work:
wusel login --account work https://cloud.work.example # log in
sudo wusel desktop install-provider --account work # sidebar entry (needs root)
systemctl --user enable --now wusel@work # mount ~/Wusel-work
The RPM ships the sidebar registration only for the default account; additional
accounts register theirs with wusel desktop install-provider (it writes into a
system directory, hence sudo). Log out and back in so the new sidebar entry
appears.
Turn it off / uninstall
Do it in this order — disable the user service first (the package can’t stop a service running in your session), then remove the package:
systemctl --user disable --now wusel@default # unmount now + stop auto-mount
sudo dnf remove wusel # remove the package
dnf remove deletes every file the package owns — the binary, the systemd unit,
the Nautilus extension and emblems, the search provider, and the default
account’s sidebar registration. Sidebar registrations that Wusel wrote for
named accounts are cleaned up too (a removal scriptlet handles those). Your
Nextcloud is untouched — Wusel only ever mounted it.
What is deliberately left behind
Your per-user data stays: ~/.config/wusel (config + credentials),
~/.local/state/wusel (the state database) and ~/.cache/wusel (downloaded
file blobs). RPMs never touch files in a home directory — and keeping them means
a later reinstall picks up exactly where you left off, with no new login.
Wipe everything and start fresh
When you want a clean slate — reinstall from zero because something is broken — remove that per-user 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
# Drop the app password from the keyring (default storage; no-op if it was a file):
secret-tool clear service wusel 2>/dev/null || true
After that, nothing of Wusel remains: a fresh dnf install + wusel login
starts completely from scratch.
|
Disabling the service before removal also clears its enable symlink under
|