client icon indicating copy to clipboard operation
client copied to clipboard

Apple M1 (Universal/Apple) binary

Open saschaeggi opened this issue 4 years ago • 29 comments

Expected behaviour

Recompile ownCloud client for native M1 support (either Universal/Apple binary).

Actual behaviour

Client currently only runs using the Rosetta 2 layer.

Steps to reproduce

  1. Use an M1 Mac machine (MacBook Air, Pro, MacMini)
  2. Run ownCloud client

Client configuration

Client version: 2.7.4 Operating system: MacOS 11 Big Sur OS language: English

saschaeggi avatar Dec 27 '20 15:12 saschaeggi

ownCloud desktop client relies on the Qt framework, and Qt is targeting to support Apple Silicon in 6.1 https://bugreports.qt.io/browse/QTBUG-85279

michaelstingl avatar Dec 27 '20 16:12 michaelstingl

@SamuAlfageme @ChrisEdS FYI ⬆️

michaelstingl avatar Mar 19 '21 14:03 michaelstingl

BTW looks like Qt moved the ticket to 6.2 (Sept. 2021)

michaelstingl avatar Mar 24 '21 07:03 michaelstingl

This is bad news 😔

saschaeggi avatar Mar 24 '21 08:03 saschaeggi

This is bad news 😔

Why? The desktop client is that kind of software that will run the same way in roestta and natively. You won't see a massive gain in performance nor be able to manage more memory as it was with 32->64 bit.

TheOneRing avatar Mar 24 '21 08:03 TheOneRing

I agree. The ARM natives are very efficient when it comes to memory handling and all tested apps use way less memory then their Intel counterparts – but with the small memory usage of ownCloud this is not at all an issue. But the native Apps have a smaller power draw than using it through Rosetta and that's why it would be cool to have it running natively 🙂

saschaeggi avatar Mar 24 '21 08:03 saschaeggi

In the meantime, here's a quick reminder that MacOS users like me who prefer not to run Rosetta software all the time, we can close the GUI and fire nextcloudcmd on our own schedules:

/Applications/nextcloud.app/Contents/MacOS/nextcloudcmd -u me -p krmit ~/Documents/ https://drive.base.mars/

ghost avatar Apr 18 '21 20:04 ghost

Status update from Qt: https://www.qt.io/blog/qt-on-apple-silicon

michaelstingl avatar Jun 22 '21 10:06 michaelstingl

The Apple Silicon (ARM) version of Qt has been available since September.

https://www.qt.io/blog/qt-6.2-lts-released

scgf avatar Oct 21 '21 10:10 scgf

Yay, hopefully this can be moved forward now!

saschaeggi avatar Nov 12 '21 21:11 saschaeggi

Our 2.9 client is based on Qt 5.12.11. Our dev branch now moved to Qt 5.15 which is an essential step in porting to Qt 6. We will most likely have an release with Qt 5.15 and only after that start porting to Qt 6.

For everyone waiting this won't be an exciting change, nothing user facing will change and the expected performance gain is ~0.

TheOneRing avatar Nov 15 '21 08:11 TheOneRing

Any news on an Apple silicon native client?

saschaeggi avatar Mar 17 '22 14:03 saschaeggi

Those who do not intend to install Rosetta 2 will appreciate a native client for Apple Silicon very much - me included ;-)

sstrecker avatar Apr 20 '22 11:04 sstrecker

Same here. Almost everything runs native by now. Can we get an update on this? 🙂

saschaeggi avatar Apr 20 '22 11:04 saschaeggi

This is bad news 😔

Why? The desktop client is that kind of software that will run the same way in roestta and natively. You won't see a massive gain in performance nor be able to manage more memory as it was with 32->64 bit.

The main reason for the need to update Owncloud to native apple silicon is running it in rosetta 2 in the background depletes the battery life significantly. I had to quit owncloud daily after boot ups right after it has finished syncing or only turn it on to sync and quit it again. I usually run my MBP M1 Pro for 12 to 20 hrs on battery, but with owncloud or even just the own cloud extensions that keeps starting up on its own will bring it down significantly.

tismoj avatar Apr 30 '22 04:04 tismoj

The current NextCloud desktop client is running natively on the M1 Macs - maybe try that with your ownCloud server. It will probably work.

scgf avatar Apr 30 '22 06:04 scgf

Yes Nextcloud is already M1 native.... I know cause I also have nextcloud to sync my currently underway projects, but I still use owncloud to sync my archived projects. It will take a lot of time for me to convert my 1 TB of owncloud files used by 6 people (me, my wife and 4 kids) to Nextcloud, since I only sync archival projects in owncloud I rarely sync it, but I keep it on startup on boot to make sure it's sync'd everyday, So I'll probably just wait for owncloud native M1 build. What really bothers me are those owncloud extensions that keeps starting up by itself, I'm trying to search right now how to disable it, which led me to this discussion, I think I may just need to go to owncloud and remove all the 3rd party modules that I wanted to test but got lazy and never gotten to do it.

tismoj avatar Apr 30 '22 06:04 tismoj

With NextCloud I often used the ownCloud desktop client to sync because at the time it was better. The clients are (AFAIK) interchangeable. Try installing the NextCloud client and point it to your ownCloud install and see what happens. I rather suspect it will work.

scgf avatar Apr 30 '22 07:04 scgf

Just a silly side note, I can't recommend the use of untested 3rd party clients...

TheOneRing avatar Apr 30 '22 07:04 TheOneRing

Ohhh that's a great idea. Thanks I'll try that

tismoj avatar Apr 30 '22 08:04 tismoj

Just a silly side note, I can't recommend the use of untested 3rd party clients...

Which 3rd party client did you mean, you mean Nextcloud as the 3rd party Client or the 3rd party modules I've enabled in owncloud?

tismoj avatar Apr 30 '22 08:04 tismoj

So are we going to see an M1 Compiled version of OwnCloud? It's been 17 months since this has been opened and we have yet to see an official update.

Kooramah avatar May 12 '22 01:05 Kooramah

Our 2.9 client is based on Qt 5.12.11. Our dev branch now moved to Qt 5.15 which is an essential step in porting to Qt 6. We will most likely have an release with Qt 5.15 and only after that start porting to Qt 6.

For everyone waiting this won't be an exciting change, nothing user facing will change and the expected performance gain is ~0.

TheOneRing avatar May 12 '22 08:05 TheOneRing

@TheOneRing performance wise, yes. But battery saving wise it is! 🙂

saschaeggi avatar May 12 '22 08:05 saschaeggi

@TheOneRing performance wise, yes. But battery saving wise it is! 🙂

Drastically, in fact. I uninstalled the desktop client (my last remaining Rosetta app) from my M1 MBP this week and was surprised by how much longer the battery held on without it. I've really liked OwnCloud, but looks like I may have to explore other options at home.

CodeCooler avatar Jul 01 '22 02:07 CodeCooler

Is there a rough timeline for Apple Silicon release?

rjungmann avatar Jul 07 '22 19:07 rjungmann

I've really liked OwnCloud, but looks like I may have to explore other options at home.

Before seeking alternatives, If you bought a perpetual or subscribed to Parallels, I think owncloud should run much longer there than running it in Rosetta 2. Parallels had made running Windows 11 for ARM on Parallels 17 so efficient, that can still run most and I do mean most of your apps and games via parallels and would still have battery life to spare of course having owncloud natively is still best. Normally steam mac games as expected (though I was hoping would last longer) only last 1.5hrs to 2hrs because steam and sometimes the game itself is not entirely native. But running the same game (intel version) through parallals last about 2hrs to 3hrs, but for intel apps running in parallels it last between 5hrs to 9hrs, of course natively on M1 that would last much much longer. Looks like running Intel binaries for Win11 for ARM on Parallels is more batt efficient than using Rosetta 2 for Intel Binaries for Mac. and Looks like Win11 for Arm has their own version of Rosetta 2 for running Inter binaries for Win11

tismoj avatar Jul 08 '22 05:07 tismoj

I think owncloud should run much longer there than running it in Rosetta 2

If you're going to try this just make sure to create a virtual network drive mapping to your host machine's owncloud folder, so that you could access the files on both the VM and you host Mac machine. Just go to the VM's setting->Option->Sharing->Custom Folders and add a mapping there, you can select any folder you have access to and in the VM it will appear as a Network Drive (i.e drive X:)

tismoj avatar Jul 08 '22 06:07 tismoj

The current NextCloud desktop client is running natively on the M1 Macs - maybe try that with your ownCloud server. It will probably work.

I can confirm that the NextCloud macos client is running natively on Apple Silicon and that it syncs without problems with my ownCloud server. I will use this until we get an updated native ownCloud client.

Lorenz0x7BC avatar Jul 25 '22 14:07 Lorenz0x7BC

Our dev branch now moved to Qt 5.15 which is an essential step in porting to Qt 6. We will most likely have an release with Qt 5.15 and only after that start porting to Qt 6.

Qt 5.15.6 and 5.15.7 support Apple Silicon. Does the upcoming 3.0 release build on Qt 5.15.x? If so, could it be tested for macOS ARM?

fxcoudert avatar Oct 31 '22 17:10 fxcoudert