decosoftware / deco-ide

The React Native IDE
https://www.decosoftware.com/
GNU Affero General Public License v3.0
5.84k stars 311 forks source link

Support Linux #10

Open BHSPitMonkey opened 8 years ago

BHSPitMonkey commented 8 years ago

Some work toward this milestone can be followed in #4 as well.

gdowens commented 8 years ago

:thumbsup:

OctoD commented 8 years ago

:+1: :+1: :+1:

Fordi commented 8 years ago

Someone comment on what sorts of things are needed for this / what made it hard for this to be part of the initial design.

I mean, if this is an electron.io app, it should be simple enough to port - I imagine the hardest bit might be some command line tool wrapping / substitution. Clearly there was some kind of showstopper, right?

dabbott commented 8 years ago

@Fordi We had to prioritize one thing and do it really well. No showstoppers. But I think it would be a lot more useful if we had built-in Android emulator support first.

@namuol already built it successfully: https://twitter.com/louroboros/status/735569370886217728

A couple minor things to change off the top of my head:

dunhamsteve commented 8 years ago

I think this could be pulled off with a real iOS device (not simulated). You'd need:

dabbott commented 8 years ago

@dunhamsteve This sounds pretty awesome. We already ship a precompiled app with our Mac installer so that if you're building a plain js app you don't need to build/rebuild. Not sure how you'd swap out just a .js file, I don't know how the compiled ios binaries work well enough to comment. The rest seem reasonably legit - although I'm sure it will be a lot of effort to hook everything up.

Supporting iOS on Linux isn't on the roadmap for me or @gdowens. If someone very motivated wants to take it on, we're happy to help and review of course. It does sound very valuable, even if quite a bit of work to get right.

dunhamsteve commented 8 years ago

Yeah, I don't have a Linux desktop, but I thought it'd be worth sharing how it might be accomplished. Windows might be similar, but I don't know if the libimobiledevice stuff has been ported to windows.

Regarding the javascript files, I was presuming react-native works by having javascript files sitting next to the executable in the .app directory tree. I haven't actually looked. If this is the case, you need to re-sign every time the contents of the .app directory tree changes.

namuol commented 8 years ago

@dabbott I think it would be a lot more useful if we had built-in Android emulator support first.

Agreed! See discussion #12

@Fordi I imagine the hardest bit might be some command line tool wrapping / substitution.

See discussion #16

@dunhamsteve I think [iOS support for Linux/Windows] could be pulled off with a real iOS device (not simulated).

It'd probably make sense to open a separate issue for this since it's not really a roadblock for general Linux/Windows support, but would certainly be awesome to have.

dabbott commented 8 years ago

@namuol so... I haven't tried building for Linux yet myself. I'm downloading an Ubunto VM now and I'll give it a shot.

What have you run into so far that we need to change for this to work?

namuol commented 8 years ago

I mainly just needed to copy most of the contents of desktop/deco_unpack_lib to ~/.config/com.decosoftware.Deco/libs, and create dummy versions of an executable or two (see #4).

Encouragingly, I didn't need to make any code changes apart from a few console.logs and some other changes I used to figure out where things were failing.

That said, I only barely got the UI to show up -- there's certainly going to be more OS X-specific code I haven't crossed paths with that'll need to be made a little more general.

devinabbott commented 8 years ago

Ok, gave this a shot also. Like you mentioned, the UI pretty much seems to work. I just ignore the updater screen for now, since I didn't make a proper version file :)

Definitely not as useful as the OSX version without a built-in way to run your app though. The Android setup continually goes wrong for me on both OSX and Ubuntu. I think I have a better idea of how important it is to provide an Android emulator through Deco.

If anyone else wants to follow along, these are the steps I took to get the UI up: https://github.com/devinabbott/deco-ide/blob/linux/linux_install.sh

deco-linux

solancer commented 8 years ago

Its about time the Linux binaries were made available.

dabbott commented 8 years ago

@solancer we first are making it more extensible to launch an app. Feel free to PR if you want to shorten the timeline on Linux binaries.

jackbillstrom commented 7 years ago

Anyone currently working on this for Linux and Windows? Would love to contribute and maybe get this out on those platforms.

benoj commented 7 years ago

Is there any update on this? really keen to give deco a try

privateOmega commented 7 years ago

any updates guys?

jackbillstrom commented 7 years ago

@privateOmega I wouldn't say that there is any progress because I actually don't know but I would suggest just working inside Nuclide (Built on Atom) instead. Deco isn't that flawless, I've run it a couple of times on my Mac but it was to unstable to work in for me.

Cheers

HZSamir commented 7 years ago

Is this still in development hell?

privateOmega commented 7 years ago

@jackbillstrom I read about this in an article and something like this would reduce so much effort in designing a React Native App. So i was very interested to see this in action.

jackbillstrom commented 7 years ago

@privateOmega I was obsessed about finally try to use Deco, and when I got my Macbook I found out that Avocode did a pretty darn good job for me anyways 👍

privateOmega commented 7 years ago

@jackbillstrom thanks for the pointer :D

ghost commented 6 years ago

Guys . Inside the deco_unpack_lib folder . Most Binaries were for Mac Apps . How to run Linux Binaries

subashkc commented 5 years ago

Any updates on this ?

jackbillstrom commented 5 years ago

@subashkc I believe nothing has been worked on for Linux support, were you able to get it running?