Moving away from my self-hosted Nextcloud setup - Part 1
The more I use Nextcloud, the more I dislike it for personal use. I’ve been self-hosting Nextcloud for almost 10 years, all the way back to when it split from Owncloud. However, it has become this huge monolithic lumbering behemoth requiring more hands-on maintenance than ever. I have decided to stop using Nextcloud at home, instead switching to a modular approach.
This will be part of a series, with updates on each of the tools I decide to use to replace Nextcloud features.
Solutions
I think the biggest bottleneck for me is database. Mine is still running the sqlite database, and with the huge Nextcloud codebase sitting on top of it, the database is crippled. I know I can switch to a different database system, but I have no desire to become versed in managing databases.
I guess I’m old school and want to stick with the Unix philosophy I want to find a replacement for Nextcloud monolithic design and deployment, ideally systems and services that do not use a database.
This means I really want all the services Nextcloud performs to be separated into smaller systems that specialize in that one feature. The entire system will be compartmentalized, meaning my bookmarks manager can’t also take down my file syncing system.
I’ve been thinking about this a lot since I used Syncthing at the beginning of winter (2023-2024) as a test between my backup phone and a laptop for my LAN only projects. Additionally, I’ve been testing out a lot of different services over the last couple months and I’ve found some favorites.
I also bounce around to a lot of different machines and mobile devices. Having a compartmentalized system means it will be easier to setup new devices with the individual services I want, rather than the whole shebang.
Last is varied systems. I want the ability to use any and every device, whether its Linux and Android, or Windows and iOS. I want to be able to access all of my data straight in the browser, or in an app, or through the commandline. Having individual services means I can find tools that do that thing on all the ways I want access to it.
Nextcloud features to replace
- Contact sync (CardDAV)
- Calendars (CalDAV)
- Tasks
- Bookmark sync
- KeePass web password manager
- Messaging
- WebDAV file access
- Browser file access with light file editing
- Browser calendar and tasks viewing
- File sync
- Camera roll backup
Alternative workflows
For the next few weeks I’m going to be testing new apps and services to replace Nextcloud, adhering as best I can to these requirements:
Requirements
- Prefer flat file systems with no database
- Docker or container-based
- Map the config directory for easy backups
- Accessible in the browser
- Has Android client
- Has a CLI/TUI client
- Multi-user
x86andarm64versions of the server for low power transition later
Replacements to test
- Radicale for calendars, contacts, and tasks.
- Shaarli for bookmarks management and syncing
- Vaultwarden for password management
- XMPP for messaging (looking for help with this, I’ve struggled in the past with XMPP deployments)
- NFS & Samba to replace accessing files with WebDAV
- Dufs for web file browsing and light editing
- Syncthing for file syncing
General Nextcloud thoughts
There’s nothing wrong with Nextcloud. They make deploying all these features extraordinarily simple, most with a single click. I think they are still a great company and fantastic for open-source. I personally think Nexcloud is focused on providing solutions to mid to large enterprise deployments and not home self-hosters. Yes, you can absolutely self-host it, but all the growth and features are focused on enterprise users, which is totally understandable.
One of the challenges of Nextcloud is that it is saying it is for self-hosters and home users, but building all of its features around large enterprise deployments. This means you really need huge hardware specs and a separate (and optimized) database server, plus dedicated SysAdmin support.
My Nextcloud instance is excruciatingly slow. In fact it is so slow that all other features, minus background sync, are unusable. I can’t look at files in the browser. I can’t manage a calendar in the browser. WebDAV is so slow it times out.
This herein lies the main issue: Nextcloud can do everything you need for productivity, but should it?
- - - - -
Did you like this post? Give it an upvote by clicking on the arrows below! Sending me an upvote is like you and I giving each other a high five.
🙏 😎
Thank you for reading! If you would like to comment on this post you can start a conversation on the Fediverse. Message me on Mastodon at @cinimodev@masto.ctms.me. Or, you may email me at blog.discourse904@8alias.com. This is an intentionally masked email address that will be forwarded to the correct inbox.If you enjoy the random stuff I write here, post to Mastodon, or watch on YouTube, and are feeling generous, I am open to tips of Ko-fi.