Category Archives: 08 – Reference

Nextcloud Apps Directory

Welcome to the NZRT Wiki Podcast. Today we’re looking at 📱 Nextcloud Apps Directory.

So if you’ve been wondering what apps NZRT recommends layering on top of Nextcloud, this episode walks you through the full catalog — what each app does, who at NZRT uses it, and whether it’s considered essential or just optional.

Let’s start with the core communication apps. These are the ones that keep the team connected day to day. First up is Talk, which handles chat, video calls, and screen sharing — version 17 or higher, and it’s used by everyone across the org. Then you’ve got Calendar for shared scheduling, mainly used by xc, sun, and fin. Contacts gives you an address book and light CRM functionality, and that’s in the hands of xc, pam, and cas. Mail is also available for email integration, though it’s flagged as optional and mainly relevant to fin and han.

Moving into productivity and project management apps. Deck is a Kanban-style board for task management — think cards and columns — and pam, cas, sun, and dan all rely on it. Collectives is a wiki-style documentation tool, used by xc and ema for team knowledge bases. Nextcloud Office integrates OnlyOffice so you can edit documents right inside Nextcloud — that’s a core app for ema, fin, and pam. Tasks and Notes round out this category as optional tools available to everyone if they want lightweight to-do lists or quick note capture.

For file management, most of the heavy lifting comes from built-in apps. You’ve got the core Files app, Groupfolders for setting up team folders with proper permissions, External Storage for mounting things like NAS drives or S3 buckets, and then the usual suspects — Trash for the recycle bin, Versions for file history, and Sharing for passing files and folders around. All of these are available to everyone, with a few like Groupfolders and External Storage being managed by xc or dan.

Now security and admin — this section matters a lot. User LDAP connects Nextcloud to directory services for authentication. Two-Factor Auth enforces 2FA at the platform level. Suspicious Login watches for anomalous login patterns. Audit Logging keeps compliance records. And Brute-Force Protection throttles repeated failed login attempts. All of these are core and sit firmly in xc’s domain, with dan also involved in LDAP and audit logging. On top of those, you’ve got optional extras: OTP for one-time passwords, and FIDO2 WebAuthn if you want hardware key support.

Integration and automation apps are next. Webhooks let you trigger automation based on events inside Nextcloud — that’s useful for dan and ema. The REST API and WebDAV support are built in and used by everyone for file sync and system integrations. OAuth2 is available optionally for third-party authentication flows, managed by dan.

For search and performance, Full-Text Search with Elasticsearch integration lets you search inside documents, not just filenames — that’s recommended and looked after by dai and ema, with dan handling the Elasticsearch side. Redis is the caching backend and is core infrastructure managed by dan.

In the Office and Document category, Nextcloud Office appears again because it’s that central — ema and fin use it for document collaboration. PDF Viewer supports annotation and viewing, used by fin, cas, and han. Text is a plain text editor available to all as optional. Markdown Editor is also optional and mainly used by ema and dai.

For CRM and ERP integration, the REST API built into Nextcloud is what connects to Dolibarr and WordPress. Webhooks can be layered on top for event-driven sync. Both are managed by ema and dan.

Backup and disaster recovery wraps things up. There’s a Backup app for built-in backups managed by dan, and External Storage doubles as a backup mounting point for NAS.

There’s also a short list of apps NZRT does not recommend. Nextcloud Hub is noted as already built in, so no separate install needed. Pricing Plans is a SaaS-only concept that doesn’t apply here. Custom Apps require vetting before use. And Third-Party Cloud Storage is skipped in favour of the External Storage app instead.

Now, the wiki includes an installation script — and rather than reading you lines of code, here’s what it does in plain terms. It defines a list of recommended app names — things like talk, calendar, contacts, deck, collectives, the Nextcloud Office package, user LDAP, two-factor auth, suspicious login, full-text search, audit logging, and groupfolders. It then loops through that list one by one, installs each app, enables it, and prints a confirmation message so you can see what’s been set up. It’s a clean, repeatable way to get a fresh Nextcloud instance up to NZRT standard in one go.

To zoom out: the whole point of this app catalog is to make Nextcloud actually work for NZRT’s specific setup. That means tight Dolibarr integration via the REST API, team communication through Talk and Calendar, and solid document workflows through Office and PDF Viewer. Every app on the core list has a clear owner and a clear job.

That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.

Nextcloud Cli Cheatsheet

Welcome to the NZRT Wiki Podcast. Today we’re looking at 🎯 Nextcloud CLI Cheatsheet.

If you manage a Nextcloud installation, you’ll quickly discover that the command line is your best friend. Nextcloud ships with a built-in tool called occ — short for ownCloud Console — and it handles just about everything you’d ever need to do from the server side. Let’s walk through the key things you can do with it.

Starting with user management. You can create a new user, delete one, or just pull up a list of everyone on the system. If someone forgets their password, there’s a command to reset it. You can also temporarily block a user from logging in by disabling their account, then re-enable them when needed. Setting storage quotas is straightforward too — you specify the user and a size value, and Nextcloud enforces that limit. You can also check when a user last logged in, which is handy for auditing inactive accounts.

Group management works in a similar way. You create a group by name, add users to it, remove users from it, and delete the group when it’s no longer needed. There are commands to list every user inside a specific group, and also to look up which groups a particular user belongs to — both directions covered.

For app management, occ lets you install, enable, disable, update, and remove apps without touching the web interface. You can list everything currently installed, check info on a specific app, or update all apps in one go. This is especially useful when you’re doing maintenance windows and want to script the whole thing.

File management is where things get really practical. If you’ve added files directly to the server — bypassing the web upload — Nextcloud won’t know they exist until you run a file scan. You can scan all users at once or target a specific user. There’s also a cleanup command that permanently removes trash items older than thirty days, a cache check for flagging file database inconsistencies, and commands to transfer all of one user’s files to another user, or to clear the file cache entirely.

On the database side, there are a few important housekeeping commands. One converts the file cache table to support larger integer values, which is something you’ll need on big installations. Another checks for and adds missing primary keys. You can also run raw database queries directly through occ if you need to inspect table sizes or check on the database state.

Configuration management is powerful. You can get or set configuration values for any app, delete config keys you no longer need, or list all configuration currently active on the system. System-wide settings work the same way — for example, you can read or update the list of trusted domains that Nextcloud will respond to.

Maintenance mode is something you’ll use before any major update or restore. One command turns it on, blocking all user access, and another turns it off again. You can also check the current system status, find out where the data directory lives, and get help on any specific command if you’re unsure of its options.

For sharing, you can list all active shares on the system, create a new share pointing to a file or folder, delete a share by its ID, or transfer share ownership from one user to another. This is useful when staff members leave and you need to reassign their shared content cleanly.

Logging and monitoring are covered too. Rather than using occ directly for logs, you’ll tail the main Nextcloud log file — you can view the last fifty lines, watch it in real time as events come in, or search it for error-level entries specifically. Background jobs have their own set of commands: you can check the queue status, list pending jobs, or manually trigger one job to run immediately.

Backup and restore rely on standard Linux tools alongside occ. For the database, you use mysqldump to export everything to a SQL file, and then restore by piping that file back into MySQL. For the Nextcloud application directory itself, you compress it into a tar archive for backup and extract it to restore. Always combine both steps — database and files — for a complete backup.

Finally, if you’re running LDAP for centralised user authentication, occ has you covered there too. You can test whether your LDAP connection is working, view the current LDAP configuration, sync users and groups from your directory, and inspect the mapping between LDAP entries and Nextcloud accounts.

At NZRT, both xc as the admin and dan as the DBA work with these commands regularly — for provisioning new users, managing groups, running maintenance, and troubleshooting issues as they come up. If you want to go deeper, the related notes in the wiki cover the full occ command reference and the administration overview.

That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.

Occ Command Reference

Welcome to the NZRT Wiki Podcast. Today we’re looking at occ Command Reference.

If you’ve ever needed to manage Nextcloud from the command line, the occ tool is your best friend. occ stands for ownCloud Console, and it’s Nextcloud’s built-in command-line interface. You’ll find it sitting in the Nextcloud root directory, and you run it either directly as occ or as php occ depending on your server setup. Let’s walk through the main command categories and what you can do with each one.

Starting with user management, which is probably where you’ll spend the most time. You can create a new user, delete one, list all users or filter that list by a search term, reset passwords, disable or enable login access, check when someone last logged in, and pull a full user report showing their email, login history, and quota. You can also get or set individual user preferences. For example, there’s a command specifically for setting a user’s storage quota, like capping someone at a hundred gigabytes. And if you want everything about a specific user in one go, the info command gives you a detailed breakdown.

Groups work in a very similar pattern. You can create and delete groups, list them or search for one, see who’s in a group, add or remove individual users, and pull group details.

Next up is app management. You can list every app installed on your Nextcloud instance, filter that list to show only enabled or only disabled apps, install new apps by name, enable or disable them without uninstalling, update individual apps or update everything at once, and completely remove an app. There’s also a code check command that’s handy for development work.

For file management, the scan commands are particularly important. You can trigger a full index of all user files across the entire instance, or narrow it down to a single user or a specific path. There’s a cleanup command that removes files sitting in the trash for more than thirty days, and a dry-run option that shows you what would be deleted before you commit. You can also transfer all of a user’s files to another user, which is useful for offboarding, or limit that transfer to a specific folder.

Database commands tend to be occasional maintenance operations. These include converting the file cache to support larger sixty-four-bit IDs for big file sets, adding missing primary keys or indices that the database might have lost, converting between database types, and even running a raw SQL query directly if you need to drop down to that level.

Configuration is handled through a consistent set of commands. You can get or set values at the app level or the system level, delete config keys, list the entire configuration, and import or export config as a file. This makes it straightforward to move settings between environments or back things up before a change.

If your Nextcloud is connected to an LDAP directory, there’s a dedicated category for that too. You can test the connection, view or update LDAP settings, sync users and groups from your directory into Nextcloud, list users not yet confirmed, and clear cached mappings when you need a fresh start.

Maintenance commands are ones you’ll want to know before doing any upgrade or significant change. You can check the overall system status, toggle maintenance mode on or off to block or allow user access, and switch to single-user mode for admin-only access. There are also commands for refreshing the Apache config file, upgrading themes, and updating the MIME type database.

Background jobs have their own section too. You can check the status of the pending queue, list everything in it, execute the next job in line, or target a specific job by its ID. For monitoring more broadly, you can tail the Nextcloud log in real time, set a size limit on it, and find out exactly where the log file lives on disk.

There’s also two-factor authentication management, where you can enforce or disable two-factor auth for individual users and check the current state across the system. Sharing commands let you list all shares, filter by user, create a new share, or transfer share ownership between users.

Now, the wiki includes some practical NZRT examples worth explaining. The first walks through creating a new finance team user by reading the password from an environment variable rather than exposing it in plain text, then adding that user to the finance group, and setting their quota to two hundred gigabytes. The second example is a scheduled overnight task set to run at two in the morning, running as the web server user, to automatically sync LDAP users into Nextcloud. The third schedules a three-in-the-morning daily job that first cleans up old trash and then rescans all files. And the fourth runs every five minutes to check the background job queue and append status output to a log file for monitoring.

In the NZRT environment specifically, it’s the database administrator and system administrator roles that rely on these commands for day-to-day maintenance, user provisioning, and troubleshooting.

That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.

Webdav Cheatsheet

Welcome to the NZRT Wiki Podcast. Today we’re looking at WebDAV Cheatsheet.

WebDAV is a protocol that lets you interact with files stored on a server over HTTP. For NZRT, that means you can upload, download, move, copy, and delete files on Nextcloud programmatically, without ever opening a browser. Every operation you’ll see today targets a base endpoint on the Nextcloud server, structured around a path that includes the word “dav”, then “files”, then your username. That username part is important — every command you run needs to be tailored to the account you’re working with.

Let’s start with the basics. To upload a file, you send a PUT request to Nextcloud using curl. You authenticate with your username and password, point curl at the file on your local machine, and specify the destination path on Nextcloud where you want it to land. That’s it — one command, file is uploaded.

Downloading is the reverse. You send a GET-style request with your credentials, provide the remote file path, and tell curl where to save it locally. Simple and reliable.

Now, listing files works a little differently. WebDAV uses a special request type called PROPFIND, which asks the server to return properties about files and folders. You add a header that tells the server you want to look one level deep — so you see the contents of a folder without recursing into subfolders. You also pass a small XML body that asks for file properties. The server responds with an XML document describing everything in that folder.

Deleting a file is straightforward — you send a DELETE request with your credentials and the path to the file. No confirmation prompt, so be deliberate.

Creating a folder uses another WebDAV-specific request type called MKCOL, short for “make collection.” You point it at the path where you want the new folder, authenticate, and Nextcloud creates it.

Copying a file involves a COPY request. You point curl at the source file, and you add a Destination header that specifies where the copy should end up. Both paths need to be full URLs on the server.

Moving or renaming a file works the same way — you use a MOVE request instead, with a Destination header pointing to the new path or new name. One command handles both renaming and relocating.

If you need file metadata — things like content type, file size, last modified date, or an internal file ID — you use PROPFIND again, but this time against a specific file rather than a folder, and you pass a more detailed XML body listing exactly which properties you want back.

Now for the more powerful stuff. There’s a bulk upload script that loops through all PDF files in your current directory and uploads each one to a specific remote folder on Nextcloud. You set four variables at the top: the server URL, your username, your password, and the remote path — in the example that’s a Finance invoices folder for April 2026. The script then iterates over every PDF it finds and fires off a PUT request for each one, printing a confirmation line after each upload.

The bulk download script does the opposite. It first runs a PROPFIND to list files in a remote folder, extracts the file paths from the XML response, then loops through them and downloads each one to your current local directory.

You can also mount Nextcloud as a drive on Linux. You install a package called davfs2, then run a mount command pointing at the WebDAV URL, specifying a local mount point and your username. You’ll be prompted for your password. Once mounted, you interact with Nextcloud files exactly like a local folder. To disconnect, you run the unmount command.

On Windows, it’s even simpler. Open File Explorer, choose Map Network Drive, paste in the WebDAV URL with your username at the end, check the option to connect with different credentials, and enter your Nextcloud username and password. Nextcloud appears as a mapped drive in Explorer.

There’s also a practical NZRT example in the cheatsheet — a nightly invoice sync. This script queries the Dolibarr database for invoices created in the last day, then uploads each matching PDF from the local Dolibarr invoices folder to Nextcloud under the Finance invoices path. This is the kind of automation WebDAV was built for: bridging your ERP system and your file server without any manual steps.

To put it in context for NZRT — WebDAV is the glue that connects Nextcloud to your other systems. Whether you’re syncing Dolibarr invoices, running nightly backups, or building integrations with third-party tools, WebDAV gives you a consistent, scriptable interface to your Nextcloud storage. Related topics worth reading alongside this one include the REST API and WebDAV overview, the Nextcloud CLI Cheatsheet, and the Dolibarr Integration notes.

That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.