Unfortunately, I’m at my wit’s end with Nextcloud also.
I wish there was an equivalent that wasn’t sooo finicky and RIDICULOUS to deploy and get running. I chose Truenas Scale because it was SUPPOSED to be easier to get going,
that was 4 years ago and still don’t have an errorless install.
I’m using NC for years now, maybe 10, but as I had trouble with almost every update this year, like stuck in maintenance mode severals times, errors while downloading, errors while making backup and so on I’m really considering to look for an alternative. It’s massively annoying.
Although I have regulary fails on first download attempt, otherwise my updates all run fine since approximately 2 years that I am running my Nextcloud. I only once ran into a bug after upgrade which I did not notice unfortunately on my test/backup system. But that was fixed pretty soon.
I totally have no problem with that error when I can also deactivate the AppAPI, but: a) Should be in the text describing the problem - and b) How can I know I am using ExApps ? - I mean how can I decide whether I can deactivate AppAPI? Neither in the list of my active apps nor in AppStore I can see a flat that says ExApp or not.
Interesting concept, but I disabled it for now, as I was simply updating for bug-fixes. Also native podman support is missing for now, so a good deployment might take a tad longer.
That’s all correct. But it leads to the point where NC updates are a thrilling thing and stresses my nerves. This includes taking care to have an outside rollback mechanism (snapshot in Proxmox; done most recently because there are changing live data in nextcloud (calendars…)). This is no update you start “by the way” although the updater button is so alluring and smooth available.
I also wonder why things that pop up every time aren’t done by the updater: adding missing indices or compute some mime types. Every machine does this in a blink of time. Why not done automatically?
My opinion: either you target NC updates for hard core admins (command line only) or for the casual “GUI-admins” (which is the current way). If the latest then it shouldn’t bother you with cryptic (non?-)error messages or force you to the command line every time.
These snapshots are just a few clicks away in Proxmox, take a few seconds, and should actually spare your nerves, because you know that if something goes wrong, you can return to the previous state in seconds. ![]()
I’m not sure what you mean exactly. I’ve never lost any data during an update or had Nextcloud alter or change data during an update. However, please feel free to open a new thread to elaborate on this.
Because on very large instances, these tasks can take a lot longer, and runing long-running database migration tasks via web UI is generally not a good idea, because if the connection is interrupted, the database may be in an inconsistent state afterwards. Nextcloud is not only intended for home users.
Btw, on GitHub there is a longer issue thread where this has already been discussed and explained in more detail by developers, but I no longer have the link at hand.
No, they target everyone, which is a good thing because it would be difficult to finance a project like Nextcloud with only hobbyists and small businesses as users. However, specifically for home users and SMBs, they also offer Nextcloud AIO: an appliance that takes care of most of the ‘hardcore admin’ tasks, as you call them. ![]()
By the way, if you consider yourself a more of a hardcore admin, you can have it that way around as well. Simply disable the web updater in config.php…
'upgrade.disable-web' => true,
…and the tempting update button will then never appear again. ![]()
However, I wouldn’t recommend doing this because then you wouldn’t receive any update notifications either. You can still use the CLI updater if you prefer, even with web updates enabled. ![]()
Without agreeing, I can see where this sentiment of “enshittification” comes from…
A few months ago I had a Nextcloud installation with no errors in the Admin Overview… then suddenly, an error appeared about needing a Websocket server… then later an error appeared about needing a high performance backend… Then later “Client Push” is not installed and will cause issues…. then I need to set up some docker mumbo-jumbo now for this external apps API… The Admin Overview is littered with errors about things I shouldn’t really have to deal with.
I’m afraid this is where this feeling comes from.
Why do I need a Websocket server? Can’t Nextcloud come with one if it needs one? Why do I need to deal with Client Push, can’t the deployment deal with it? What do I have to do with this high performance backend? Why can’t Nextcloud come with it out of the box if it’s needed? These doesn’t seem to be optional things, then why can’t they be packaged with NC?
Don’t get me wrong, I love Nextcloud and will not use anything else as long as it runs fine and does what’s on the tin, but I too see more and more things appear out of the blue and cause problems about things people have not necessarily asked for ![]()
Peace ![]()
The thing is, none of those backend services are strict requirements. They’re only needed if you want to use the features they provide.
If you don’t use Talk or don’t do any video calls, you don’t need the Talk HPB. Similarly, if you don’t use any ExApps, you obviously don’t need the AppAPI. If you don’t need Nexcloud Office, you don’t need a Collabora server backend, etc… You see where I’m going with this? ![]()
Just FYI: All of the mentioned services are packaged within AIO. See GitHub - nextcloud/all-in-one: 📦 The official Nextcloud installation method. Provides easy deployment and maintenance with most features included in this one Nextcloud instance.
And they should not be.
The AIO is marketed as a one-stop, point&click solution, therefore appealing mostly to less experienced users as “the simplest to deploy”. Which it maybe is, however it becomes a nightmare for those users as soon as they install this “simple, all-in-one package”.
I agree with @AnAnalogGuy regarding NC’s ability to communicate - this spans from readmes and tutorials to the user interface and UX - NC obviously does not acknowledge this. I am especially dumbfounded by their sudden rush to “AI” which, sadly, is completely useless, yet the foundation for their AI efforts to work - the ExApps Daemon, HaRP proxy etc - are pushed on the users without any reason at all. Their own Context Chat basically does not work and warns users that it will not work on HaRP, yet lack of HaRP screams errors on the admin page.
Can you please clarify this statement and maybe give an example why you think this?
I am always interested to hear feedback for AIO to see how we can improve it.
@szaimen - look at the very top of this thread. A user who is clearly not a sysadmin nor has a lot of experience in managing Linux and Docker stumbled upon an “all in one” package. It is the first one on the download list. A lot of promise (“easy to install and maintain”) and clearly gave up, because while it is perhaps easy to install, it is not easy to maintain.
AppAPI (and especially HaRP) is a missed goal IMHO, since it is being pushed aggressively towards users (included as a default in NC AIO, NC will complain as if it was a catastrophic error if it is not set up) while having a very limited use as for today.
First of all - NC works very well without it.
Second thing - if someone really wants to use ExApps, in most cases they will know why they do it.
Third -thing - the current offering of ExApps is less than satisfactory (yes, opinion, but well-backed by real-life feedback from my clients). I do not see any reasons for AppAPI to be an active default.
Fourth thing - a lot of people go through the hassle of installing it just to get rid of the error message because the AppAPI, itself a NC app, comes activated and is not mentioned anywhere it is a regular NC app that can be deactivated.
So, pushing the AppAPI this way makes managing an NC instance quite a bit harder. Especially for those who fell for the “easy to maintain” AIO package as our OP friend. People install NC on shared hosting, on local computers, in their homelabs and in production and the good practice in server software deployment is to have everything but the basics turned off in a fresh install. Look at the Ubuntu server install, you barely have an opportunity to select from a dozen of prepackaged setups (NC being one of them, BTW) but if you skip preconfigured packages you have a server that does rather nothing at all and needs further configuration. With the AIO the situation is completely reversed - users who want an “easy to install and maintain” package are thrown at a monster of customizable options which - in a lot of cases - need additional software installed on the server (goodbye, shared hosting) and some serious admin skills.
If I was delivering NC to the world, I would have left only the core functionality enabled and everything else disabled and not raising any error messages.
A couple of examples:
- once you enable NC Talk, it immediately throws an error of not having the high-performance backend. I don’t know why it assumes I need this high-performance backend for 12 users but OK. Have you tried actually installing it? This takes about 4 hours, a couple of non-NC packages to compile and install from Github, setting up a manual configuration that is tailored to a particular setup scenario (proxied, non-proxied, Docker, bare metal), a trip to DNS settings with your provider and finally a port mapping session on the corporate firewall. Seriously?
I ended up spinning another VM to accomplish this, because installing it on the same VM my NC instance runs on was simply irresponsible. And this all just to get rid of the annoying message which BTW had nothing to do with this particular setup I did for a client of mine.
And what comes next? Once you done with HP Backend for Talk, a new “error” appears - this time that I don’t have a SIP gateway. Seriously, how could anyone imagine a small business with a local Talk setup for conference video calls needing a contract with a SIP provider so badly that this is an error? One that can not be dismissed? What do we need the SIP for? So we could use landline phones we do not even have? - ExApps and the AI mess: OK, let’s assume we are through the tedious procedure of setting up the HaRP proxy (NC bugs about it a lot). What can we do with it? Generate funny images within Nextcloud Assistant? Oh boy, just try to create a connection between your local AI and NC.
Start with the comically wrong process of installing the NC Assistant Context Chat :
three apps that are spread all over the NC App Store,
need to be correct order of install, the minor versions have to line up - however the NC Context Chat Backend was 5.0.1 until yesterday while the NC Assistant Context Chat was 5.0.0. They lined up today. But, hell, why actually does the backend of an app not get installed with the app?
OK, 3 hours later you quit using the NC app installer because it times out while installing Docker images and does not display any progress, and start maintaining them with Docker directly, so you can actually achieve something. Theoretically once all this works, it’s a matter of connecting the NC Assistant to an AI provider and you are good to go.
The problem is, the Context Chat Backend does not work with HaRP. The same HaRP that is so important it becomes a non-dismissible warning if you use earlier Docker socket proxy and not HaRP.
So, you delete the previous 3 hours from your memory (and try to justify your invoice to the customer) and go back to Docker socket proxy. Now every time you open the admin settings, NC will complain and display a warning. But that is OK, because the context chat does not work at all and is unable to feed documents to the AI for digestion.
I do not want to use the word “enshittification” because I really love NC and grew with it for the past 8 years. I consider myself experienced admin of NC and believe this is one of the most valuable pieces of software currently on the market, both in FOSS and paid modes. But I can not unsee that something wrong is happening with the lifecycle. More or less useful features and untested solutions prevail over quality code. Take the latest Docker API fiasco - NC Assistant had a hardcoded Docker API version setting and it ceased to operate if you updated your Docker to current version, which dropped the ancient 1.29 API. And the whole idea with Docker is that you set it up, let it update itself (or with Watchtower) but your data stay intact, because they are in persistent storage. Using a hardcoded (!!!) API version even though Docker warned about deprecating old API a year ago? Oh man.
Documentation is another story. I would really want to see someone who conceived the documentation for Nextcloud Assistant Context Chat and spread it across three GitHub repositories giving a try to install this. Same goes for NC Talk. Same goes for Nginx reverse proxy config for ExApps. That’s from my experience, I am not installing everything possible on my NCs.
I wonder about this statement honestly.
Have you tried AIO yourself?
Seems like the person in the very first comment does not use AIO afaics.
No and I will not. I use the server package ZIP and work manually with it. This is how I can maintain control over what I install. And I certainly do not need an “All In One”, because this is neither my use case nor my clients’.
Then please dont post any negative statement about a project that you dont even use or tried out yourself.
You didn’t understand me or I understand the word “try” in a slightly different, professional way. I have not “tried” AIO in production because of the reasons I laid out above, and because there is no “try” in “production”. This does not mean I do not know the product, which is your false assumption.
While I understand why you are not willing to comment factually and cherrypick pieces of sentences out of context to write anything that would make you feel you “won” the conversation, you are not doing any good to NC this way. I am disappointed you neglected my extended explanation, yet not surprised.
This is not about winning this conversation. I just asked you to not post any negative statement about a project that you are not using productively yourself.
Regarding the initial problem of this conversation: I personally agree that the AppApi should not be pushed like this to all Nextcloud instances. It should either be disabled by default like it was in the past or not show a warning like that in the admin overview.
However this was a decision made by a different team and I was not involved in the decision making so I cannot say why it was done this way. Possibly an oversight by the team.
I think the best way forward is to move the conversation to GitHub where most of the developers responsible for this change are active.
OP uses C-Panel, which is a web hosting admin panel. Kind of “all-in*one” as well, but not Nextcloud AIO the product, we’re talking about here.
So you’re a pro then, and I assume you know what you’re doing. So why the fuss?
You’re the one cherry-picking here, and even redefining “AIO” on the fly when it suits your narrative.
You jumped into this with the whole “enshittification” angle just to vent your frustration, even though everything had already been discussed and clarified, and I had even admitted that I also don’t like the fact that the app was enabled automatically and that it created an error message. Basically, I already agreed with most of what you’re saying here..
But that’s apparently not enough for you. You have to turn this into a campaign. Are you maybe an SMB owner who’s overwhelmed by their job? Maybe a career as a YouTuber would be an alternative for you. ![]()
Seriously: If you don’t like Nextcloud, then just don’t use it. Or better yet, do it like @awelzel who could drop a bit of the pathos as well, but at least brings concrete suggestions for improvement.
But now, good night everyone, and have a nice weekend ![]()