flutter / flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond
https://flutter.dev
BSD 3-Clause "New" or "Revised" License
164.46k stars 27.12k forks source link

Support build/debug iOS on a remote Mac #33037

Open duzenko opened 5 years ago

duzenko commented 5 years ago

Use case

Main development environment is Windows. A Mac exists on the same local network. Xcode and all the tools are installed. Currently we have to switch between Mac and Windows all the time, doing frequent unnecessary git commits just to synchronize between the two. While we could theoretically switch to Mac completely and do all our work there there are financial and technical limitations that will keep us on Windows in the near future.

Proposal

We would like to see a feature like VisualStudio offers with Xamarin, where you can remotely connect to the Mac and do your build/debug work from inside the VS IDE.

This is different to #22771 in that it would actually make use of an existing local Mac infrastructure rather than circumventing it completely.

nosmirck commented 4 years ago

Is there any progress on this? Has been added to the road map?

buster95 commented 4 years ago

Would be amazing feature, remote compilation for windows user

stephanecodes commented 4 years ago

I migrate the code of a Xamarin application to Flutter and this feature is missing a lot.

paolog22 commented 4 years ago

this is something to look forward. also want this as i build a hackintosh and planing to build apps with my day to day pc(ubuntu) then remotely build/debug to my hackintosh on my network.

christopherfujino commented 4 years ago

One workaround in the meantime would be to mount the mac filesystem on windows via sshfs and trigger builds via ssh and the CLI flutter tool.

duzenko commented 4 years ago

One workaround in the meantime would be to mount the mac filesystem on windows via sshfs and trigger builds via ssh and the CLI flutter tool.

How does that help with debugging? Overall this 'workaround' is not what I expect from an IDE in 2020.

dayron9110 commented 4 years ago

It's not this possible yet?

buster95 commented 4 years ago

After a year it was time, I thing that a lot of people is waiting for this feature

AlbertoMonteiro commented 4 years ago

@buster95 I hope to see a very good tooling since there is something in market that can be used to copy and enhance

jasin755 commented 4 years ago

Please I need it! :)

zanhk commented 4 years ago

Any planning for this feature?

prbpedro commented 4 years ago

Any updates?

mdmota commented 4 years ago

THE WHOLE COMMUNITY IS WAITING FORWARD FOR THIS FEATURE!

StepanMynarik commented 4 years ago

I second this.

My main workstation is a Windows PC. I can work effectively there. I have all the tools, all settings, my favorite keyboard and everything setup there. Yes, one can use TeamViewer and other workarounds, but these have always lots of drawbacks.

Flutter is an amazing piece of tech and it would deserve a nice alternative to Xamarin Remote.

AlbertoMonteiro commented 4 years ago

The Xamarin keeps going foward, now they can run the iOS app on a real iOS device while developing on windows without the MAC requirement: https://docs.microsoft.com/en-us/xamarin/xamarin-forms/deploy-test/hot-restart For development and testing it is really awesome =( Please flutter go ahead and let us do same thing or at least run iOS app while on while through network

StepanMynarik commented 4 years ago

No hurt feelings though, Xamarin is just terribly bad in absolutely everything anyway. Still, this feature @AlbertoMonteiro mentions would be nice.

AlbertoMonteiro commented 4 years ago

@StepanMynarik I completely disagree with you.

StepanMynarik commented 4 years ago

@StepanMynarik I completely disagree with you.

Feel free, everyone's mileage may wary.

JCKodel commented 4 years ago

Using Remote - SSH extension I was able to open the project in a remote machine, but debug and hotreload is unavailable =\

LSViana commented 3 years ago

@JCKodel

Using Remote - SSH extension I was able to open the project in a remote machine, but debug and hotreload is unavailable =\

Are you referring to the VS Code extension? If so, I think we can connect and try to fix it.


I succeeded using a macOS VM and then connecting to it via SSH to develop in my physical iOS device via VS Code. Everything works fine, from running the app (the Xcode build is done remotely), hot reloading/restarting and code completion is amazingly fast. I don't even have to interact with the macOS VM after connecting to it via SSH.

The only downside is that using simulators (to test in different device sizes) might require using Visual Studio's feature to "mirror" the simulators from the VM to Windows.

ferminmg commented 3 years ago

I am waiting this feature too.

mrtdeh commented 3 years ago

I_am_waiting_this_feature_too

duzenko commented 3 years ago

No hurt feelings though, Xamarin is just terribly bad in absolutely everything anyway. Still, this feature @AlbertoMonteiro mentions would be nice.

Xamarin being bad is neither a reason nor an excuse for Flutter to be even worse in some (quite a few actually) aspects.

duzenko commented 3 years ago

@JCKodel

Using Remote - SSH extension I was able to open the project in a remote machine, but debug and hotreload is unavailable =\

Are you referring to the VS Code extension? If so, I think we can connect and try to fix it.

I succeeded using a macOS VM and then connecting to it via SSH to develop in my physical iOS device via VS Code. Everything works fine, from running the app (the Xcode build is done remotely), hot reloading/restarting and code completion is amazingly fast. I don't even have to interact with the macOS VM after connecting to it via SSH.

The only downside is that using simulators (to test in different device sizes) might require using Visual Studio's feature to "mirror" the simulators from the VM to Windows.

You can only run MacOS VM inside MacOS host, which defeats the purpose. Unless you're violating the MacOS license agreement, which I would advise you to refrain from publicly announcing. At any rate it's not a satisfactory solution. And why would you SSH to a MacOS VM in the first place when you can work with it directly.

JCKodel commented 3 years ago

And why would you SSH to a MacOS VM in the first place when you can work with it directly.

Because I have a Threadripper 3970X with 256Gb RAM for a PC and a crappy MacMini 2018 that throtle due high temperature most of the time and is barely usable? (considering that I also need to develop for Android)

Or you are telling me "Stop being poor" [Insert Paris Hilton meme here] or buy another crappy Apple product just to be able to develop for < 20% of the market share?

robman70 commented 3 years ago

I_am_waiting_this_feature_too

Please make an effort for us (developers)!!!

buster95 commented 3 years ago

I_am_waiting_this_feature_too

Please make an effort for us (developers)!!!

You'll continue waiting, because everything look like they're not interested in add this feature

robman70 commented 3 years ago

I_am_waiting_this_feature_too

Please make an effort for us (developers)!!!

You'll continue waiting, because everything look like they're not interested in add this feature

Maybe I'll wait for .net MAUI

khoangt commented 2 years ago

Xamarin has had this feature for a long time ago.

robman70 commented 2 years ago

Xamarin has had this feature for a long time ago.

Yes, I know but I don't like Xamarin so much

khoangt commented 2 years ago

Xamarin has had this feature for a long time ago.

Yes, I know but I don't like Xamarin so much

Yes, me too I also used to develop apps using xamarin. And moving to Flutter. But this feature is missing on flutter

kasv commented 2 years ago

I am waiting this feature too.

maxboone commented 2 years ago

This would be very nice for Windows on ARM64 and Apple M1 machines as well, +1

gugadev commented 2 years ago

@christopherfujino do you know if this proposal reached the Flutter team? This really could be a game changer, especially now that Microsoft released MAUI with the same feature inherit by Xamarin (and would help LATAM and another economy-low regions devs too where buying a Mac is a very big effort).

scriptBoris commented 1 year ago

Vote up

ioridev commented 1 year ago

Vote up

VitaliBalyk commented 1 year ago

I support! I'm moving my project from Xamarin to Flutter. A highly requested feature. I'm looking forward to it!

neuos commented 1 year ago

Wow some activity on this old but very useful feature request. Does this mean it is considered to be implemented?