Nextcloud can't even get Notes done right. I lost the entire contents of the note randomly not long ago. And the mobile Note app refuses to load the editor sometimes.
That being said, most of the time, Nextcloud works ok. I don't want to replace Nextcloud with another jack of all trades, master of none. Instead, I'm slowly migrating to good alternatives that do one thing well: Immich for photos, Obsidian for notes.
Most of the time isn’t enough when dealing with data these days unfortunately. I’ve been using google docs since 2009, and I have lost 0 data in that time. I still have my student essays from back then. Things need to be this reliable to compete unfortunately.,
I’ve had way more issues of unrecoverable data with self managed tools than the major cloud hosted tools. There’s risks with everything, and I only have so much time in the day to spend on these things..
YMMV of course. I’ve come to the conclusion that a lot of self hosters are unintentionally confused about the differences between those things, and it makes an easy recipe for problems.
How have you liked Obsidian? I was going to use it but realized it pay walled sharing notes between devices. Looking into this again - are you self hosting Obsidian via LiveSync plugin?
Thanks!
I have termux running on my phone with a cron job to pull in new changes. The plugin I mentioned is not very performant on Android unfortunately.
Except I wanted more security and multiple users. Instead of using the default admin user, I created one user for each person. Done in the "_users" database. Then create one database for each person. Assign each user as a "Member" to their respective database, not admin. Now each person has their own credentials that can access only their database.
It can be very buggy and slow, especially the addon apps, but after years of usage I cherry-pick the functions that works for me from those that are too basic or unstable. The experience of Nextcloud is very uneven.
They have been continuously chipping away at making OSS more suitable for business and government use-cases (from Big Blue Button to NextCloud). OpenCloud and OpenTalk are some of their current in-house developed efforts in this sector.
there is something about "theme" code leading to complete control of servers that is fundamentally broken in every way, there is no coming back from this reputation
https://www.php.net/manual/en/language.types.type-system.php
As for "wat videos", you'll find that about anything.
Google Calendar is the single most indispensable feature of the entire Google suite for me (apart from Mail, of course), so I can't see myself switching to something without, and yet Nextcloud continues being the seemingly only self-hosted alternative that has it (including the web interface: I don't want to have to run a second web browser like Thunderbird to edit calendar entries on my computer).
What is it about JS calendar shells that makes them so seemingly hard to implement? Even the big-name open source CalDAV servers like Baikal that flirt with corporate adoption never seem to implement them.
https://opencloud.eu/en/news/opencloud-calendar-and-contact-...
It's the integration of both that makes Google (and, I guess, Nextcloud) useful: you can add an event on your computer (which is where most of the scheduling and planning happens), and then inspect and be alerted of it on your phone (which is with you when you are in a random location and need to be reminded of an event).
Even if there does exist a standalone JS calendar application that can sync with CalDAV, you would be left with an awkward setup when self-hosting, since now for no obvious reason you need to have two services on the same machine (the database and the frontend) that maintain a copy of the same state and need to sync with each other constantly.
I am intrigued… for sure Nextcloud is too slow at times and too often in maintenance mode after an update (but I’m still on the single container!)
I've not dug, but on first look https://opencloud.eu/en is a vague brochure with no real information.
> OpenCloud is based on a fork of the open source software ‘ownCloud Infinite Scale' (OCIS), whose components were co-developed by developers from the science organisation CERN and other active contributors. OpenCloud is now being further developed.. clear focus on data protection, interoperability..
https://owncloud.dev/ocis/ | https://github.com/owncloud/ocis
> modern file-sync and share platform.. oCIS breaks down the old [PHP] ownCloud 10 user specific namespace.. makes the individual parts accessible to clients as storage spaces and storage space registries.. WebDAV based oc sync protocol to manage files and folders, ocs to manage shares and TUS to upload files in a resumable way. On the server side REVA is the reference implementation of the CS3 apis which is defined using protobuf. By embedding libregraph/idm, oCIS provides a LDAP interface to make accounts, including guests available to firewalls and other systems.
2021, https://owncloud.com/news/owncloud-infinite-scale-live-at-ce... | https://www.youtube.com/watch?v=1oBQfD9QrCs
> [oCIS] first production deployment.. CERN IT department‘s storage team has engaged in UI, API and backend development with ownCloud for many years.. users have access to the underlying data repository containing 1.4 billion files and 12 petabytes of data.
2025 fork, https://github.com/orgs/opencloud-eu/discussions/262 | https://www.youtube.com/watch?v=6cZKzpEw62M | https://www.heise.de/en/news/Ex-ownCloud-devs-seek-new-start...
> OpenCloud discusses the challenges that arise when proprietary products are discontinued or acquired by competitors.. examines a current case.. new company is likely to include over a dozen employees who previously worked on Infinite Scale for ownCloud.
This data architecture problem burns you whether you are native or mobile, is the secret boss lurking in most application development. I wonder if OpenCloud is doing better than NextCloud with their middle-layers!
In my stack software shipped with Docker are the most unreliable, opaque messes. Whereas bare metals are usually light, lean and sustainably maintainable, especially single executables.
It's also often used by users shying away from maintenance -- often due to a demanding schedule. Sometimes not grasping the level of investment they need to do to have a good Dockerfile. If seen too many self-managed installations where the user mapping is utter crap an the process are running with random system users or random end-user UIDs.
I’m not using docker to deploy things because the things I’m deploying need a complicated environment, I’m using it because it’s an incredibly easy and consistent way to deploy things. It’s an immutable image that is highly convenient to distribute, update, and manage, which is pretty much the opposite experience of installing software on virtual machines.
Dropping a docker compose file into Portainer and I’m up and running with a new service in a few seconds. I’ve removed the overhead and spin up time of VMs, there’s no more running Chef/Ansible to do basic VM management for every single service I’m running, no more cookbooks/playbooks or manual SSHing to get software updated, no more minutes to hours of fixing configuration management that never seems to work the first time, no more bad in-place upgrade states, etc.
I keep seeing people saying this but my experience has always been otherwise.
Docker makes it really difficult to tinker with the internals of the container. They call it a development environment but you can’t easily edit a file and restart a service. There is bind mounts but the IO performance is terrible, necessitating use of volumes. Every base image is opinionated in how things are done, where things are stored even for the same software.
Since it’s so difficult to tinker with the internals most vendors will provide a web interface abstraction on top of their software (like NPM for nginx) and if you so much so veer off the happy path by 1 inch the abstraction can no longer track the state of things and breaks, necessitating a full reinstall or editing the config manually.
Of course this is in the context of self hosting. If you’re paid in your day job to maintain a tower of babel then by all means fire up all those dynos.
Also, wasn’t this comment about perf?
Even if I need to do that, the existence of a Docker image doesn’t stop me from making my own implementation as long as the application in question provides some kind of alternate distribution.
E.g., if there’s an RPM/DEB package, binary executable, JAR file, source code, etc, I can just make my own docker container with my own implementation and mess around with the internals as much as I want.
We should feel bad for them, those decoupled folks who needs help. It's sad pathetic and remarkable how these weird software enmities crop up, are let to grow and never addressed. Their time of their outrage being popular & hip fades but the disdain-without-argument sticks around.
Thankfully container hatred is a pretty tiny frakking force, of very disparate widely scattered eccentrics these days. But there's so many weird FUD proclivities folks can opt into, can find to stoke their lifelong hatreds against. Theres just so few warnings: such audience acuity is required to parse, realize the windmill tilting, & move along.
I just dislike the scripted languages as they are a mess to handle while docker is a resource waste, not to mention golang single statically compiled binary and speed of execution.
Authors, please think really well about:
- upgrade strategies (owncloud/nextcloud were a huge mess, for long time, currently looks that nextcloud is handling it well - I have upgraded it for 2 versions and it didnt break anything)
- what external dependencies you are using, make additional layer of OS abstraction to avoid incompatibilities between various linux distributions, freebsd and windows. There isn't a lot to handle differently but once you tie yourself to linux only, it is hard to add support afterwards (try to not call external binaries that you havent installed yourself, if you must, put it into compatibility layer). If you do this one right, people will port it to different environments, if you blow it, you will have to - or you wont.
- do not rely on docker "installation", presume that it is installed directly on the system and you wont go far wrong. Treat docker just as another system. Docker is going to make you become "lazy" to not think about vital details while developing.
- do check how to handle reverse proxies gracefully, this is something everyone forgets while for any serious environment, there will be nginx frontend
- dont support all the databases, pick one and stick to it, to support it really well, including backups, upgrades and versions - sooner or later redis is going to be a must, think upfront
- make a backup system, backup before upgrades and be sure you can restore it if something goes wrong, including binaries, database,...
- make an installation/upgrade layer that doesn't depend on "run this sql script", have a well versioned database revision system that can get database from version "0.1" to "2.0" without breaking anything and migrate the data. There are hardly any database changes where database upgrade cant be handled with sql statements.
- think really well about external dependencies, dont pick it just as it is popular and you need one functionality. An example, recently I did a benchmark of 15 concurrent maps in go and the differences were huge where the fastest one was one that you can hardly find by searching while the author did things like aligning the structures with cpu cache, full of unsafe pointers etc., but beating the first selected "popular" map by 2x, and the worse by 15x+. Dont trust authors self promotion, measure it.
- try to not make it confusingly strange, you have the whole usage/administration well done with nextcloud, stick to it, dont reinvent what works, as for instance, sftpgo did and I hate every second using it.
- if something needs to be documented, think about how to implement it, in a way, that doesnt need to be documented. Over time those documented features become a huge burden for you and for users.
- please, if you dethrone nextcloud, dont become evil, like projects normally do. Get the money from where the money is (smb, corporations), spare the home users. :)
Good luck!
The product seems more 'focused' than Nextcloud, for sure.
But their docker choices are quite opinionated: no longer than yesterday I've tried (once again!) to make it run, and the fact that I have Caddy + Authelia in front of seems to be rather detrimental. I dropped the ball, and will try again in a few weeks or months.
real great list to consider for the project!
Notes though... ouch. I can't find anything for that, there's no decent Notes client that does webdav natively.
The biggest issue is the web interfaces, there are a ton of edge cases that has taken Nextcloud years to work through.
Not to mention the exploration of wedav push by the Davx5 team https://manual.davx5.com/webdav_push.html.
For notes I currently use obsidian with the remotely-save plugin https://github.com/remotely-save/remotely-save
I did script the cleanup. Title field to filename, then remove the header completely. Or something like that.
Had another script that would take the date (which happened to be my filenames) and commit the file into a git repo pretending it was committed that day too. Dear diary style.
Quick and dirty but it did what I needed it to do.
It's not perfect, last year or so they keep trying to shove some ads into it, but nothing too obnoxious yet. And if you have any spaces in your webdav path where it saves the passwords, takes a little thought to work through.
Available on F-Droid