Nextcloud (Personal Cloud)
Nextcloud 🡕 hosts files, calendars and contacts for the network. The service is linked to Kanidm : no Nextcloud password to create, the network account is enough.
On workstations, the desktop client is installed and already linked to the account. No synchronization is set up by default.
Activating the service
Section titled “Activating the service”hosts: - hostname: "server1" profile: "server" services: nextcloud: title: "Mon cloud" domain: "cloud"The secrets for the service are generated alongside those for the rest of the fleet, to be run before the first deployment :
just configure-admin-host| Secret | Role |
|---|---|
nextcloud-admin-password | Local administration account |
nextcloud-whiteboard-secret | Token shared with the whiteboard |
oidc-secret-nextcloud… | OAuth2 client for the service in Kanidm |
None of these three secrets is meaningful to a human: they are randomly
generated. The last one’s name follows the declared subdomain (oidc-secret-nextcloud
if the service responds on nextcloud, oidc-secret-nextcloud-cloud if it responds
on cloud).
Service options
Section titled “Service options”| Option | Default | Effect |
|---|---|---|
darkone.service.nextcloud.plugins | calendar, contacts | Enabled applications |
darkone.service.nextcloud.adminUser | admin | Administration account name |
darkone.service.nextcloud.enableSsoRedirect | true | Redirects directly to Kanidm |
SSO redirection
Section titled “SSO redirection”With enableSsoRedirect, Nextcloud no longer displays its login form and
sends the user to Kanidm. One less click on every login, including for the
desktop client.
Instant notifications
Section titled “Instant notifications”notify_push is enabled: workstations receive changes via websocket instead
of polling the server every thirty seconds. Significantly reduced server load,
near-instant synchronization.
Verification from the server :
sudo -u nextcloud nextcloud-occ notify_push:self-testThe test requires the public URL of the service, so the zone’s reverse proxy must be reachable. The unit retries for fifteen minutes after a deployment, waiting for the gateway to finish starting.
On workstations
Section titled “On workstations”The client is installed as soon as a nextcloud service exists on the network.
| Option | Default | Effect |
|---|---|---|
darkone.home.office.nextcloud.enable | service detected | Installs the desktop client |
darkone.home.office.nextcloud.server | null | Forces a different instance |
darkone.home.office.nextcloud.enableAutoStart | true | Starts in the background at login |
darkone.home.office.nextcloud.enableWebdav | true | Provides the account linking wizard |
darkone.home.office.nextcloud.syncDir | null | Folder suggested in the wizard |
nextcloud.server accepts any URL, including an instance outside the
network.
Only two launchers appear in the applications menu :
| Launcher | Origin | Role |
|---|---|---|
| Nextcloud sync client | nextcloud-client package | Synchronizes a local folder |
| Webdav Login | framework, if enableWebdav | Links the account to the desktop (files, calendar, contacts) |
Everything else (account, folders, pause) is managed from the system tray icon : the framework no longer adds a settings launcher.
The system tray icon
Section titled “The system tray icon”Two GNOME module settings make it visible. A workstation running a different desktop must provide the equivalent.
| Setting | Value | Why |
|---|---|---|
| GNOME Extension | status-tray 🡕 | appindicator, the old one, no longer shows the client icon |
qt.platformTheme | qt5ct | gnome deprives all Qt applications of the system tray |
First login
Section titled “First login”- At login, the client window opens with the server address already filled in.
- The user clicks Log in: the browser opens Kanidm, where their session is generally already active.
- They grant access. No password is entered.
- The wizard then offers to choose a folder. It can be closed here without syncing anything: the account remains connected.
Accessing files, calendar and contacts
Section titled “Accessing files, calendar and contacts”To browse files from the file manager without syncing anything, the user
launches Webdav Login from the applications menu, or
nextcloud-webdav-login in a terminal.
- The browser opens on Kanidm, the user grants access.
- The wizard saves a GNOME online account : the share appears in the file manager, the calendar and contacts in Evolution.
- Nothing else to enter. The wizard nonetheless displays the application password, usable from any other WebDAV client.
Start from a healthy configuration
Section titled “Start from a healthy configuration”The pre-filled address is only valid for account creation in the wizard. A machine that already carries one (inherited from a previous instance, for example) keeps it as-is, with its former address: the client then displays as “offline”, frozen, with no possible action.
systemctl --user stop nextcloud-client.servicerm -rf ~/.config/Nextcloudsystemctl --user start nextcloud-client.serviceThe online account itself is reset from Settings → Online accounts, or simply by relaunching the wizard.
Updating
Section titled “Updating”Nextcloud refuses to skip a major version. The version is pinned in the module and must be advanced one major version at a time, after verifying that the instance reports the previous one. The full procedure, including backup, is described in Services.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Tip |
|---|---|
| Administrator cannot log in | Use /login?direct=1 |
| Slow synchronization on workstations | Run notify_push:self-test on the server |
| Whiteboard not responding | whiteboard missing from plugins, or just configure-admin-host never re-run since |
| Client re-requests authorization each session | Session keyring not unlocked |
| Client shows unknown account, offline | Previous configuration: clear ~/.config/Nextcloud |
| Share asks for password in file manager | Wizard never run, or keyring locked |
| No icon in system tray, therefore no access to settings | status-tray extension disabled, or qt.platformTheme reset to gnome |