Looking for some Google Workspace alternatives

adONis@lemmy.world to Selfhosted@lemmy.world – 52 points –

After my private Gmail was leaked somewhere, I've started to receive an enormous amount of spam that came through into my inbox, which made me switch to Proton and a self-hosted SimpleLogin setup.

So I decided, I might as well dirch Google entirely, for private and work-related stuff.

While Proton already covers Mail and Calendar, I'm in search of alternatives for the following services to replace.

  • Meet: I like the idea of starting a quick meeting by simply sending a link to a customer, who can join instantly. What would be an equivalent software to do that? I tried Mattermost, but it seems more like a Slack alternative, with invites, etc. and is overkill for my case. Revolt chat looks like a Discord alternative.
  • Drive: In short, If possible, I'd prefer one consolidated place to access and edit files. Docs, Excel, PDFs, pictures, videos, etc... Is Nextcloud really the only option here, with the corresponding plugins for onlyoffice and memories (photos)? I tried running thst on an intel nuc, and it's slow as hell.
69

I've talked mad shit about Nextcloud repeatedly. That said, I keep trying it. Almost compelled to make it work for me. This stubbornness lead me to NextcloudPi. And I don't know what they do to that image/build, but it works very well on my Pi 4 w/4GB. Then I tried it in a docker container on my main server and it ran like trash again. So, ymmv? Easy enough to stand it up for a test though.

I'm a huge fan of Seafile. It's the best Google drive/Dropbox replacement, imo. It does support Collabora or Open Office integration as well, but I can't get that to work. Take that as a sign of me still learning rather than a slight against the product. I will say though, their documentation needs work. It's quite a mess.

Yeah... NC is really bad. I like the idea of the project, but the stack they chose to write it in, PHP, is just not suitable for such tasks

I think nextcloud suffers more from carrying along legacy code rather than blaming it on php. There's tons of stuff written in php that performs well.

It's definitely not the right tool for every job, but it's also not the wrong tool for every job. Which goes for most programming languages. I've seen it work fine on high traffic environments. It also carries a legacy reputation from php 5 and before. I haven't kept up with it much in the last few years though.

Which nextcloud tasks do you think php is unsuited for? (Genuine question)

I mentioned it in another topic regarding kbin, which is also written in PHP.

If you run a node/go/rust server and you hit the endpoint /hello which returns a simple "hello world", they will just return that. PHP however, has to initialize and execute the whole framework stuff, before returning a simple "hello world".

So there's definitely some overhead, which to some degree can be limited by using caching like redis, etc.

I can follow that. I think most applications that keep running ( like a go webserver) are more likely to cache certain information in memory, while in PHP you're more inclined to have a linear approach to the development. As in "this is all the things i need to bootstrap, fetch and get and run before I can answer the query".

As a result the fetching of certain information wouldn't be cached by default and over time that might start adding up. The base overhead of the framework should be minimal.

You ( nextcloud ) are also subject to whoever is writing plugins. Is nextcloud slow because it is slow, or because the 20 plugins people install aren't doing any caching and a single page load is running 50 queries? This would be unrelated to NC, but I have no idea if there's any plugin validation done.

Then again, I could be talking completely out of my ass. I haven't done much with NC except install it on my RPI4 and be a bit discontent with its performance. At the same time the browser experience on the RPI was also a bit disappointing so I never went in depth as to why it wasn't performing very well. I assumed it was too heavy for the PI. This was 4 years ago mind you.

My main experience with frameworks like Laravel and symfony is that they're pretty low overhead. But the overhead is there ( even if it is only 40ms ).

The main framework overhead would be negligible, but if you're dynamically building the menu on every request using db queries it'll quickly not become negligible

And what I forgot to mention, there's the fact that it's not async. So it adds up even more to the delay when fetching stuff.

There are libraries which allow you to do stuff async in PHP ( https://github.com/amphp/amp ). It's not all async by default like Javascript. A lot of common corporate languages right now are synchronous rather than asynchronous like python, java, c#, ... By default, but allow you to run asynchronous code.

It all has their place. I'm not saying making it async won't improve some of the issues. Running a program that does 15 async processes might cause some issues on smaller systems like RPIs that don't have a lot or compute capacity like a laptop/desktop with 20 cores.

Having said that. I can't back that up at all :D.

Thanks for your insights though. I appreciate the civil discussion :)

but also, most of these languages run a compiled executable, while PHP has to go through a parser. java is another exception with it's vm, but you get my point.

so, all in all... PHP has overhead, in many ways .. sure it might be negligible (gosh, I always have to look up the spelling of this word) in some situation, but in other it adds up so much that it makes it unsuitable for the task.

yeah, I like these type of convos where there's no right or wrong... just "yes, but..."s

I mean. There's plenty of languages that have this overhead.

A base Laravel or symfony installation shows a landing page in 30-50ms (probably).

I've written ( in a lightweight framework rather that no longer exists ) a program to encrypt/decrypt strings using XML messages over http requests.

The whole call took 40-60ms. About 40-50% of that was the serializer that needed to be loaded. The thing was processing a few hundred request per minute in peak. Which is a lot more than the average nextcloud installation. The server wasn't really budging ( and wasn't exactly a beast either ).

I'm definitely not refuting that the JIT compiler adds overhead. But as in my example above, it's also not like it's adding 100ms or more per request.

If you have a very high performance app to the point where you're thinking about different transport than HTTP because of throughput you're likely better off using something else.

Circling back to the original argument my feeling remains that the same codebase in GO or RUST wouldn't necessarily perform a lot better if you just calculate in php speed and the overhead of the JIT compiler.

If you'd optimize it in rust/go. It likely will be faster. But I feel like the codebase could use some love/refactoring. But doing that is more difficult when you already have:

  • a large user base on various hardware
  • a large Plugin community which will need to refactor all their plugins
  • need some compatibility with all the stuff that is already there ( files, databases, migrations)

You don't want to piss off your entire userbase. Now I feel like I'd like to try it myself and look at the source though :'). ( I'm not saying I can do better though. It's been a couple of years).

ok... valid point, and I also agree on the refactoring argument.

To mitigate the compatibility issue, they could release a new major version, and let plugin developers simultaneously (or not) rewrite their codebase to make it compatible. That's how WordPress plugins work, although WP is a whole other mess, and not the best of examples, but they also have a large userbase and plugins.

lol, I too was thinking about trying to kickstart a similar project in Go. I'm by no means a professional go-dev (former PHP-dev, currently Node), but I think it shouldn't be that hard.

Yup yup! I agree wholeheartedly! WordPress is indeed a whole other mess. Never been a big fan of the php CMS systems ( WordPress joomla Drupal).

I've seen the mess that can become firsthand ( though i wasn't working on the project ).

Go has peaked my interest as well ( for terraform modules and/or kubrrnetes operators ). I wonder if the owncloud project is working out better ( performance wise ). That aims at a different market segment than NC though. It was written in go though I think.

It isn't opensource anymore I think? ( didn't google - very possible that I'm wrong ).

Best of luck to your go project ( I'd you decide to kickstart it ). I'd contribute if I could, though you'd probably be better off code-quality wise with somebody with more experience :D.

Hi! I am also looking for an alternative to Google Docs more oriented to LibreOffice. You said you tried Collabora for ARM64 on Nextcloud, Docker or both?

I have NextcloudPi image running on a Pi 4 with a CODE server and Nextcloud Office both installed from the Nextcloud "app store". This is working great for office type docs.

I will say I tried to do the same with Nextcloud docker images from linuxserver.io as well as the official AIO image and could not get the Office function to work. Both of those ran horribly on my older server too, so I gave up on them. NextcloudPi seems to be highly optimized and running well on the Pi 4.

In danger of stating the obvious, I would suggest nextcloud for google drive (and their office equivalent) replacement , since it is very well integrated in most operating systems and there are many apps/add-ons for it. You can even integrate your web services into their web dashboard. I’m in the process of moving my iCloud stuff there.

NextCloud 😂 😂 https://lemmy.world/comment/346174

Well to be fair it might be as reliable as iCloud...

So your complaints are mostly about the mail app? Because I have not tried that yet, mail is something I have not yet moved away from iCloud.. I think, we are not at 1 Tb data in NC yet, will remember what you said when we reach that and everything is on fire 😅 What do you use for working simultaneously on the same file at the same time, if may ask, I’m interested in learning more about NC alternatives.

So your complaints are mostly about the mail app? Because I have not tried that yet,

No, their UI is horribly slow and if you just open your browser console you'll see it spitting errors unlike anything else you've ever seen.

What do you use for working simultaneously on the same file at the same time, if may ask, I’m interested in learning more about NC alternatives.

FileBrowser with the OnlyOffice server, gets the job done without much fuzz. Official integration is coming but there's a fork by the same guy with the PR open that works just fine. js.wiki and/or getoutline.com might work for some situations.

I‘m also migrating from iCloud (to NC among other things) and its been slow to say the least. Things I struggle with:

  • setting up photo alternative with face recognition (recognition app is okayish but not as strong as I‘d like)
  • getting whatsapp to somehow backup outside of iCloud
  • getting my passwords out of iCloud (you need a mac for that) into vaultwarden
  • NC being quite slow now that a couple apps and mid 5 digits of photos are in there, will try memcache soonish

For those who don’t know NC, these things are 1/10 of the stuff that NC is actually good at imo.

How is your experience so far?

I use the password app in nextcloud. I really like how the app is integrated into iOS. I have set it to be my only autofill and migrate the passwords manually when I need them. For whatsapp, my solution was to delete it and all other meta accounts some years ago without backup 💁🏻‍♀️ matrix is my messenger of choice, btw. We defeat the slowness of NC with enough power, I guess, but a more efficient service would surly lessen our electricity costs (but we invest in solar in long term anyway) About photos, I have honestly no clue yet, and since my girlfriend definitely keeps her fotos there, and we have a shared photo library, I fear I’m pretty stuck there. Additionally, I have invested quite some time cleaning it by deleting shitposts from the old WhatsApp times.

Thanks for elaborating a bit. I opted against the password app since I wanted to diversify services. My nextcloud is a bit finnicky at times and wants to be updated before you can proceed with stuff. Having no access to my passwords in that moment would be harsh. So I opted for vaultwarden and it even has firefox integration, cli integration and a desktop app for linux (dunno about windows, honestly). I‘m not sure if it was a bad idea to put NC‘s database on spinning discs though. Maybe that was stupid.

As you can see, very much a WIP as well. I feel like we need some kind of place to accumulate iCloud -> NC expats. A lot of good could be done there.

I‘m on matrix as well but i‘m not proficient yet. My wife is still on whatsapp so I need to be patient. We have gotten rid of twitter and reddit which I count as a win.

What other projects do you have? Feel free to send me a dm with your matrix username if you want to keep in touch about this.

I may also add that if one doesn't want to host something himself, Hetzner offers quite cheap Nextcloud instances with admin access and thus the possibility to add users/apps.

Meet -> Jitsi

For Drive, do you need the editor to be web-based? If not, you could just enable SSH access and access it through SFTP using keyfile authentication.

Thx... will have a look into jitsi. I thought it was just a webrtc server that other services can connect to via plugins.

A web based editor is a necessity, so I can acces files from anywhere, which I also do sometimes.

Which file formats do you mainly use? You can likely open them on mobile or desktop as long as you have a viewer for the filetypes without requiring a web-based viewer/editor, which would reduce the strain on the server as well.

It also makes the server setup way simpler, as it just deal with hosting and serving files, and the data processing / rendering is all done locally.

Easier to do backups too.

As of right now, I mainly store PDFs and docs/sheets on drive, which I frequently access via desktop (browswe) or mobile. So these two are a necessity.

You'll have to convert your docs and sheets to another format if you migrate to something else, that's kind of inevitable.

Yeah, I'm aware of that, and it's not a big deal

Okay, I'm genuinely confused about the NextCloud hate.

I've been using it for a month, and It's literally had 0 issues.

Nothing about it seems unstable or slow. I'm 99% certain if you're having issues with nextcloud, it's a hardware issue.

Depends what you're running it on. If you're running it on an 8c/16t 64gb system, you're probably fine.

similar enough. 6c/12t 32gb system.

see... and most of us (RPis excluded) rent cheap servers where software is expected to run performantly, like 4c/8t at best (bare), but 2c/4t nucs are probably a majority... Adding to that, we run additional services, next to NC, and based on the traffic (probably up to 5 users max simultaneously) this should be fairly enough.

I run a home server and a NAS and I have been trying to get Nextcloud running for years, lately having some success using Docker. Sure it works, but slow as molasses. That is immensely frustrating.

@PlutoniumAcid @spudwart Did you configure memcache and nextclouds scheduled maintenance job, both are very much needed for nextcloud to work good.

I have been testing various ready-made Docker containers, hoping one of them might be okay. So far no luck.

It gets hate for the number of users over the years who run a seemingly innocuous update and it suddenly nerfs their server and they have to roll back and wait and ponder why it happened meanwhile being stuck without updates until they figure out why. I left because of it but I'm told it doesn't happen anywhere near as often as it once did.

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
HTTP Hypertext Transfer Protocol, the Web
NAS Network-Attached Storage
RPi Raspberry Pi brand of SBC
SBC Single-Board Computer
SSD Solid State Drive mass storage
SSH Secure Shell for remote terminal access

5 acronyms in this thread; the most compressed thread commented on today has 6 acronyms.

[Thread #226 for this sub, first seen 19th Oct 2023, 18:25] [FAQ] [Full list] [Contact] [Source code]

If you're not set on self-hosted give a try to mailbox.org, they have everything you described in one place.

Drive: NextCloud, FileCloud or Synology Drive are options. But your Intel NUC might be past it's due date if it cant handle something basic like NextCloud.

Meet: Skype and Teams exist for non-selfhosted options. As far as self-hosted options I'm not so sure for something like this.

Next cloud isn't basic or at least it's not written in a way that feels basic, you need pretty decent specs to run that and it may be overkill for a lot of people

For Meet, I'd also suggest Jitsi. For Drive, I'd recommend giving cryptpad.fr a shot; that seems to be the closest to Drive's file editing capabilities.

cryptpad.fr

That could be great if they dropped the encrypted act and/or actually provided OnlyOffice for Docs and Presentations, not only for spreadsheets. FileBrowser is way easier to deal with.

Seafile might be able to replace Drive.

Yes, but don't they have a weird folder structure, where it's almost impossible to locate stuff outside of their apps?

They do. I thought I'd mention it as some people don't mind that aspect of it.

I might give it a shot since it comes close enough featurewise.

I think it’s worth investigating. I took a look but I didn’t want to deal with the file chunking, and settled on something slow and simple in SFTPGO.

Fastmail.com is excellent if you are considering Protonmail. Excellent performance, has a drive function and it sits somewhere between Google and proton in the privacy department.

I've already switched to protonmail. And tried skiff before that, which I didn't like that much.

I might give fastmail a try. Thx

If your "meeting" requirement is just viewing a screen then Rustdesk is super easy. if you want video and audio Webex Teams is great, or jitsi if you want to stay away from cisco.

Yes.. I want to stay away from webex, msteams, etc. as much as possible

Not because of the big-corp, but because the software is just a bloated crap.

Then what you can do for meetings is set up a matrix instance with jitsI integration.

Element and fluffychat apps have direct messageing and chatroom like slack with calling and conference call integration from jitsi. You can essentially have your own MSTeams.

You can email links to external clients that they can just run in the browser also.

It also has screensharing.

If you don't want to self-host, you can also just pay monthly to element and they will host it. That seems pretty easy if you are looking for reliability.

Webex Teams Free

Features

Meeting length limit: Up to 40 min
Meeting capacity: Up to 100
Breakout rooms
Video messaging by Vidcast
Meeting recording: Local Storage

It involves spending money, but I wonder whether a Synology NAS might suit you rather well? Synology Drive, Synology Photos et al make a pretty respectable replacement for the Googles.

I have considered NAS, but I always saw it as something for those who have lots of large files to store, like pictures, movies, shows, system backups etc. which I simply don't utilize right now.

It can be whatever you want, if you want it only for documents the disks don't need to be to large, it can even be NAS SSDs (depending your backup model), but considering the office apps requirement I also think synology is a good option.

Just came across xpenology and surprisingly I managed to set it up without a hassle. I think this is my final solution I'll be going with.

The thing that amazed me the most. I could import my GoogleDrive files and it converted them so they work in synology office... Mindblowing!

As you said, NextCloud is slow, it is also buggy https://lemmy.world/comment/346174. Better hardware won't make it better.

As for suggestions you should checkout FileBrowser as it is fast, reliable and easy to use. An OnlyOffice integration is coming.

To replace meet, https://jitsi.org/. They even have a browser based solution that allows you to create quick meets: https://meet.jit.si/

Filebrowser looks even nicer than cryptopad, and I think folders could probably be symlinked to immich, etc.

Will definitely keep an eye on it. Thx

Edit: Oh, just saw it's web-only :-(

I think folders could probably be symlinked to immich, etc.

Yes they can. I've been doing that for a long time. If you combine with Syncthing and Samba (for iOS) you also get a very nice cloud solution.

Isn't cryptopad web as well? lol

I don't know much about cryptpad. Someone just mentioned it, and I hoped it had an app as well.. lol

They don't. Web only and considerable heavier and harder to get running than FileBrowser.

Can I use CryptPad on mobile? CryptPad is engineered to work as well as possible on small screens. Depending on your device performance it should be possible to use CryptPad on mobile. Work to make CryptPad more responsive was undertaken in 2020, if you notice areas that need improvement in this regard, please contact Support or submit an issue on Github.

https://docs.cryptpad.org/en/FAQ.html